需求:
想自己搭建一个ubuntu的lnmp环境,但是使用powershell的时候,各种别扭,所以就考虑远程连接,通过putty或者xshell来连接
环境:
系统:Win10
docker:Version 17.06.0-ce-win19 (12801)
容器管理:kitematic for windows
远程连接工具:xshell
容器系统:ubuntu
过程:
一、下载ubuntu容器
从ketematic中下载官方最新版ubuntu
备注:1、推荐使用阿里云或者国内的其他镜像,速度非常快
2、如果不用ubuntu,你也可以使用其他linux发行版,都是类似操作
二、准备工作
因为新装的官方ubuntu中很多命令都没有,需要自己安装
apt-get update
apt-get install vim
给root初始化密码
sudo passwd root(如果sudo命令不存在,使用passwd root)
然后设置密码即可,比如我直接设置的密码就为root
备注:1、如果你不想用root账号,可以增加其他账号,ssh配置和登录的时候使用其他账号即可
三、安装ssh
安装
apt-get install openssh-server
查看状态
service ssh status
开启ssh
service ssh start
四、配置ssh,运行root登录
vim /etc/ssh/sshd_config
PermitRootLogin的值从prohibit-password改为yes
如下:
- PermitRootLogin prohibit-password + PermitRootLogin yes
编辑完后进行保存,然后重启ssh
service ssh restart
五、保存当前容器的更改
通过kitematic打开,或者通过Docker Quickstart Terminal打开docker命令操作
docker ps查看当前正在运行的docker有哪些
可以看到当前运行的ubuntu的容器ID为多少
保存新容器
docker commit 66b34b5228d8
备注:1、语法为docker commit 容器ID
六、给容器配置可访问端口
因为ssh的端口为22,那么我们配置一个外部端口来访问容器中的端口
配置好后,点击保存,容器会自动重启
备注:1、外部端口可以随便配置一个不冲突的端口即可,我这里配置的50001
2、重启容器后,可能需要重新启动ssh,service ssh start
七、通过xshell、putty连接容器
以上所有工作都准备完了,我们需要通过docker的ip地址进行访问(不能通过容器的ip地址访问,因为要进行映射)。
本地cmd-》ipconfig查看当前docker的ip地址
那么我们ssh访问的地址即为上面两步配置的192.168.56.1:50001
账号为root,密码为root
你可以通过putty或者xshell等ssh客户端工具进行连接
此时,连接成功
总结:
以上操作没有考虑安全问题,直接用的root啊,ssh也没有经过多余配置,因为这个是本地的开发环境搭建,所以简单即可。
因为kitematic的存在,很多地方变得所见即所得了,很直观。不像之前使用命令来操作,如果你喜欢使用命令,那么不用kitematic其实都是一样的,没区别。