4.启动容器 并进入
$ docker run -itd centos /bin/bash
查看容器: docker ps
$docker attach containerID
------------------------------------------
配置ssh服务:
a、修改Centos root密码
passwd root
[root@378ab88a06c8 /]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ecdsa_key
[root@378ab88a06c8 /]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ed25519_key
---------------------------------
提交新的镜像,包含有sshd服务
a、提交新的镜像之前,安全退出旧的镜像容器,并关闭容器
ctrl+p+q 安全退出容器,此命令会退出当前容器,但是容器不停止
docker stop containerid //彻底关闭容器
b、提交新的镜像
---------------------------------------------------------------
宿主机配置免秘登陆 结合expect函数和ssh命令登陆到容器中
expect 需要先进行安装,才可以使用:
推荐直接用yum 安装即可,yum search expect 找到合适的版本:红线中的两个版本都可以,二选一即可
yum install expect-devel.x86_64
---------------------------------------------
宿主机编写expect脚本自动填充密码,//此处注意 expect 脚本不同于sh脚本不能使用 sh 命令执行,只能通过添加执行权限./xxxx.exp 执行
脚本内容
vi ssh_centos7.exp
-------------------------------------
#!/usr/local/bin/expect //这里根据你本地环境的expect命令所在目录填写
set timeout 30
spawn ssh -p 5001 [email protected]
expect "password:"
send "123456\r"
interact
-----------------------------
chmod +x ssh_centos7.exp ./ssh_centos7.exp 运行进入容器