ssh远程连接docker中的container
2017-05-09 18:54
465 查看
http://blog.csdn.net/vincent2610/article/details/52490397
由于工作需要,要远程连接Container,本地机器是windows,以下为解决步骤:
1. 环境
本地:Windows
↓
Docker版本1.12
↓
远程:docker中的Container(Ubuntu)
2. Container安装ssh服务
首先进入Container,进行以下步骤:
① 安装ssh
[plain]
view plain
copy
sudo apt-get install openssh-server #安装ssh服务器
service ssh status # 查看ssh服务启动情况
service ssh start # 启动ssh服务
② 配置ssh,允许root登陆
[plain]
view plain
copy
vi /etc/ssh/sshd_config
将PermitRootLogin的值从withoutPassword改为yes
③ 重启ssh服务
[plain]
view plain
copy
service ssh restart # 重启动ssh服务
3. 保存Container镜像
另外开启Docker Quickstart Terminal,保存镜像
[plain]
view plain
copy
docker ps #查看正在运行的container
**找到所要保存的container的container id,假设为xxxxxx**
docker commit xxxxxxxx tomjerry/foobar
(注:tomjerry/foobar为要保存的新镜像的名字,可任意写)
4. 重新运行Container
[plain]
view plain
copy
docker run -it -p 50001:22 tomjerry/foobar /bin/bash
[plain]
view plain
copy
service ssh start
注意-p 50001:22这句,意思是将docker的50001端口和container的22端口绑定,这样访问docker的50001等价于访问container的22端口
5. ssh连接container
你可以用xshell或putty等ssh客户端工具连接container
首先假设各方的ip如下:
[plain]
view plain
copy
本地windows ip: 192.168.99.1
docker ip:192.168.99.100
container ip:172.17.0.3
那么,你要远程container,则要访问以下地址:
[plain]
view plain
copy
ssh 192.168.99.100:50001
这样通过访问docker的50001端口,就神奇的间接连通到container的22端口了,从而达到ssh连接container的目的,至此。
由于工作需要,要远程连接Container,本地机器是windows,以下为解决步骤:
1. 环境
本地:Windows
↓
Docker版本1.12
↓
远程:docker中的Container(Ubuntu)
2. Container安装ssh服务
首先进入Container,进行以下步骤:
① 安装ssh
[plain]
view plain
copy
sudo apt-get install openssh-server #安装ssh服务器
service ssh status # 查看ssh服务启动情况
service ssh start # 启动ssh服务
② 配置ssh,允许root登陆
[plain]
view plain
copy
vi /etc/ssh/sshd_config
将PermitRootLogin的值从withoutPassword改为yes
③ 重启ssh服务
[plain]
view plain
copy
service ssh restart # 重启动ssh服务
3. 保存Container镜像
另外开启Docker Quickstart Terminal,保存镜像
[plain]
view plain
copy
docker ps #查看正在运行的container
**找到所要保存的container的container id,假设为xxxxxx**
docker commit xxxxxxxx tomjerry/foobar
(注:tomjerry/foobar为要保存的新镜像的名字,可任意写)
4. 重新运行Container
[plain]
view plain
copy
docker run -it -p 50001:22 tomjerry/foobar /bin/bash
[plain]
view plain
copy
service ssh start
注意-p 50001:22这句,意思是将docker的50001端口和container的22端口绑定,这样访问docker的50001等价于访问container的22端口
5. ssh连接container
你可以用xshell或putty等ssh客户端工具连接container
首先假设各方的ip如下:
[plain]
view plain
copy
本地windows ip: 192.168.99.1
docker ip:192.168.99.100
container ip:172.17.0.3
那么,你要远程container,则要访问以下地址:
[plain]
view plain
copy
ssh 192.168.99.100:50001
这样通过访问docker的50001端口,就神奇的间接连通到container的22端口了,从而达到ssh连接container的目的,至此。
相关文章推荐
- ssh远程连接docker中的container
- 使用docker,不要用ssh连接到你的container
- centos 实现ssh远程连接docker
- Docker ssh远程连接使用
- centos 实现ssh远程连接docker
- ssh远程连接docker中的 linux container
- linux中远程连接(如SSH)出现someone could be eavesdropping on you right now的解决办法
- 使用plink以及ssh转发连接到局域网内的远程桌面或其它端口
- Linux中的远程连接 SSH and VNC图形模式
- Linux中的远程连接 SSH and VNC图形模式
- Linux下通过EXPECT脚本自动执行ssh远程连接
- 远程连接Ubuntu9 服务器 (putty)ssh 连接
- 远程连接Linux (Ubuntu配置SSH服务) 端口22
- 用SSH保护你的VNC远程连接
- Navicat for MySQL用ssh功能连接远程数据库
- Linux中的远程连接 SSH and VNC图形模式
- 怎样SSH远程连接虚拟机中的Ubuntu
- 利用SSH远程连接主控端局域网计算机命令
- Linux中的远程连接 SSH and VNC图形模式
- SSH不输入密码连接远程Linux主机