1拥诡、卸載舊版本的Docker
舊版本的Docker被稱作docker或者docker-engine嘁字,Docker CE(社區(qū)版)包現(xiàn)在被叫做docker-ce码倦。如果之前安裝過了咽块,需要先卸載:
apt-get remove docker docker-engine docker.io
2.1?更新apt安裝包索引
apt-get update
復(fù)制代碼2.2?安裝軟件包以允許apt通過HTTPS
sudo apt-get install apt-transport-https??ca-certificates curl software-properties-common
復(fù)制代碼2.3?添加Docker官方的GPG密鑰
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
復(fù)制代碼2.4?安裝穩(wěn)定版?zhèn)}庫(kù)
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get install docker.io #安裝docker
3 通過運(yùn)行hello-world鏡像驗(yàn)證Docker已被正確安裝
docker run hello-world
注意:這個(gè)時(shí)候可能會(huì)出現(xiàn)無法連接的情況,這是由于國(guó)內(nèi)訪問Docker Hub不穩(wěn)定腻惠,運(yùn)用下面的命令配置我們的鏡像加速器环肘。
編輯下面文件,修改一行代碼(增加黃色高亮部分)集灌,如下:
sudo vim /lib/systemd/system/docker.service
復(fù)制代碼修改的行改如下:
ExecStart=/usr/sbin/dockerd -H fd://? ?--registry-mirror=https://registry.docker-cn.com
輸入以下命令后注銷并重新登錄:
sudo systemctl daemon-reload
sudo systemctl restart docker
復(fù)制代碼
再次運(yùn)行hello-world:
sudo docker run hello-world
復(fù)制代碼
若出現(xiàn)以下信息則表明安裝成功:
ps:ubantu?以非root用戶身份管理Docker
docker守護(hù)程序綁定到一個(gè)Unix套接字而不是TCP端口悔雹。默認(rèn)情況下,Unix套接字由用戶擁有root绝页,其他用戶只能使用它來訪問它sudo荠商。
該docker守護(hù)進(jìn)程始終運(yùn)行的root用戶。如果不想在運(yùn)行docker命令時(shí)使用sudo续誉,需要?jiǎng)?chuàng)建一個(gè)名為docker的Unix Group向其中添加用戶莱没。
當(dāng)docker守護(hù)進(jìn)程啟動(dòng)時(shí),它使得Unix套接字的所有權(quán)可以被docker組讀/寫酷鸦。
同時(shí)也解決docker-compose up -d 問題
ERROR: Couldn’t connect to Docker daemon at http+docker://localunixsocket - is it running?
If it’s at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
4.1創(chuàng)建docker組并添加用戶
4.1.1 創(chuàng)建docke組
sudo groupadd docker
復(fù)制代碼說明: 若docker安裝時(shí)此組已創(chuàng)建好了饰躲,此步可以忽略
4.1.2 將自己的用戶添加到docker組中
? ?假設(shè)用戶名為:myEdgex
sudo usermod -aG docker myEdgex??
復(fù)制代碼
? ?4.1.3??注銷并重新登陸以重新驗(yàn)證組成員關(guān)系。
? ?? ?如果在虛擬機(jī)上進(jìn)行測(cè)試臼隔,則可能需要重新啟動(dòng)虛擬機(jī)才能使更改生效嘹裂。
? ???sudo service docker restart
然后退出當(dāng)前用戶比如切換為root,再次切換為用戶名
sudo su
su myEdgex
復(fù)制代碼
4.1.4 驗(yàn)證不需要sudo運(yùn)行docker命令
docker run hello-world
4.2 配置Docker在系統(tǒng)啟動(dòng)時(shí)啟動(dòng)
systemctl enable docker
復(fù)制代碼
5摔握、安裝docker-compose
5.1 下載最新版本的docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
5.2 更改二進(jìn)制文件的權(quán)限寄狼,使其能夠運(yùn)行
sudo chmod +x /usr/local/bin/docker-compose
5.3 測(cè)試安裝
docker-compose --version
sudo docker ps #列出當(dāng)前正在運(yùn)行的容器
sudo docker attach a40cc085c83d #進(jìn)入當(dāng)前容器