win10 linux子系统(WSL 2)ubuntu18.04安装docker18.06步骤

本文档介绍了如何在Windows子系统(WSL2)的Ubuntu18.04环境中安装Docker,包括添加Docker源、安装Docker-ce、启动Docker服务、处理常见错误等步骤,并提供了修改Docker默认数据目录的方法和错误解决方案。
摘要由CSDN通过智能技术生成

环境
操作系统:win10 linux子系统(WSL 2)Ubuntu 18.04.5 LTS
操作用户:安装WSL 2时创建的有sudo权限的普通用户

这种在windows子系统(WSL 2)中安装docker的方式对比window for docker有一个突出优点:不需要启动Hyper-v。这也就意味着linux子系统可以和VMware 15.5.5+、VirtralBox 6+之类的虚拟机一起使用(WSL 2 will work with VMware 15.5.5+ and VirtualBox 6+。这对一直在VMware、VirtralBox虚拟机中使用linux的用户很友好。当切换到linux子系统后,再也不用忍受虚拟机漫长的开机启动时间了。

1、添加docker源和对应的GPG密钥

中科大源镜像(推荐):

sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ $(lsb_release -cs) stable"

这句命令会在/etc/apt/sources.list 源文件中新增docker源地址,类似deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ bionic stable的语句
中科大源对应的GPG密钥安装命令:

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

这句命令会在/etc/apt/目录下创建trusted.gpg文件和trusted.gpg.d目录,目录中包含ubuntu-keyring-2012-archive.gpg、ubuntu-keyring-2012-cdimage.gpg、ubuntu-keyring-2018-archive.gpg三个密钥文件。

2、安装docker-ce

# 更新本地软件列表
sudo apt-get update
# 查询可安装的docker版本
sudo apt-cache show docker-ce|grep Version
# 当前(2021-02-19)最新版本为18.06.3~ce~3-0~ubuntu,指定安装该版本,需要40.4MB大小磁盘空间
sudo apt-get install docker-ce=18.06.3~ce~3-0~ubuntu

3、启动docker进程

windows子系统ubuntu18不支持systemctl,但可以使用service管理启动项。使用命令 sudo service docker start即可启动docker进程。如需免sudo访问docker可使用以下命令

# 查看docker用户组是否存在
sudo cat /etc/group | grep docker
# 把当前用户加入到docker用户组中
sudo usermod -aG docker $USER
# 查看当前用户是否在docker用户组中
cat /etc/group|grep docker
# 文件/var/run/docker.sock 新增docker用户组读写权限
sudo chmod a+rw /var/run/docker.sock

4、拉取测试镜像

sudo docker run hello-world

5、修改docker默认数据目录Docker Root Dir

参考这里

6、错误处理

1)错误:invoke-rc.d: could not determine current runlevel
解决:注释掉以下几行/var/lib/dpkg/info/docker-ce.prerm,然后重试。

if [ -x "/etc/init.d/docker" ]; then
       invoke-rc.d docker stop || exit 1
fi

2)错误:docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. See 'docker run --help'.
原因:docker进程未启动
解决:
a、用命令service --status-all 查看已注册的启动服务,找到docker。保证docker已注册到service中
b、用命令sudo service docker start启动

3)错误:Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.38/containers/json: dial unix /var/run/docker.sock: connect: permission denied
解决:docker命令需使用管理员权限执行,普通用户命令前添加sudo。也可以把当前用户添加到docker用户组中,参考【3、启动docker进程】中的命令。

4)错误:docker: Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout.
解决:替换国内docker源和重新安装对应的GPG密钥

附1:Docker官方镜像和GPG密钥

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

附2:Windows10开启linux子系统(WSL 2)相关文档:

https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#manual-installation-steps
https://my.oschina.net/somereasons/blog/3022420
https://docs.microsoft.com/en-us/windows/wsl/install-manual#download-using-powershell

参考:

