摘要:通常Linux系统管理员通过SSH服务来管理OS,但Docker的很多镜像是不带SSH服务的,可以通过attach(遇到假死的现象)或者exec(目前测试ok)的方法进入容器来管理,但是这些命令都无法解决远程管理容器的问题,因此,当需要远程登陆到容器内进行一些操作的时候,就需要SSH的支持了。本文记录如何使用docker commit创建一个带有SSH服务的ubuntu镜像。
(1) 首先以交互的方式运行我们本地的ubuntu容器
docker run -it ubuntu:14.04 /bin/bash
(2) 尝试使用sshd命令,会发现容器中没有安装该服务。
sshd bash: sshd: command not found
(3) 使用apt包管理器安装openssh-server
apt-get update apt-get install openssh-server
(4) 安装和配置SSH服务
要正常启动SSH服务,需要目录/var/run/sshd存在,手动创建它,并启动服务:
mkdir -p /var/run/sshd /usr/sbin/sshd -D &
此时查看容器的22端口(SSH服务器默认监听的端口),已经处于监听状态:
(5) 修改SSH服务的安全登陆配置
在远端客户端机器(即,非容器机器)执行命令 ssh-keygen -t rsa 生成rsa的公私密钥对,然后把公钥的信息拷贝到运行ubuntu容器机器的授权文件中:
mkdir /root/.ssh vi /root/.ssh/authorized_keys # 粘贴客户端的公钥信息
(6) 创建自启动SSH服务的可执行文件run.sh
vi /run.sh chmod +x /run.sh
脚本内容如下:
#!/bin/bash /usr/sbin/sshd -D
(7) 最后退出容器,并将当前修改后的容器保存为一个新的镜像
在宿主主机执行命令 docker ps -a 查看容器的运行状态,可以得到刚才退出容器的container id,记住id前三位。
然后执行提交命令,保存新的镜像:
docker commit $(container id前三位) ubuntu_sshd_gerry:14.04
此命令提交后,会生成一个新的镜像id*(image id)和新的镜像 ubuntu_sshd_gerry:14.04(支持ssh服务的ubuntu镜像)
最后,可以使用 docker images 查看本地的镜像是否已经包含我们新创建的镜像 ubuntu_sshd_gerry:14.04。
(8) 使用新镜像和配置端口映射
启动容器,并添加端口映射 10022(宿主主机端口)---> 22(容器内部SSH服务监听端口):
docker run -p 10022:22 -d ubuntu_sshd_gerry:14.04 /run.sh
启动后,可以在宿主主机上看到容器运行的详细信息:
(9) 在宿主主机,或者其他远程主机,使用SSH访问10022端口来登陆容器,测试OK
补充说明:
对一个镜像打一个新的tag的方法(只是tag不一样,实际是同一个image,因为image id是一样的):
docker tag $(image id) ubuntu_sshd_gerry:14.04
然后将老的tag删除掉:
docker rm $(container id)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 好薇2024《兵哥哥》1:124K黄金母盘[WAV+CUE]
- 胡歌.2006-珍惜(EP)【步升大风】【FLAC分轨】
- 洪荣宏.2014-拼乎自己看【华特】【WAV+CUE】
- 伊能静.1999-从脆弱到勇敢1987-1996精选2CD【华纳】【WAV+CUE】
- 刘亮鹭《汽车DJ玩主》[WAV+CUE][1.1G]
- 张杰《最接近天堂的地方》天娱传媒[WAV+CUE][1.1G]
- 群星《2022年度发烧天碟》无损黑胶碟 2CD[WAV+CUE][1.4G]
- 罗文1983-罗文甄妮-射雕英雄传(纯银AMCD)[WAV+CUE]
- 群星《亚洲故事香港纯弦》雨果UPMAGCD2024[低速原抓WAV+CUE]
- 群星《经典咏流传》限量1:1母盘直刻[低速原抓WAV+CUE]
- 庾澄庆1993《老实情歌》福茂唱片[WAV+CUE][1G]
- 许巍《在别处》美卡首版[WAV+CUE][1G]
- 林子祥《单手拍掌》华纳香港版[WAV+CUE][1G]
- 郑秀文.1997-我们的主题曲【华纳】【WAV+CUE】
- 群星.2001-生命因爱动听电影原创音乐AVCD【MEDIA】【WAV+CUE】