Contents

docker 部署开启 SSH 端口的 ubuntu 用于调试机器

Dockerfile


FROM ubuntu:16.04

RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd
RUN echo 'root:password' | chpasswd
RUN sed -i 's/PermitRootLogin prohibit-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"]

构建 image

docker build -t sintod/ssh:v3 . 

运行 容器

docker run -d -p 1022:22 --name sshd sintod/ssh:v3

连接容器

ssh root@容器主机ip -p:1022
// 输入上面 Dockerfile中自定义的密码