创建dockerfile文件,文件必须是Dockerfile命名
#基于官方centos镜像
FROM centos
#安装epel、sshd服务、
RUN rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm && \
yum -y install net-tools.x86_64 vim va-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 openssh.x86_64 openssh-server.x86_64 openssh.x86_64 &&\
yum clean all
#生成密钥对
RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key && \
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key && \
ssh-keygen -A -t dsa -f /etc/ssh/ssh_host_dsa_key
#修改root密码
RUN echo "root:123456" | chpasswd
#安装docker进程管理工具supervisor,并配置为前台运行
RUN yum -y install supervisor && \
sed -i 's/nodaemon=false/nodaemon=true/g' /etc/supervisord.conf
#添加superviso管理的其他服务进程配置文件
ADD sshd.ini /etc/supervisord.d/sshd.ini
#对外共享映射22端口
EXPOSE 22
#安装结束后运行命令,只能运行一条CMD的命令
CMD ["supervisord", "-c", "/etc/supervisord.conf"]
#/etc/supervisord.d/sshd.ini配置文件如下
[program:sshd]
command=/usr/sbin/sshd -D
process_name=%(program_name)s
autostart=true
转载于:https://blog.51cto.com/song1230/2332226