WSL中安装Docker
在WSL中是无法直接使用 Docker 的,需要通过 remote Docker deamon 连接。
Windows10 内置了Linux系统:WSL (Windows Subsystem for Linux, 又称Bash for Windows)。可以方便地在Win10里使用Ubuntu等Linux系统的命令行
Win10可以直接安装Docker in Windows,不需要像Win7一样,要配合VirtualBox。
所以我们需要:
- windows10 上安装 Docker
- WSL 上 安装 Docker 并连接到 windows 上的 Docker 守护进程
步骤:
¶1. 安装Docker in Windows10
-
打开Docker Desktop设置:
确保勾选:Expose daemon on localhost:2375 without TLS
下载安装后可能会提示升级到 WSL2,按照提示升级完重启就好了
¶2. 在Win10 里安装Ubuntu WSL
- 这教程太多了,自行搜索。大致是打开虚拟化HyperV,安装Windows Feature: WSL,重启,微软商店里安装“Ubuntu18.04”
- 安装完毕,通过开始菜单 - Ubuntu打开,设置Linux用户名/密码
- Win+R - “Bash”也能打开,注意跟上一步起始目录的区别
¶3. Ubuntu18安装Docker CE
按照官网教程安装完 Docker 就行了
- 授于当前用户以root权限运行Docker CLI
# Allow your user to access the Docker CLI without needing root access.
sudo usermod -aG docker $USER
- 安装Docker Compose
# Install Python and PIP.
sudo apt-get install -y python3 python3-pip
# Install Docker Compose into your user's home directory.
pip install --user docker-compose
¶4. 连接Docker daemon
- 最关键的一行命令,打开Bash:
echo "export DOCKER_HOST=tcp://localhost:2375" >> ~/.bashrc && source ~/.bashrc
不通过deamon连接的话,你在Ubuntu里运行docker,就会出现错误:
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
注意:这里有一个坑,如果在 WSL 上安装了 oh-my-zsh
, 那么更改 ~/.bashrc
无效,应当更改 ~/.zshrc
- 验证Docker启动成功:
docker info
docker-compose --version
kevinqq@CN:/mnt/c/Users/xxx$ docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
至此,已经在WSL Ubuntu里完美配置Docker成功了!
参考:
https://www.jianshu.com/p/97d16b68045f
https://docs.docker.com/engine/install/ubuntu/
https://blog.csdn.net/qq_36148847/article/details/79261067
https://stackoverflow.com/questions/26616003/shopt-command-not-found-in-bashrc-after-shell-updation
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,邮件至 708801794@qq.com
文章标题:WSL中安装Docker
文章字数:525
本文作者:梅罢葛
发布时间:2020-12-10, 18:25:18
最后更新:2020-12-10, 19:48:00
原始链接:https://qiurungeng.github.io/2020/12/10/WSL%E4%B8%AD%E5%AE%89%E8%A3%85Docker/