【原文链接】基于openEuler-22.03-LTS版本制作开启ssh服务的docker镜像
(1)以交互的方式启动一个基于openEuler-22.03-LTS版本的容器
docker run --privileged -it --name openEuler-ssh openeuler/openeuler:22.03-lts
如下图所示
(2)docker容器中未安装passwd工具,首先执行如下命令安装passwd命令
dnf install -y passwd
(3)然后对root用户修改密码
passwd root
如下所示
(4)安装net-tools工具,用户查看容器的ip地址等
dnf install -y net-tools
(5)然后执行如下命令安装ssh的client和server
dnf install -y openssh-clients
dnf install -y openssh-server
(6)执行如下命令生成公钥和私钥
ssh-keygen -A
如下所示:
(7)然后执行如下命令启动ssh
/usr/sbin/sshd
(8)然后通过如下命令验证ssh是否安装OK
ssh root@127.0.0.1
如下,输入yes,然后输入密码,即可ssh链接到本地,表示此时ssh已经安装OK
(9)然后新开一个shell窗口,通过如下命令查看容器列表
docker ps
如下
(10)然后通过如下命令将openEuler-ssh这个容器的内容打包为镜像 openeuler-ssh,,标签tag值直接使用openEuler的tag值
docker commit 55ed416eb1b2 redrose2100/openeuler-ssh:22.03-lts
如下
(11)此时查看docker镜像,已经存在了
docker images
如下
(12)以交互的方式使用新创建的镜像启动一个新的容器
docker run --privileged -it --name redrose2100 redrose2100/openeuler-ssh:22.03-lts
如下:
(13)可以验证一下新启动的容器ifconfig命令
(14)此时需要使用如下命令启动ssh服务
/usr/sbin/sshd
(15)然后就可以继续ssh了,如下