Docker-为镜像添加SSH服务(CentOS)

Dockerfile方式创建镜像并启动容器

  https://www.cnblogs.com/BINGJJFLY/p/12808549.html

  可以添加root密码:echo root:root | chpasswd

安装配置SSH服务  

yum install openssh-server openssh-clients -y
vim /etc/ssh/sshd_config
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

创建公私钥

ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ls /etc/ssh/

修改root密码 

echo root:root | chpasswd

启动SSH服务

/usr/sbin/sshd -D &
netstat -tunlp

Commit方式创建镜像  

docker commit -m="create an sshd image" -a="bingjjfly" 容器的ID REPOSITORY:TAG

创建拥有SSH服务的容器

# 可以映射不同的端口
docker run -p 1022:22 -d SSH镜像ID

Dockerfile方式创建镜像

FROM centos:centos6.8
MAINTAINER bingjjfly<bingjjfly@docker.org>
RUN yum install openssh-server openssh-clients -y
RUN mkdir /var/run/sshd
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN /bin/echo 'root:root'|chpasswd
RUN /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session optional pam_loginuid.so/g' /etc/pam.d/sshd
RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local
EXPOSE 22
CMD /usr/sbin/sshd -D

docker build -f /mydocker/ssh/Dockerfile -t bingjjfly/ssh:1.0 .

docker run -d -p 1022:22 --name bingjjfly_ssh_1.0 bingjjfly/ssh:1.0

SSH方式连接服务器

# 宿主机IP
ssh root@192.168.88.128 -p 1022  

   

posted @ 2020-05-06 11:53  BINGJJFLY  阅读(397)  评论(0编辑  收藏  举报