我在本地机器上运行我的 Docker 容器,为了使用 SSH 实用程序,我执行了以下步骤
第 1 步:使用 docker 命令登录 Docker 容器
$ docker exec -it <container_id or container_name> /bin/bash
第 2 步:安装 SSH 服务器
$ apt-get update && apt-get install -y openssh-server
**步骤 3 在本地机器上创建 SSH-keypair **
如果您的 ~/.ssh 目录中有 SSH 密钥对,则可以跳过此步骤
$ ssh-keygen
- 保留存储密钥对的默认路径。
- 为此输入密码(没有密码时为空):只需按 Enter
第 4 步:将公钥文件的内容复制到 Docker ~/.ssh/authorized_keys 文件中
$ cat ~/.ssh/id_rsa.pub
现在复制那个公钥
$ mkdir -p ~/.ssh && chmod 700 ~/.ssh
$ echo "<Public-Key content>" > ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
第 5 步:更新 SSH 配置并重启 Docker 容器内的 SSH 服务
打开文件 /etc/ssh/sshd_config 并从下一行删除注释
PubkeyAuthentication 是
此命令用于重启 SSH 服务以影响更改。
$ service ssh restart
并检查 SSH 服务的状态以检查它是否正在运行
$ service ssh status
第 6 步:获取 Docker 容器 I.P.
从本地机器运行以下命令
$ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <container_name or container_id>
第 7 步:执行 SSH
$ ssh root@<Container_IP>
你也可以使用 SCP。
$ scp <file_name> root@<container_ip>: