点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!
方式1:基于commit命令创建新镜像
docker run -ti ubuntu

apt-get update
apt-get install openssh-server
mkdir -p /var/run/sshd
/usr/sbin/sshd -D &
sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd
mkdir /root/.ssh
vi /root/.ssh/authorized_keys
vi runsshd.sh
#!/bin/bash
/usr/sbin/sshd -D
docker commit d9b410500c53 ubuntu:sshd

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

ssh root@192.168.44.81 -p 10022

可以看到已经登录到新创建的容器,并可以执行命令。
方式2:使用Dockerfile文件创建新镜像
mkdir ubuntu_sshd
vi runsshd.sh
#!/bin/bash
/usr/sbin/sshd -D
cat ~/.ssh/id_rsa.pub > authorized_keys
vi Dockerfile
FROM ubuntu:latest
MAINTAINER suncc (xxxx@163.com)
RUN apt-get update
RUN apt-get install openssh-server -y
RUN mkdir -p /var/run/sshd
RUN mkdir /root/.ssh
RUN sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd
ADD authorized_keys /root/.ssh/.
ADD runsshd.sh /.
RUN chmod 755 /runsshd.sh
EXPOSE 22
CMD ["/runsshd.sh"]



docker run -d -p 11022:22 ubuntu:sshdv2.0

ssh root@192.168.44.81 -p 11022


本文作者:孙长城(上海新炬王翦团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




