基于CentOS容器镜像制作可ssh登录的docker镜像
2023-09-14 09:12:50 时间
【原文链接】基于CentOS容器镜像制作可ssh登录的docker镜像
(1)以centos:7.9.2009为例,首先以交互的方式启动容器
docker run -it --rm --privileged centos:7.9.2009 /bin/bash
(2)然后安装基础软件即ssh服务
yum install -y net-tools
yum install -y openssh-clients
yum install -y openssh-server
ssh-keygen -A
mkdir /var/run/sshd
echo 'root:Admin123456' |chpasswd
(3)然后启动sshd服务
/usr/sbin/sshd -D &
(4)然后将运行的容器生成镜像,这里 e4827a50c0ed 为容器id
docker commit e4827a50c0ed redrose2100/centos-ssh:7.9.2009
(5)此时查看镜像,如下镜像已经生成。
[root@centos7-1 ~]# docker images | grep redrose2100
redrose2100/centos-ssh 7.9.2009 62b2d2fccae6 17 seconds ago 398MB
[root@centos7-1 ~]#
(6)将运行的容器退出,直接执行exit即可退出
(7)然后使用新生成的镜像启动容器
docker run -d --name=vm1 --privileged redrose2100/centos-ssh:7.9.2009 /usr/sbin/sshd -D
(8)此时查看容器,可以看到容器已经在后台运行
[root@centos7-1 openeuler]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
79d890184d34 redrose2100/centos-ssh:7.9.2009 "/usr/sbin/sshd -D" 5 seconds ago Up 3 seconds vm1
[root@centos7-1 openeuler]#
(9)然后通过docker exec 的方式进入容器,查看ip地址
[root@centos7-1 openeuler]# docker exec -it 79d890184d34 /bin/bash
[root@79d890184d34 /]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 8 bytes 656 (656.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@79d890184d34 /]#
(10)退出容器,然后通过ssh方式登录,如下可以登录
[root@centos7-1 openeuler]# ssh -o "StrictHostKeyChecking=no" root@172.17.0.2
root@172.17.0.2's password:
Last login: Mon Dec 12 07:15:44 2022 from 172.17.0.1
[root@79d890184d34 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 85 bytes 12046 (11.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 57 bytes 10094 (9.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@79d890184d34 ~]#
相关文章
- ssh远程服务器
- JavaWeb_(SSH)三大框架整合struts+hibernate+spring_Demo
- 外网访问Openwrt路由器管理Web及SSH
- FAIL : SSHException: Incompatible ssh peer (no acceptable kex algorithm)问题解决及更新paromiko失败问题解决
- SSH 限制
- CentOS 不间断会话(ssh关闭后如何保证程序继续运行)(nohup和screen)
- SSH框架入门学习之二(spring)
- SSH-KeyGen -认证密钥的生成、管理和转换
- CentOS 7 x86_84下ssh-copy-id脚本-openssh9.1p1——筑梦之路
- ubuntu 18.04 更新源、ssh
- Xshell 连接 Mac OS ssh 输入不了密码
- GitLab添加ssh-key,操作无需每次输入账号密码
- KVM虚拟机管理工作二(虚拟机磁盘优化,Centos进入dracut模式,报 /dev/centos/swap does not exist,如何恢复)
- linux服务篇-SSH服务
- Centos 7.5 SSH改别的端口连接不上,只有默认端口才行(未解决)
- CentOS7.5 怎么修改默认SSH端口号
- VMware16 SSH访问nat网络模式 ubuntu虚拟机
- ssh自动登陆和scp自动拷贝文件