1、https://www.cnblogs.com/wt7018/p/11880666.html
2、https://github.com/Microsoft/WSL/issues/2702
3、https://github.com/microsoft/WSL/issues/2288
4、https://www.cnblogs.com/forward/archive/2012/01/10/2318483.html
5、https://www.runoob.com/docker/ubuntu-docker-install.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Win10子系统UbuntuWSL安装Docker的教程(图文详解): 1. 首先,确保你已经将Win10子系统UbuntuWSL)正确安装并运行。 2. 打开Ubuntu终端,更新系统软件包列表,运行以下命令: ``` sudo apt-get update ``` 3. 接着,安装必要的软件包,运行以下命令: ``` sudo apt-get install apt-transport-https ca-certificates curl software-properties-common ``` 4. 添加Docker的官方GPG密钥,运行以下命令: ``` curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ``` 5. 添加Docker的官方软件库,运行以下命令: ``` echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ``` 6. 接下来,更新软件包列表,运行以下命令: ``` sudo apt-get update ``` 7. 现在,我们可以安装Docker了,运行以下命令: ``` sudo apt-get install docker-ce docker-ce-cli containerd.io ``` 8. 安装完成后,启动Docker服务,运行以下命令: ``` sudo service docker start ``` 9. 检查Docker是否成功安装,运行以下命令: ``` sudo docker run hello-world ``` 10. 如果你看到“Hello from Docker!”的文字,说明Docker已经成功安装并运行了。 以上就是在Win10子系统UbuntuWSL)上安装Docker的详细步骤。 希望这个图文教程能帮助到你。如需进一步了解Docker的使用和操作,请查阅官方文档和其他优质教程。 ### 回答2: 当您在Windows 10操作系统中使用WSLWindows Subsystem for Linux安装Ubuntu子系统时,您可以按照以下步骤安装Docker: 1. 打开Windows 10的设置应用程序,并选择"更新和安全"。 2. 在左侧导航栏中选择"开发人员选项"。 3. 在"使用开发人员功能的设备"部分,勾选"适用于LinuxWindows子系统"复选框,并点击"确定"。系统将要求您重新启动计算机。 4. 在启动后,打开Microsoft Store,并搜索"Ubuntu"。 5. 选择"Ubuntu"应用程序,并点击"获取"按钮以下载并安装Ubuntu。 6. 打开Ubuntu应用程序,并按照提示进行初始设置,包括创建用户名和密码。 7. 更新Ubuntu子系统的软件包列表,输入以下命令并按下回车键: ```shell sudo apt update ``` 8. 安装Docker软件包,输入以下命令并按下回车键: ```shell sudo apt install docker.io ``` 9. 安装完成后,启动Docker服务,输入以下命令并按下回车键: ```shell sudo systemctl start docker ``` 10. 您可以通过运行以下命令来验证Docker是否正确安装: ```shell sudo docker run hello-world ``` 如果您看到一个打印出"Hello from Docker!"的信息,那么Docker安装成功。 11. 如果您想使Docker服务在系统启动时自动启动,可以运行以下命令: ```shell sudo systemctl enable docker ``` 至此,您已成功在Windows 10的WSL安装Docker。现在,您可以在Ubuntu子系统中使用Docker运行容器来开发和部署应用程序。 ### 回答3: Win10子系统Ubuntu (WSL) 安装Docker教程(图文详解): 步骤1:打开Microsoft Store应用商店,搜索并安装Ubuntu步骤2:打开已安装Ubuntu终端。 步骤3:通过以下命令更新Ubuntu软件包列表: sudo apt update 步骤4:安装必要的依赖项: sudo apt install apt-transport-https ca-certificates curl software-properties-common 步骤5:添加Docker的官方GPG密钥: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg 步骤6:设置稳定版仓库: echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 步骤7:通过以下命令更新软件包列表使得Docker可用: sudo apt update 步骤8:安装Docker: sudo apt install docker-ce docker-ce-cli containerd.io 步骤9:验证安装是否成功: sudo docker run hello-world 步骤10:启动Docker服务并设置为开机启动: sudo systemctl enable docker sudo systemctl start docker 至此,在Win10子系统Ubuntu中已成功安装Docker。 请注意:WSL是一个用于在Windows系统中运行Linux环境的工具,并且Docker运行于Linux环境中。因此,通过WSL安装Docker实际上是运行在子系统中的,并不能直接与Windows环境中的Docker进行交互。要与Windows环境中的Docker进行交互,你需要安装适用于WindowsDocker版本。 希望以上步骤可以帮助你成功在Win10子系统Ubuntu安装Docker
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值