• docker使用Dockerfile构建ssh容器


     

    一、使用Dockerfile构建centos

    1、创建 Dockerfile

    mkdir centos # 创建一个目录存放之后的Dockerfile,目录名无所谓
    cd centos # 进入目录
    vi Dockerfile # 创建Dockerfile
    

    将如下内容填入Dockerfile中然后存盘退出

    FROM docker.io/centos
    MAINTAINER rslai "netlrs@163.com"
    RUN yum update -y 
            && yum clean all
    

    注:FROM docker.io/centos :以这个镜像为基础

     MAINTAINER rslai "netlrs@163.com" :镜像的作者说明
     RUN yum update -y : 升级centos到最新
     && yum clean all :清除yum缓存

    2、创建image文件

    docker build -t centos:mycentos -f /root/centos/Dockerfile /root/centos
    #                 库     tag            dokerfile文件      dokerfile目录
    

    3、查看生成的image文件

    docker images
    

     4、创建容器

    docker run -itd --net=none --name=test002 centos:mycentos /bin/bash
    #               不配置网络    容器名称      image TAG     默认启动bash
    

    5、查看创建的容器是否运行

    docker ps
    

    6、给容器指定ip地址

    pipework enp2s0 test002 192.168.2.234/24@192.168.2.1
    #        网卡名 容器名     ip地址           网关
    

    7、进入容器查看ip地址

    docker exec -it test002  /bin/bash # 进入容器
    yum install -y net-tools # 安装网络工具包
    ifconfig # 查看ip地址
    

    二、使用Dockerfile构建待ssh服务的centos

    1、创建 Dockerfile

    mkdir centosssh # 创建一个目录存放之后的Dockerfile,目录名无所谓
    cd centosssh # 进入目录
    vi Dockerfile # 创建Dockerfile
    

    将如下内容填入Dockerfile中然后存盘退出 

    FROM docker.io/centos
    MAINTAINER rslai "netlrs@163.com"
    RUN yum install -y net-tools openssh-server openssh-clients sudo 
            && ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key 
            && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
    EXPOSE 22
    CMD ["/usr/sbin/sshd", "-D"]
    

    说明:

    2、创建image文件

    docker build -t centos:mycentosSsh -f /root/centosssh/Dockerfile /root/centosssh
    #                 库     tag            dokerfile文件      dokerfile目录
    

    3、查看生成的image文件

    docker images
    

     4、创建容器

    docker run -itd --net=none --name=test003 centos:mycentosSsh
    #               不配置网络    容器名称      image TAG     
    

    5、查看创建的容器是否运行

    docker ps
    

    6、给容器指定ip地址

    pipework enp2s0 test003 192.168.2.234/24@192.168.2.1
    #        网卡名 容器名     ip地址           网关
    

    7、进入容器查看ip地址

    docker exec -it test002  /bin/bash # 进入容器
    ifconfig # 查看ip地址

    8、查看sshd进程

    ps -ef
    

      如果没看到可能是第4步创建容器的时候后边跟上了 /bin/bash 这样bash命令优先级高了

    9、远程连接ssh

    useradd rslai # 创建rslai用户
    passwd rslai # 给用户设置密码
    

    10、找一个ssh工具设置ssh连接,ip地址 192.168.2.234 用户名rslai密码你起的

    参见文档:

      https://blog.csdn.net/kongxx/article/details/38412119

  • 相关阅读:
    剑指Offer--复杂链表的复制
    剑指offer--第43题 1~n整数中1出现的次数
    剑指Offer--第50题 第一次只出现一次的字符
    剑指offer--扑克牌顺子
    MySQL免安装使用教程
    TortoiseGit的使用参考
    剑指Offer-- 第58题 翻转字符串
    剑指Offer-- 第45题 把数组排成最小数
    剑指Offer-- 第49题 丑数
    SpringBoot-data-jpa的简单使用
  • 原文地址:https://www.cnblogs.com/rslai/p/9074135.html
Copyright © 2020-2023  润新知