将你的Windows,快速打造成Docker工作站!
Posted 程序员大咖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将你的Windows,快速打造成Docker工作站!相关的知识,希望对你有一定的参考价值。
????????关注后回复 “进群” ,拉你进程序员交流群????????
原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。
手里的macbook因为键盘问题返厂维修了,只好抱起了久违的Windows。首先面临的,就是Docker问题。
docker好用,但安装麻烦,用起来也命令繁多。一个小白,如何打造舒适的docker环境,是一个非常有挑战的问题。
本文将手把手的教你怎么把docker方便的搞到windows上,打造一个好用的开发环境,并安装好用的管理工具。所以本文包含以下内容:
安装Windows10
安装WSL2环境
安装Ubuntu操作系统
安装Docker
安装portainer
使用方法
篇幅较长,所以本文暂时杜绝废话。力求一气呵成,半小时内手握白富美。
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作为一个开发工具,依然有它的价值。
作者简介:小姐姐味道 (xjjdog),一个不允许程序员走弯路的公众号。聚焦基础架构和Linux。十年架构,日百亿流量,与你探讨高并发世界,给你不一样的味道。
-End-
最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!
点击????卡片,关注后回复【面试题
】即可获取
在看点这里好文分享给更多人↓↓
以上是关于将你的Windows,快速打造成Docker工作站!的主要内容,如果未能解决你的问题,请参考以下文章
使用云原生buildpacks将你的代码转换成Docker Image | 技术干货
Docker实战系列——第四话-- 将你的spring-boot应用进行容器化的几种常见玩法