bash - docker如何启用ssh连接
问题描述
伙计们。我想为我的 docker 设置一个 ssh 连接。这是我的步骤。
我的信息:
Ubuntu:
拉码头
docker pull citybrainchallenge/cbengine:0.1.1
进入容器,在docker中执行步骤2-5
docker run -it citybrainchallenge/cbengine:0.1.1 bash
安装依赖项
apt-get update apt-get install passwd openssl openssh-server openssh-clients
更改密码
passwd
设置配置,删除
#
vim /etc/ssh/sshd_config
PubkeyAuthentication yes PermitRootLogin yes Port 22
保存容器
- 提交到新容器
docker ps # check the container id docker commit container_id new_image_id(I set: citybrainchallenge/cbengine:2.2)
运行新容器并测试它
docker run -it citybrainchallenge/cbengine:2.2 bash
在容器中,重启 ssh
service restart ssh service --status-all # check ssh is +
打开一个新终端,测试它的连接
docker ps docker port container_id 22
但是,它没有用。
解决方案
当您运行容器时,您可以传递端口转发参数并检查它是否有效 docker run -p 22:22
推荐阅读
- python - 无法使用 Nginx 反向代理连接到 Websocket 服务器
- reactjs - 如何让 command.js 和 index.d.ts 知道函数?
- android - 随着 Android Studio 4.1 更新 'Plugin incompatible with the new build found: Firebase Services' 出现警告信息
- angular - 与分页Angular一起过滤数据
- r - 如何用半一致的格式重命名观察?
- javascript - 使用 C# 到 JavaScript 的 UWP WebView 中 JSON 的问题无法正确读取
- c++ - 我可以在这个线性函数问题中使用什么算法?
- r - R中的辅助轴未注册
- java - 如何自动化 jprofiler 以保存具有不同参数的多个目标 java 程序的快照
- security - 为什么在认为不安全的情况下将 localhost 添加到 SAN 列表?