前提
相信很多同学已经体验了wsl的强大,能让win电脑上少装一个虚拟机软件,但是原生的wsl操作窗口复制粘贴很不方便,对于使用习惯ssh的人来说用原生的确实有些难受,故需要配置下使用ssh进行连接操作。
1、安装Ubuntu以及准备工作
1、控制面板 -> 程序 -> 程序和功能 -> 启用或关闭Windows功能或Win + R运行control appwiz.cpl指令
在功能列表中找到适用于Linux的Windows子系统和虚拟机平台两项启用。
2、安装WSL1(WSL1依赖于上步骤适用于Linux的Windows子系统功能)
使用管理员身份运行Powershell并执行指令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
如果只安装WSL1此时应该重启,否则更新至WSL2再重启。
3、 更新WSL2
更新WSL2需要Windows10版本2004且内部版本高于19041。
版本信息可以通过Win+R运行winver确认(下图版本不可用,需要更新)。
版本或内部版本不满足需求使用Win+S搜索更新设置进行系统更新。
如果电脑自带更新更新后非2004版,需要使用Windows更新助手进行更新。
WSL2依赖于虚拟机平台功能。
使用管理员身份运行Powershell并执行指令:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
微软商店安装ubuntu,安装成功后启动
设置普通用户密码,设置完成后设置root用户密码
sudo passwd
2、修改ubuntu软件源
1、备份list文件,操作出错便于恢复
cd /etc/apt/
sudo cp sources.list sources.list.bak
2、修改文件
vim sources.list
清空sources.list内容,然后填入需要修改的软件源,然后保存退出,这里使用的是阿里云
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
3、更新软件列表
sudo apt-get update
sudo apt-get upgrade
4、其它软件源
中科大
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
清华
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
3、配置SSH工具连接WSL
1、首先是卸载重装一遍ssh服务(不知道是不是自带ssh服务的问题)
sudo apt-get remove openssh-server
sudo apt-get install openssh-server
2、编辑sshd_config,修改如下配置
sudo vi /etc/ssh/sshd_config
修改配置,打开配置
Port 22 #默认即可,如果被占用修改为其他
PasswordAuthentication yes # 允许用户名密码方式登录
3、修改完成,重启ssh服务
sudo service ssh restart
4、WSL安装docker
安装docker需要先配置好软件源
1、卸载旧版本或者已安装docker,防止安装出错
sudo apt-get remove docker docker-engine docker.io containerd runc
2、设置仓库
安装 apt 依赖包,用于通过HTTPS来获取仓库:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥【9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88】
sudo apt-key fingerprint 0EBFCD88
现实如下图片所示,代表拥有密钥
设置稳定版本库(目前 20.04 还没有国内 docker 源,暂时用 18.04 版本):
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
bionic \
stable"
3、安装(安装最新版本的 Docker Engine-Community 和 containerd)
# 更新 apt 包索引
sudo apt-get update
# 安装最新版本的 Docker 和 containerd
#sudo apt-get install docker-ce docker-ce-cli containerd.io
# 注意这里安装最新版本的没有成功,故安装一下版本
apt-get install docker-ce=18.06.1~ce~3-0~ubuntu
5、设置docker加速
访问阿里云网站,获取自己的加速地址
接着就是配置加速地址,很简单的搞个json文件即可
sudo vim /etc/docker/daemon.json
# 添加如下内容,具体地址自己申请
{
"registry-mirrors": ["https://****.mirror.aliyuncs.com"]
}
# 由于Linux环境应用程序(如Ubuntu,Debian,OpenSuse或Kali)不支持为Linux操作系统提供基本构建块的Systemd,因此我们无法使用reboot或使用systemctl命令来管理systemd服务
#sudo systemctl daemon-reload
#sudo systemctl restart docker
4、测试
sudo docker run hello-world
启动、停止、重启docker命令
service docker start #启动docker
service docker stop #停止docker
service docker restart #重启docker
docker search redis #查看redis镜像版本
docker pull redis #拉取容器镜像
docker images #查看拉取的镜像
docker ps -a #查看容器
docker rm redis #删除容器
docker rmi redis #删除镜像
5、docker安装redis
1、拉取redis镜像
docker search redis #查询redis镜像版本
docker pull redis #拉取redis最新镜像
2、新建需要目录
mkdir /data/docker/redisConfig # 新建配置文件目录
mkdir /data/docker/rediaData #新建数据保存目录
3、首次启动redis
docker run -d --privileged=true -p 6379:6379 --restart always -v /data/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /data/docker/redia/data:/data --name myredis redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass "123456"
涉及命令说明:
-d -> 以守护进程的方式启动容器
-p 6379:6379 -> 绑定宿主机端口
--name myredis -> 指定容器名称
--restart always -> 开机启动
--privileged=true -> 提升容器内权限
-v /data/docker/redis/conf:/etc/redis/redis.conf -> 映射配置文件
-v /data/docker/redis/data:/data -> 映射数据目录
redis-server /etc/redis/redis.conf --appendonly yes -> 在容器里执行redis-server命令,打开redis持久化
--requirepass -> 密码
4、非首次操作redis
docker start myredis #启动redis
docker stop myredis #停止redis
docker restart myredis #重启redis
6、使用docker安装postgres
1、拉取postgres镜像
docker pull postgres #拉取最新版本
docker pull postgres:9.4 #拉取指定版本
2、首次启动运行
本人使用的是下面的命令(需要新建/data/postgres/datadir),没有添加–restart=always因为添加后报错,没有添加会是的docker重启后,不会自动重启容器
docker run --name mypostgres -v /data/docker/postgres/data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=password -p 5432:5432 -d postgres:latest
完整的命令应该是
docker run --name mypostgres -v /data/docker/postgres/data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=password -p 5432:5432 -d postgres:latest --restart=always
3、容器操作
docker start mypostgres #启动创建的容器
docker start containerID #启动容器