Windows10家庭版搭建WSL加Docker的开发环境

前言

WSL也就是win10更新的一个对开发者比较友好的点了,它并非虚拟机,而是一个模拟环境,并不能支持Linux中的各类操做,可是和windows交互很是方便,消耗很低,因此对我这种菜鸟来讲作开发和测试比较合适。
docker的好处这边也就不说了,能够去了解一下(主要是由于我也是第一次用- -),这篇文章主要是将如何安装,对原理和概念的东西不会解释。
其实我要搭建这样的开发环境的缘由比较简单,主要是下面两个缘由:
1.公司的服务器上的服务就是Linux加docker的模式,我要模拟这样的的结构方便测试和开发,正好学习一下
2.个人开发环境是windows的,我但愿借助docker和WSL,把个人开发环境搞得干净一点(为啥不直接用Linux系统呢,只是由于我以为一个电脑双系统受不了..)linux

安装WSL

win10商店里面就能够直接安装,这里的坑只有一个,就是要开启Linux子系统服务
image.pnggit

安装Docker

这里的坑就比较多了,但愿我踩的坑能对你有帮助
环境:win10家庭版docker

  1. 在WSL里面安装Docker

参考博客:https://yeasy.gitbooks.io/docker_practice/install/
参照上面文章里面Ubuntu的安装方法
安装完成以后,启动dockerubuntu

sudo service docker start

这里就会报错
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
说的意思就是链接不到守护线程,虽然我也不知道这个守护线程是干吗的,而后找到了一个国外小哥的博客:
https://medium.com/@sebagomez/installing-the-docker-client-on-ubuntus-windows-subsystem-for-linux-612b392a44c4
image.png
最关键点就是你在WSL里面装docker,必须先安装Docker For Windows在你的系统上。
OK,那咱们就去安装这个呗。
去官网上面下载。
https://docs.docker.com/docker-for-windows/install/
而后你就会发现安装不上,由于docker不支持win10家庭版...
有些博客里面会说用docker toolbox的东西代替,这里我不建议用,反正我没代替成功。
解决办法第一步:修改注册表,让安装程序误觉得咱们是win10 pro
定位到HKEY_LOCAL_MACHINEsoftwareMicrosoftWindows NTCurrentVersion
修改EditionId的值为Professional
而后还有要开启Hyper-v服务,这个东西在win10家庭版里面也是没有的,因此咱们须要安装。windows

pushd “%~dp0”

dir /b %SystemRoot%servicingPackagesHyper-V.mum >hyper-v.txtbash

for /f %%i in (‘findstr /i . hyper-v.txt 2^>nul’) do dism /online /norestart /add-package:"%SystemRoot%servicingPackages%%i"服务器

del hyper-v.txt学习

Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL测试

将上面的复制到.cmd文件中,而后用管理员运行,安装完毕以后重启电脑,在 安装和启用windows功能 中打开hyper-v服务,启动docker for windows。
这时候咱们再回到上面没有启用守护线程的问题

而后回到ubuntun,输入spa

echo "export DOCKER_HOST=localhost:2375" >> ~/.bash_profile
docker version

也就是告诉docker,他的守护线程接口,docker version检查是否启动成功
image.png

结语

到这边咱们就能够用使用docker了,而后还有一个很坑的点,就是修改EditionId的值为Professional这个东西,每次重启电脑,windows会自动把它改回去,而后咱们就又启动不了docker for windows了,若是我找到解决办法再来补一下。

相关文章
相关标签/搜索