安裝 Docker CE 有多種方法铃芦,下面是最簡單的通過Docker倉庫的安裝方法吭练,其他方法參見官方文檔。
設(shè)置倉庫
-
刷新軟件包
sudo apt-get update
-
安裝必要的軟件包
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common
-
添加 Docker 官方 GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
驗(yàn)證指紋是否為
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
, 可以通過搜索指紋的后8位來進(jìn)行驗(yàn)證蒿涎。sudo apt-key fingerprint 0EBFCD88 result: pub rsa4096 2017-02-22 [SCEA] 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 uid [ unknown] Docker Release (CE deb) <docker@docker.com> sub rsa4096 2017-02-22 [S]
-
使用下面的命令添加 穩(wěn)定版 倉庫
sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
安裝 Docker CE
-
刷新軟件包
sudo apt-get update
-
安裝最新版的 docker ce 和 containerd
sudo apt-get install docker-ce docker-ce-cli containerd.io
-
通過運(yùn)行
hello-world
鏡像來驗(yàn)證是否安裝成功sudo docker run hello-world
Docker CE 安裝完成后穿撮,會(huì)建立 docker
用戶組缺脉,但是沒有用戶分配,所以需要通過 sudo
來運(yùn)行 Docker 命令悦穿。
其他設(shè)置
國內(nèi)容器鏡像加速
使用加速器可以提升獲取Docker官方鏡像的速度攻礼,下面使用阿里云鏡像進(jìn)行加速。
通過修改daemon配置文件/etc/docker/daemon.json
來使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://jjzi6741.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
使用非 root 用戶管理運(yùn)行 Docker
參考鏈接
Docker 守護(hù)進(jìn)程綁定在 Unix socket 而不是 TCP 端口栗柒。默認(rèn)情況下 Unix socket 歸屬于 root
用戶礁扮,其他用戶只能通過 sudo
命令訪問。所以 Docker 守護(hù)進(jìn)程總是以 root
用戶來運(yùn)行瞬沦。
如果你不希望每次運(yùn)行 docker
命令時(shí)在前面加上 sudo
太伊,你可以創(chuàng)建一個(gè) docker
用戶組并把用戶加進(jìn)去。當(dāng) Docker 守護(hù)進(jìn)程啟動(dòng)時(shí)逛钻,會(huì)創(chuàng)建一個(gè) Unix socket 供 docker
用戶組成員訪問僚焦。
警告
docker
用戶組成員和root
用戶有相同的權(quán)限,請(qǐng)查看 Docker Daemon Attack Surface 以了解更多關(guān)于系統(tǒng)安全的影響曙痘。
創(chuàng)建 docker
用戶組并添加你的用戶
-
創(chuàng)建
docker
用戶組sudo groupadd docker
-
添加你的用戶到
docker
用戶組sudo usermod -aG docker $USER
重新登錄以試權(quán)限生效芳悲。
-
驗(yàn)證是否可以不使用
sudo
命令來運(yùn)行docker
docker run hello-world
這個(gè)命令會(huì)下載一個(gè) test 鏡像并在容器中運(yùn)行。運(yùn)行完成后屡江,會(huì)顯示歡迎信息并退出芭概。
如果你在把用戶加到
docker
用戶組之前使用了sudo
運(yùn)行過 Docker 命令,可能會(huì)遇到下面的錯(cuò)誤提示惩嘉,是因?yàn)?~/.docker/
權(quán)限不對(duì)導(dǎo)致的罢洲。WARNING: Error loading config file: /home/user/.docker/config.json - stat /home/user/.docker/config.json: permission denied
解決這個(gè)問題,可以通過刪除
~/.docker/
目錄(自定義設(shè)置會(huì)丟失),或者用下面的命令來更改權(quán)限惹苗。sudo chown "$USER":"$USER" /home/"$USER"/.docker -R sudo chmod g+rwx "$HOME/.docker" -R
安裝 Docker Compose
參考鏈接
在 Linux 系統(tǒng)殿较,可以通過 Compose repository release page on GitHub 來下載 Docker Compose 二進(jìn)制文件。
對(duì)于
alpine
系統(tǒng)桩蓉,需要安裝以下依賴包:py-pip
,python-dev
,libffi-dev
,openssl-dev
,gcc
,libc-dev
make
-
運(yùn)行下面命令下載最新穩(wěn)定版 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
下載不同的版本淋纲,更改命令中的版本號(hào)即可。
-
給文件加上可執(zhí)行權(quán)限
sudo chmod +x /usr/local/bin/docker-compose
注意: 如果安裝后執(zhí)行
docker-compose
失敗院究,請(qǐng)檢查PATH
變量洽瞬。亦可以建立軟連接。
比如:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
(可選), 為
bash
和zsh
安裝 command completion 业汰。-
驗(yàn)證安裝是否成功
$ docker-compose --version docker-compose version 1.24.0, build 1110ad01
更多技術(shù)文章伙窃,請(qǐng)?jiān)L問我的個(gè)人網(wǎng)站:https://www.codingbit.net