为镜像添加ssh服务

一:基于docker commit创建

 1.创建一个容器并启动

docker run -it ubuntu:14.04 /bin/bash

2,安装和配置

apt-get install openssh-server -y

如果需要正常启动ssh服务。需要吃创建/var/run/sshd  手动创建

 mkdir -p /var/run/sshd

 /usr/sbin/sshd -D &

查看容器的端口有没有被监听

netstat -tunple

修改ssh服务。取消pam登录

sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd 

在root目录下创建。ssh目录,并复制需要登录的公钥,可以通过ssh-keygen -t rsa 生成,存入到

mkdir root/.ssh

vi /root/.ssh/authorized_keys

创建自动启动ssh服务的可执行文件run.sh 并添加可执行权限

vi /run.sh

#!/bin/bash

/usr/sbin/sshd -D

最后退出

提保存刚刚的容器保存到一个新的对象

docker commit 3ce6a85416fc ssh:ubuntu   #3ce6a85416fc为你刚闯进镜像时候的id

docker images 查看下本地新生成的镜像

docker run -p 10022:22 -d sshd:ubuntu /run.sh

 

posted @ 2018-08-08 23:45  冰滴的眼泪  阅读(45)  评论(0编辑  收藏