详解Docker创建支持ssh服务的容器和镜像

时间:2022-02-07 21:43:02

1. 这里使用的centos作为容器,所以首先下载centos的images

?
1
# sudo docker pull centos

2. 下载后运行一个centos的容器,这里使用centos6作为我测试的容器

?
1
# sudo docker run --name=centos-ssh -i -t centos:centos6 /bin/bash 

3. 安装openssh-server服务软件包

?
1
# yum install openssh-server

4. 编辑sshd的配置文件/etc/ssh/sshd_config,将其中UsePAM参数设置成“no”

5. 启动sshd服务

?
1
# /etc/init.d/sshd start

6. 添加测试用户admin,密码admin

?
1
2
# useradd admin
# echo 'admin:admin' | chpasswd

7. 为了使新添加的用户可以运行sudo命令,需要安装sudo软件包,并将admin添加到sudoers里

?
1
2
3
4
# yum install sudo  <--安装sudo软件包
# visudo       <--编辑sudoers,添加下面的行到文件里
  
admin  ALL=(ALL)    ALL

8. 测试,做完上面工作之后,使用ifconfig来查看一下容器的ip,或者使用“sudo docker inspect ”查看,然后就可以在宿主机器上通过ssh admin@<ip>来访问新创建的docker容器了。

9. 如果想要把做好的支持ssh服务的容器作为一个Docker镜像,先退出容器,然后使用下面的命令来创建

?
1
# sudo docker commit <container id> <image name>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/kongxx/article/details/38395305