字节笔记本字节笔记本

Windows10 Docker 环境搭建

2021-06-28

本文详细介绍了如何在Windows 10上通过安装WSL2、Ubuntu、Docker和Portainer来搭建一个高效的Docker开发环境,旨在帮助小白用户快速上手并管理Docker容器。

手里的macbook因为键盘问题返厂维修了,只好抱起了久违的Windows。首先面临的,就是Docker问题。

docker好用,但安装麻烦,用起来也命令繁多。一个小白,如何打造舒适的docker环境,是一个非常有挑战的问题。

本文将手把手的教你怎么把docker方便的搞到windows上,打造一个好用的开发环境,并安装好用的管理工具。所以本文包含以下内容:

  1. 安装Windows10

  2. 安装WSL2环境

  3. 安装Ubuntu操作系统

  4. 安装Docker

  5. 安装portainer

  6. 使用方法

篇幅较长,所以本文暂时杜绝废话。力求一气呵成,半小时内手握白富美。

1. 安装WSL2

1.1 安装Windows Terminal

在远程连接其他Linux的时候,我通常使用Xshell,就因为它长得比较漂亮耐看。

在Windows上,就可以安装Windows Terminal。有点类似于MacOS上的iTerm,可以说是Windows下最舒适的终端。

安装Windows Terminal需要从应用商店去获取,就是下面这个按钮。

图片

在搜索框里搜索Windows Terminal,即可找到这个软件。比较人性化的一点是,它不像Mac的应用商店一样,需要你先准备一个账号。WT不需要登录即可获取。

如果你的页面一直打转也不要紧,关闭重新打开几次就好了。由于众所周知的原因,国外网站就没有几个不转圈的。

图片

1.2 开启WSL2

如下图,在控制面板,找到程序选项,点击 “启用或关闭Windows功能”。

图片

从弹出的对话框里,划到最下边,然后给“适用于Linux的Windows子系统“,打勾,完事!

图片

要启用WSL2,必须要把Windows10升级到最新版本才可以。在Powershell中,执行下面命令,切换成WSL2版本。

wsl --set-default-version 2

2 安装Ubuntu子系统

从应用商店安装Ubuntu系统,这个系统将会以软件的形式存在。我这里选择的是LTS版本,可以看到给它打分的人并不多,可能大多数都是像我一样没有微软账号的游客。

图片

此时,神奇的事情发生了。在我们的Windows Terminal右上角,有一个向下的箭头,点击它,就可以看到刚刚安装的Ubuntu。

在Windows上离着Linux,只差一次点击而已。

图片

进入Linux系统之后,我们就可以像配置一个普通Linux一样配置这台机器。

首先把ubuntu的软件源给换掉。编辑/etc/apt/sources.list文件,把它的内容换成下面的源。

deb 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 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 https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

然后,安装最好用的oh-my-zsh。先用sudo apt install zsh安装shell终端,然后运行下面的命令。

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

等待一小段时间,我们的终端颜值就更上一层楼了。

3. 安装Docker

安装Docker,直接从官方下载最新的Windows版本就可以了,不要下载一些其他平台的阿猫阿狗。地址在这里

https://www.docker.com/products/docker-desktop

一路next即可安装。

图片

启动之后,点击设置,然后更改镜像仓库。

因为一些不可明说的原因,docker官方的镜像仓库无法访问。你可以从下面这些挑选一个,或者直接全部写上 。

["https://registry.docker-cn.com",
    "https://dockerhub.azk8s.cn",
    "https://reg-mirror.qiniu.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
]

完事之后,不要忘了 apply & restart 重启生效一下。

此时在右下角,就出现了Docker的小图标,非常的赏心悦目。

3. 安装 portainer

有很多Docker的管理工具,但我独爱portainer,原因就是它好用,而且是基于web的。它不仅能管理单机上的docker,还能够管理局域网中的集群,只要你使用-H 0.0.0.0:2375把它监听在网络上。

我们来看它的一张图。

图片

可以说,docker命令能搞的事情,在这个web应用上,都能搞。但首先我们得把它安装上去。

打开我们的wsl2的Ubuntu系统,此时你会发现,已经有了docker命令。我们在终端输入以下命令行。

docker volume create portainer_data
docker run -d -p 9000:9000 -p 8000:8000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

稍等片刻,portainer就启动成功了。这得益于我们把镜像仓库切换到国内的原因。

访问 http://localhost:9000 端口,将出现portainer的设置界面。

图片

在模板页面,有很多常见的软件应用,直接点击部署,就可以将软件安装在系统上。如果你是作为开发机使用,那么推荐使用docker的host模式,相当于使用主机的网络,和安装一个平常的软件没什么区别。

比如我想要一个MySQL数据库,就不需要再跑到MySQL官方下载一个,然后进入繁杂的安装程序中。直接在Docker上搞一个就可以了。

图片

点击小箭头,可以直接在web上进入Docker虚拟环境的命令行终端,非常的方便。如果你平常要调研的额软件和中间件非常的多,想要快速体验它的功能效果,这不得不说是个非常好用的功能。

图片

End

到此为止,我们的Docker开发环境就搭建完毕了。

如果你是一个命令行控,可以直接使用WSL终端提供的docker命令进行操作。但如果你对docker并不是非常熟悉,那么就可以使用portainer实现对Docker的管理。

人生苦短,如果把时间都花费在安装软件上,那是多么一件悲哀的事情。

搞定Docker,以后安装软件,只需要在google搜一下软件docker启动的命令就可以了。

省时省力,不易出错。即使你的公司没有虚拟化环境,docker作为一个开发工具,依然有它的价值。