使用WSL连接Docker Server(Windows/Linux)

在Windows下安装Docker for Windows

  • Cotana搜索功能,打开Windows的Hype-v功能(注:会影响Virtualbox和Vmware的使用)并重启电脑。
  • Docker官方网站下载Docker for windows并安装。
  • (新版本不需要)右键Docker for windows程序小图标--Settings--general--expose daemon on tcp://localhost:2375 without TLS
  • 右键Docker for windows程序小图标--Settings--daemon,切换Basic为Advance,访问阿里云Docker镜像服务,按其中说明替换镜像链接Json到应用中并重启Docker。

在WSL下安装Docker for Windows

  • 先确定基本环境部署成功。
sudo apt-get -y install  apt-transport-https  ca-certificates  curl
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
  • 然后安装Docker,因为只使用客户端,安客户端就行了。
sudo apt-get -y install docker-ce-cli
  • 更改WSL连接Docker server的默认端口:进入~/.bashrc,在最底端添加:
export DOCKER_HOST=tcp://0.0.0.0:2375
  • 刷新bash配置
source ~/.bashrc

测试是否成功

  • 查看Docker版本。
docker version
  • 如果显示以下内容,则表示已经成功。
Client:
 Version:       18.03.0-ce
 API version:   1.37
 Go version:    go1.9.4
 Git commit:    0520e24
 Built: Wed Mar 21 23:10:01 2018
 OS/Arch:       linux/amd64
 Experimental:  false
 Orchestrator:  swarm
Server:
 Engine:
  Version:      18.03.0-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.4
  Git commit:   0520e24
  Built:        Wed Mar 21 23:14:32 2018
  OS/Arch:      linux/amd64
  Experimental: false

其他

同样这个方法,服务端也可以是其他Linux主机上的docker服务,配置方法为在服务器的
/etc/docker/daemon.json中写入

{
  "hosts":[
    "unix:///var/run/docker.sock",
    "tcp://0.0.0.0:2375"
  ]
}

之后在/etc/systemd/system/docker.service.d/docker.conf中写入

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd

之后运行

sudo systemctl daemon-reload
sudo systemctl restart docker

即可。

参考文档

Docker安装——Ubuntu16.04
Setting Up Docker for Windows and WSL to Work Flawlessly

原文地址:https://www.cnblogs.com/cielosun/p/8728316.html