ubuntu16.04 安裝docker-ce,docker-compose


1 設置docker安裝源

 1.1 翻牆安裝

2020.0702 更新

參考https://www.cnblogs.com/wxxf/p/12976421.html

1 允許apt以https方式安裝

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

2 添加密鑰

翻牆,在瀏覽器中下載https://download.docker.com/linux/ubuntu/gpg  是1個文本文件,  隨便保存為docker_gpg

然后

sudo apt-key add ./docker_gpg

3設置安裝源 mint20

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

4 安裝

  sudo apt-get update
  sudo apt-get -y install docker-ce docker-ce-cli containerd.io

 

 

 

 2019.12.19更新

 

curl -sSL https://get.docker.com/ | sh

如果報 

+ sudo -E sh -c apt-get install -y -qq --no-install-recommends docker-ce >/dev/null
E: 無法修正錯誤,因為您要求某些軟件包保持現狀,就是它們破壞了軟件包間的依賴關系。

提示 docker-ce : 依賴: libseccomp2 (>= 2.3.0) 但是 2.2.3-3ubuntu3 正要被安裝

sudo aptitude install docker-ce

 

1.2 使用阿里雲安裝

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb https://mirrors.aliyun.com/docker-ce/linux/ubuntu bionic stable"
sudo apt install docker-ce

1.3 官網安裝 

20190904

官網  https://docs.docker.com/install/linux/docker-ce/ubuntu/

sudo add-apt-repository "deb https://download.docker.com/linux/ubuntu bionic stable"

 mint要刪掉 deb 后面的 [arch=amd64] 不然不會成功

 

 2018.11.14更新

參考https://blog.csdn.net/qq_38199832/article/details/77803645

sudo curl -sSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

如果報錯:

sudo xed /etc/resolv.conf

添加阿里的dns

nameserver  223.5.5.5
nameserver  223.6.6.6

就可以了

 

2配置docker-ce

sudo groupadd docker
sudo usermod -aG docker $USER newgrp - docker

 

修改默認image存儲路徑,否則默認在/var/lib/docker,一般我分區 除了swap,只給整個/掛載10G, 其他都給/home。

https://forums.docker.com/t/how-do-i-change-the-docker-image-installation-directory/1169/21 

創建文件:

sudo xed /etc/docker/daemon.json

添加如下內容:

{
"graph": "/home/docker"
}

重啟:

sudo service docker restart

 

docker info

 

 

看到新修改的路徑,大功告成

如果之前已經有了一些image。會被清光-_-!

不用移動了 sudo mv  /var/lib/docker /home/docker

 

#-----------------------

如果docker-info報錯

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.35/info: dial unix /var/run/docker.sock: connect: permission denied

根據要建立docker用戶組http://blog.csdn.net/baidu_36342103/article/details/69357438

重新

newgrp - docker

 

 3 安裝docker-compose

docker-compose是個python寫的命令行程序,可以直接pip安裝,也在github上有地址https://github.com/docker/compose,可以直接clone下來python setup.py install  安裝

3.1 用pip3安裝

python2漸漸不支持了,所以不再用python2來安裝了。

不論pip還是pip3, ubuntu都沒自帶需要安裝

所以先安裝python3-pip(這樣是給ubuntu18自帶的python3.6用的)

注意,這是python2.7的

sudo apt-get install -y python3-pip
sudo pip3 install setuptools
sudo pip3 install --upgrade pip

pip 前面要加sudo,否則安裝在當前用戶下,沒法用sudo安裝全局的包

最后直接pip安裝

sudo pip3 install docker-compose

 

3.2 官方安裝方式


sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

 今天忽然發現docker-compose這么安裝,第二個包死活下載不下來,也許是因為用到了aws服務器,但是因為開某大會給封了?真是瘋了。

千難萬險難不倒真XX黨X員(手動斜眼)。

 

如果pip沒裝。

那就先裝一下

 

 

老實說,不是很理解這種預裝python但是不給裝pip的行為。類似地。裝了python,不給裝dpkg。。。



#-----------------------------------------------------

如果pip 10報錯,根據這個修改:

https://stackoverflow.com/questions/28210269/importerror-cannot-import-name-main-when-running-pip-version-command-in-windo

/usr/bin/pip

from:

from pip import main
if __name__ == '__main__':
    sys.exit(main())

to this:

from pip import __main__
if __name__ == '__main__':
    sys.exit(__main__._main())

 

 4 其他

安裝 bridge-utils   不然沒法用brctl show 查看docker網絡

sudo apt install bridge-utils 

 

 

安裝好之后

docker run hello-world

網上很多安裝的是老版的lxc-docker

這個版本http://blog.csdn.net/anliven/article/details/72888053是對的,我把步驟去掉了,只保留腳本內容

 

為了在vscode里不用sudo執行docker命令


免責聲明!

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



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