• Jesse
    2019年7月16日 17:45

    在 WSL 中使用 Docker

    前言

    尽管使用 Windows 做开发没什么问题,但有时候还是需要用到 Linux,因此记录一下操作过程,以备将来不时之需。

    安装 WSL

    1. 启用 Hyper-V,操作方式:控制面板 > 程序和功能 > 启用或关闭 Windows 功能 找到 Hyper-V 并启用,你也可以同时启用适用于 Linux 的 Windows 子系统,这样就不需要执行第3步了。之后需要重启系统。
    2. 安装 docker for windows
    3. 启用 WSL,操作方式是:控制面板 > 程序和功能 > 启用或关闭 Windows 功能 找到 适用于 Linux 的 Windows 子系统 并启用,然后重启系统。
    4. 进入 Microsoft Store,安装一个 Linux 系统,这里我们使用 Ubuntu 18.04,安装之后,打开它。然后会自动初始化,然后输入用户名,密码就可以了。
    5. 更新 Ubuntu。这里建议使用阿里云的镜像服务,操作方式如下:
    # 备份默认的镜像源文件
    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
    
    # 复制阿里云镜像,
    sudo nano /etc/apt/sources.list
    
    # 将文件中的内容全部清除,然后拷贝粘贴如下代码:
    deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
    
    # 保存退出,更新软件源,不替换镜像源,直接执行这步
    sudo apt update && sudo apt upgrade -y
    
    1. 安装 docker,sudo apt install docker.io
    2. 安装 docker-compose:
    sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    # 增加 docker-compose 执行权限
    sudo chmod +x /usr/local/bin/docker-compose
    
    1. 开启 docker for windows 服务。settings > General > Expose daemon on tcp://localhost:2375 withour TLS
    2. Ubuntu 下使用 Windows 的 docker 服务
    nano ~/.bashrc
    
    # 滚动到最后一行添加以下内容
    # docker for wsl                                                                                                        export DOCKER_HOST=tcp://127.0.0.1:2375
    
    # 启用修改
    source ~/.bashrc
    
    1. 测试是否启动成功,输入命令docker version,如果显示内容如下,则成功。并不需要完全一致,只要客户端和服务端的内容都有就可以。
    Client:
     Version:           18.09.7
     API version:       1.39
     Go version:        go1.10.1
     Git commit:        2d0083d
     Built:             Wed Jul  3 12:13:59 2019
     OS/Arch:           linux/amd64
     Experimental:      false
    
    Server: Docker Engine - Community
     Engine:
      Version:          18.09.2
      API version:      1.39 (minimum version 1.12)
      Go version:       go1.10.6
      Git commit:       6247962
      Built:            Sun Feb 10 04:13:06 2019
      OS/Arch:          linux/amd64
      Experimental:     false
    

    refs:
    阿里云镜像
    安装 docker-compose