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