在docker容器中我们不止需要通过宿主机进行登录对容器进行修改,我还有事还希望直接通过SSH登录到docker容器中进行一些修改,这样的话我们需要将容器中ssh端口映射到宿主机,然后再容器中安装openssh服务。
成都创新互联长期为上千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为刚察企业提供专业的网站设计、成都网站设计,刚察网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。1.在docker hub 中下载centos 官方镜像
$ docker pull centos:7
然后运行容器
$ docker run -i -t -p 2222:22 --name ssh centos:7 /bin/bash
2.在容器中安装openssh服务
$ yum install openssh-server openssh-clients -y
3.修改/etc/ssh/sshd_config配置文件
注释掉HostKey /etc/ssh/ssh_host_ecdsa_key
注释掉HostKey /etc/ssh/ssh_host_ed25519_key
4.容器中创建公私密钥
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
并修改容器的root密码
echo 556256 | passwd --stdin root
5.启动ssh服务
/usr/sbin/sshd -D &
通过ssh登录即可访问容器。
为了以后的方便使用可以将开启这个开启了SSH的容器保存为镜像方便下次使用。