安裝 WSL2、Ubuntu 及 docker(詳細步驟)


本文鏈接:https://www.cnblogs.com/tujia/p/13438639.html

 

一、更新Windows版本

WSL 2 隨着 Windows build 19041 而推出,能更好的兼容 docker,如果你的電腦版本低於 19041,請先升級更新 Windows

注:如果你已經有WSL 2了,可以直接跳過步驟一、二、三。

 

查看版本及升級方法:

1)查看 Windows 版本的方法:Windows+r,運行 winver

 2)升級方法

訪問:https://www.microsoft.com/zh-cn/software-download/windows10,點擊“立即更新”,下載 Windows10Upgrade.exe,雙擊運行即可

更新完之后,可以根據個人情況決定要不要刪掉 C:\Windows.old 文件夾及卸載 windows 10 易升 程序

 

二、啟用 VirtualMachinePlatform 組件

windows+x+a 打開 PowerShell ,輸入以下命令啟用 VirtualMachinePlatform(虛擬機平台)組件

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

保守起見,你也可以同時啟用 Hyper-V 組件,官方的文檔里沒說要啟用它

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

注:啟用組件之后,需要重啟電腦才會生效

 

三、啟動 wsl 2

注:如果你還沒有安裝過wsl linux 子系統,則先要開啟wsl功能, 在 PowerShell 中執行下面命令,然后重啟電腦即可

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

 

可以先用 wsl -l -v 來查看當前的wsl版本。如果顯示的是版本是1,則執行 wsl --set-default-version 2 來設置默認版本;

如果提示“錯誤: 0x1bc”或其他異常,可以試試更新 wsl linux內核版本

傳送門:https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-kernel,下載 wsl_update_x64.msi 程序並安裝

 

更新已有分發版本設置為 WSL 2

# 查看已有linux分發版本
wsl --list --verbose
# 設置分發版本為 wsl 2
wsl --set-version <distribution name> <versionNumber>

 

注:如果 --set-version 2之后,wsl -l -v 還是顯示1的話,只能卸載重裝 ubuntu了 

 

參考鏈接: 

https://docs.microsoft.com/zh-cn/windows/wsl/install-win10

https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-kernel

 

四、啟動 ubuntu

win+q 搜索 ubuntu,選擇以管理員身份運行

注:如果啟動 ubuntu 時報錯誤:“WslRegisterDistribution failed with error: 0x80370102”,那就是還沒啟動BIOS 虛擬化功能,修改BIOS配置的方法請自動百度(一般是開機按F2) 

 

 

排查wsl 2安裝相關問題:https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#troubleshooting-installation

 

鏡像加速:https://www.runoob.com/docker/docker-mirror-acceleration.html

 


 

五、安裝 docker

網上的安裝教程很多很亂

最好用官網的安裝教程!!

最好用官網的安裝教程!!

最好用官網的安裝教程!!

傳送門:https://docs.docker.com/engine/install/ubuntu/#installation-methods

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
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!!!!(否則可能會有一堆bug等着你)

先運行如下命令,看一下有哪些包適合自己的系統的

apt-cache madison docker-ce
apt-cache madison docker-ce-cli

然后,選一個較低的版本安裝即可,例如:

sudo apt-get install docker-ce=5:19.03.9~3-0~ubuntu-focal docker-ce-cli=5:19.03.9~3-0~ubuntu-focal containerd.io

 

安裝過程常見錯誤:

1)如果報錯誤:sleep: cannot read realtime clock: Invalid argument,則

sudo mv /bin/sleep /bin/sleep~
touch /bin/sleep
chmod +x /bin/sleep

2)如果報錯誤:gpg: can't connect to the agent: IPC connect call failed,則

sudo apt remove gpg
sudo apt-get update -y
sudo apt-get install -y gnupg1

如果還是不行,則

wget https://launchpad.net/~rafaeldtinoco/+archive/ubuntu/lp1871129/+files/libc6_2.31-0ubuntu8+lp1871129~1_amd64.deb
sudo dpkg --install libc6_2.31-0ubuntu8+lp1871129~1_amd64.deb
sudo apt-mark hold libc6 #to avoid further update

3)如果報錯誤:sudo: add-apt-repository: command not found,則

sudo apt install software-properties-common

 

六、docker 用戶組

安裝完之后,一般會提示

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker tiac

Remember that you will have to log out and back in for this to take effect!

注:意思是說,你好像不是用root來安裝的docker的,需要添加當前用戶到docker用戶組;tiac是我的用戶名,換成自己的用戶名就好

sudo usermod -aG docker your_name

 

七、啟動 docker

啟動 docker 服務

sudo service docker start

啟動之后,看一下服務狀態

sudo service docker status

如果提示“Docker is not running”,則關掉 ubuntu,以管理員身份重啟 ubuntu

 啟動后,重新執行一下

sudo service docker start
sudo service docker status

如果顯示“Docker is running”,則基本沒什么問題了,如果還有錯,請參考下面步驟八

 

八、docker 測試

sudo docker run hello-world

如果提示“docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.”,則

sudo usermod -aG docker $USER
sudo usermod -g docker $USER
sudo service docker restart

如果pull超時,則更換 docker hub鏡像地址

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

詳情:https://www.daocloud.io/mirror#accelerator-doc

 

排除所有異常,最后效果(為了這個Hello World 不容易啊...)

 

 

 

總結:

1)windows 內部版本要升級到19041(或更高版本);

2)升級wsl1到wsl2(開啟 VirtualMachinePlatform),wsl --set-default-version 2;

3)BIOS開戶cpu虛擬化功能,Intel Virtualization Technology : Enable;

4)以管理員身份啟動 ubuntu;

5)看docker官方的安裝教程

6)不要安裝最新版本docker

 

本文鏈接:https://www.cnblogs.com/tujia/p/13438639.html


 完。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM