docker centos7 安装ssh等基础软件

本教程主要在原有centos镜像的基础上,打包新的包含有ssh等基础软件的镜像,方便开发时向其他用户进行分配和使用。
首先,假设您已经具有docker的基础知识,如果您不够熟悉,可以参考《Docker — 从入门到实践》一书,或者其他教程。
首先,我们可以建立一个新的目录,centos-ssh,然后进入目录,建立Dockerfile文件,
内容如下,

# 基础镜像
FROM hub.c.163.com/library/centos:7.2.1511
# 基本个人信息
MAINTAINER liqingfeng liqingfengzzu@163.com
#替换为网易源,其中CentOS7-Base-163.repo为网易的库文件
ADD CentOS7-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo

#安装常用软件
RUN yum install -y sudo vim tar wget curl rsync bzip2 iptables tcpdump less net-tools lsof sysstat cronie passwd openssl openssh-server openssh-clients screen strace telnet unzip python-setuptools\
&& yum clean all

#生成ssh所需要的密钥等
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N ''
RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
RUN ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ''
#允许RSA认证
RUN echo "RSAAuthentication yes" >> /etc/ssh/sshd_config
# 允许公钥认证
RUN echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config

# 安装supervisor,并设置子目录配置文件夹位置
RUN easy_install supervisor\
 && cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime\
 && mkdir -p /etc/supervisor/conf.d/\
 && /usr/bin/echo_supervisord_conf > /etc/supervisord.conf\
 && echo [include] >> /etc/supervisord.conf\
 && echo 'files = /etc/supervisor/conf.d/*.conf' >> /etc/supervisord.conf\
 && yum clean all

#ssh的supervisor配置
COPY sshd.conf /etc/supervisor/conf.d/sshd.conf

#设置密码,注意,这里设置的默认密码为123456&*
RUN echo 'root:123456&*' | chpasswd
#暴露22端口
EXPOSE 22
#启动
CMD ["/usr/bin/supervisord"]

其中,这里分别用到了两个额外的文件,分别是网易源的配置文件CentOS7-Base-163.repo,另外一个ssh的supervisor配置文件sshd.conf
前者可以在这里找到对应的网易配置,如我们选择的是Centos7配置,下载后,需要放在与Dockfile 同样的文件夹下。
另外,sshd.conf 文件则如下所示,

[supervisord]
nodaemon=true

[program:sshd]
command=/usr/sbin/sshd -D

当三个文件都准备好后,可以运行构建命令,开始构建

docker build -t my/centos .

生成后,可以用docker images查看镜像。
注意,我们在Dockfile中配置了默认的账号和密码,如果需要改变,则注意更改。
启动相关的docker容器后,即可通过ssh进行访问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值