- 检查容器中有没有安装ssh服务:rpm -qa | grep ssh
- 如果没有安装ssh服务: yum install openssh-server
- centos配置软件源方法:
-
# 查看系统存在到软件源 yum repolist all # 备份旧到软件源 cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.bak # 设置新的软件源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
- 清理缓存
- yum clean all
- yum makecache
- 在镜像里安装好ssh服务后,对ssh配置文件进行配置
- vi /etc/ssh/sshd_config
- 启用Port 22
- 启用RSAAuthentication yes
- 启用PubkeyAuthentication yes
- 启用AuthorizedKeysFile .ssh/authorized_keys
- 启用PermitRootLogin yes
- 开启ssh服务:/bin/systemctl start sshd.service
- 如果出现Failed to get D-Bus connection: Operation not permitted问题:
- docker run --name eureca --gpus all -it --rm --privileged --shm-size='32g' -v /data/code:/opt/project --entrypoint='/usr/sbin/init' image_name (PS:这行命令执行完后,需要另打开一个终端执行下一行命令)
- docker exec -it eureca /bin/bash
- 在镜像中执行/bin/systemctl start sshd.service
- 如果出现Failed to get D-Bus connection: Operation not permitted问题:
- 检查ssh服务是否开启:
- ps -ef | grep ssh
- netstat -an |grep 22
- 将ssh服务添加到自启动列表中
- systemctl enable sshd.service
- 配置ssh免密登录docker
- 将host主机下id_rsa.pub内容复制到docker中/root/.ssh/auhorized_keys文件中(ps:如果没有/root/.ssh目录,则直接创建该目录即可;auhorized_keys文件亦是如此。)
- ssh root@ip地址
采用SSH登录docker镜像(基于Centos)
最新推荐文章于 2024-09-07 17:32:29 发布