Dockerfile配置centos安装sshd服务

一、 给真实的centos安装sshd服务的方法如下

登陆centos执行以下命令:

yum install -y openssh-server openssh-clients
sed -i '/^HostKey/'d /etc/ssh/sshd_config
echo 'HostKey /etc/ssh/ssh_host_rsa_key' >> /etc/ssh/sshd_config
echo 'StrictHostKeyChecking no' >> /root/.ssh/config
echo 'UserKnownHostsFile /dev/null' >> /root/.ssh/config
mkdir -p /opt
echo '#!/bin/bash' >> /opt/run.sh
echo '/usr/sbin/sshd -D' >> /opt/run.sh
chmod +x /opt/run.sh
#设置开机启动
systemctl enable sshd

二、Dockerfile安装配置centos安装sshd服务

1. 拉取centos基础镜像

# 也可以自己选择其他版本
docker pull centos:7.7.1908

2. 配置Dockerfile

#在目标目录下运行
vi Dockerfile
#填写以下内容
FROM centos:7.7.1908
RUN rm -f /etc/localtime && ln -sv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone
RUN export LANG=zh_CN.UTF-8
# 安装sudo
RUN yum -y install sudo ; chmod 640 /etc/sudoers
#更改root用户登录密码
RUN echo 'root:123456' | chpasswd
#安装sshd
RUN yum install -y openssh-server openssh-clients vim net-tools lrzsz rsync nc telnet wget
RUN sed -i '/^HostKey/'d /etc/ssh/sshd_config
RUN echo 'HostKey /etc/ssh/ssh_host_rsa_key' >> /etc/ssh/sshd_config
#声明22端口 
EXPOSE 22
#取消add host提示
RUN echo 'StrictHostKeyChecking no' >> /root/.ssh/config
RUN echo 'UserKnownHostsFile /dev/null' >> /root/.ssh/config
#容器运行时启动sshd
RUN mkdir -p /opt
RUN echo '#!/bin/bash' >> /opt/run.sh
RUN echo '/usr/sbin/sshd -D' >> /opt/run.sh
RUN chmod +x /opt/run.sh
CMD ["/opt/run.sh"]

3. 根据Dockerfile构建镜像并启动容器

  1. 构建镜像

    docker build -t centosssh:v1 . --no-cache #构建镜像
    
  2. 用镜像启动容器并进入bash

    docker run -dit --name -p 222:22 centosssh centosssh:v1 #启动容器,宿主机的222端口映射到容器的22端口
    docker exec -it centosssh bash #进入容器,root密码是Dockerfile里面设置的123456
    
  3. 测试

    #容器里输入看能否执行成功
    ssh-keygen -t rsa
    
  4. 利用xshell等终端连接工具连接容器能连接成功证明安装成功

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值