docker 中运行 sshd 服务


创建Dockerfile

# sshd
#
# VERSION 0.0.2 FROM ubuntu:14.04 MAINTAINER admln <admln@docker.com> RUN apt-get update && apt-get install -y openssh-server RUN mkdir /var/run/sshd RUN echo 'root:admln' | chpasswd RUN sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/' /etc/ssh/sshd_config # SSH login fix. Otherwise user is kicked off after login RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd ENV NOTVISIBLE "in users profile" RUN echo "export VISIBLE=now" >> /etc/profile EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"]

构建镜像

sudo docker build --rm -t example_sshd .

运行它然后找出映射到主机的端口

sudo docker run -d -P --name the_sshd example_sshd
sudo docker port the_sshd 22

得到映射到主机的端口

测试连接

ssh root@127.0.0.1 -p 49160

docker 中运行 sshd 服务_第1张图片


 

转载于:https://www.cnblogs.com/admln/p/docker-run-sshd.html

你可能感兴趣的:(运维)