最近因為python爬蟲學(xué)習(xí)要借助Splash進(jìn)行js渲染服務(wù)嚎于,Splash又要使用到Docker,而我卻沒有l(wèi)inux系統(tǒng)的電腦挟冠,只能借助于WSL匾旭。為了安裝Docker,一直報錯圃郊,一直重裝价涝,筆者也是煞費苦心,熬了幾天才完美的安裝持舆。
如果還沒安裝好WSL的請點擊以下連接去查看教程色瘩。
WSL的完美安裝教程:WSL完整安裝教程
Step 1、在Windons10下安裝和設(shè)置Docker Desktop
Docker官方下載地址:https://www.docker.com/get-started
但是快速的完成了安裝逸寓!
啟動后一堆的通知
下面的這4步操作根據(jù)自己需要來操作吧居兆,因為筆者還沒有建立鏡像倉庫,這里就不多做解釋
我這里先跳過竹伸,然后打開設(shè)置
操作完成后關(guān)閉窗口
Step 2泥栖、常規(guī)操作更新一下系統(tǒng)
打開Powershell輸入wsl或者bash都可以進(jìn)入ubuntu20.04更新一下
sudo apt-get update
Step 3、安裝一下https服務(wù)CA證書
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
Step 4勋篓、通過安裝GPG證書
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Step 5吧享、寫入軟件源信息
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Step 6、更新并安裝Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
這一步報了2個錯譬嚣,我重新在安裝一下又沒有問題了钢颂,我就沒管他了,但是后來發(fā)現(xiàn)了原來不能用非官方的源去下載證書拜银。
- 附加:后面如果要安裝指定版本的Docker-CE用以下命令*
- apt-cache madison docker-ce*
- [VERSION]改成上面查詢可安裝的版本殊鞭,見下圖*
- sudo apt-get -y install docker-ce=[VERSION]*
Step 7:查看一下docker的信息
sudo cgroupfs-mount
sudo service docker start
docker version
Step 8:增加國內(nèi)源遭垛,使用加速服務(wù)
這里需要到阿里云注冊一個賬號來使用鏡像加速器
阿里云容器鏡像服務(wù),阿里云的需要注冊操灿,其他的不需要锯仪,直接粘貼過去就好
中科大
https://docker.mirrors.ustc.edu.cn
網(wǎng)易
http://hub-mirror.c.163.com
sudo vi /etc/docker/daemon.json
按下 a 進(jìn)行編輯把地址復(fù)制粘貼過去,然后Esc
輸入 :wq
保存退出
重啟一下docker
sudo service docker restart
Step 9:運行一下hello-world
sudo docker run --rm hello-world
到這他給我報錯了個錯docker: Error response from daemon: cgroups: cannot find cgroup mount destination: unknown.
,好在找到解決辦法了,如下:
sudo mkdir /sys/fs/cgroup/systemd
sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd
然后在重新執(zhí)行
sudo docker run --rm hello-world
問題解決
Step 10:拉一下Splash鏡像
sudo docker pull scrapinghub/splash
這個過程非常久趾盐,有2個G的大小,會時慢時快
Step 11:啟動Splash服務(wù)
sudo docker run -it -p 8050:8050 --rm scrapinghub/splash
Last Step:檢查一下Splash是否能夠運行
在任意瀏覽器上輸入
localhost:8050
引用相關(guān)的帖子:
解決docker: Error response from daemon: cgroups: cannot find cgroup mount destination: unknown.的原鏈接
在安裝證書的時候庶喜,我一開始是用的阿里源教程的方法,后來拉Splash鏡像的時候報錯了谤碳,我又回頭把官方安裝證書的命令執(zhí)行了一遍溃卡,感覺這是WSL的BUG,沒有辦法跟正常的linux系統(tǒng)去執(zhí)行蜒简。
提示我使用官方證書的地址