可ssh的镜像&指定容器ip

文章描述了如何创建一个包含SSH服务的CentOSDocker镜像,包括从基础CentOS7.9.2009镜像开始,删除yum仓库文件,添加新的仓库,更新系统,安装SSH服务器和客户端,设置root密码,生成SSH密钥,并暴露22端口。接着,文章演示了如何创建Docker网络,启动并配置容器,以及如何通过SSH连接到这些容器。最后,提到了清理Dockervolume的步骤。

制作可ssh的centos镜像

#373MB
#部分操作不需要,确保无问题添加,不影响镜像大小
FROM centos:7.9.2009
RUN rm -rf  /etc/yum.repos.d/*
ADD ./CentOS-Base.repo /etc/yum.repos.d/
RUN yum update -y  && yum install -y openssh-server openssh-clients sudo && yum  clean all && sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config &&\
echo "root:123456" | chpasswd  && echo "root   ALL=(ALL)  ALL" >> /etc/sudoers  && \
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key   && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key  && mkdir /var/run/sshd

EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

创建网络空间

[root@vm ~]# docker network create --subnet=10.1.0.0/24 uat
[root@vm ~]# docker network inspect uat | grep -i subnet
                    "Subnet": "10.1.0.0/24"
[root@vm ~]# docker run -itd --net uat --ip 10.1.0.11 --name os1  centos:7.9.2009-base
[root@vm ~]# docker exec  os1 ls /root/   #不进入容器查看
[root@vm ~]# docker inspect test | grep -i ipaddress
                    "IPAddress": "10.1.0.11",

启动容器

docker run -d --net uat --ip 10.1.0.11 --name os1 --privileged=true centos:7.9.2009-base /usr/sbin/init
docker run -d --net uat --ip 10.1.0.12 --name os2 --privileged=true centos:7.9.2009-base /usr/sbin/init
docker run -d --net uat --ip 10.1.0.13 --name os3 --privileged=true centos:7.9.2009-base /usr/sbin/init

ssh连接

[root@vm ~]# cat /etc/hosts
...
10.1.0.11 os1
10.1.0.12 os2
10.1.0.13 os3
[root@vm ~]# >.ssh/known_hosts
[root@vm ~]# ssh os1

volume 空间清理

[root@vm es]# docker volume ls
DRIVER              VOLUME NAME
local               es_data01
local               es_data02
local               es_data03
[root@vm es]# ls /var/lib/docker/volumes/
es_data01  es_data02  es_data03  metadata.db

[root@vm es]# docker volume prune
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值