Docker安裝和使用

鏈接

Docker 使用教程
Docker Hub
鏡像加速器
Docker 問答錄(100 問)
Docker 中文文檔

CentOS安裝Docker

使用 yum 安裝

執(zhí)行以下命令安裝依賴包:

$ sudo yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2

鑒于國內(nèi)網(wǎng)絡問題,強烈建議使用國內(nèi)源,官方源請在注釋中查看。

執(zhí)行下面的命令添加 yum 軟件源:

$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

# 官方源
 $ sudo yum-config-manager \
     --add-repo \
     https://download.docker.com/linux/centos/docker-ce.repo

如果需要測試版本的 Docker CE 請使用以下命令:

$ sudo yum-config-manager --enable docker-ce-test

如果需要每日構建版本的 Docker CE 請使用以下命令:

$ sudo yum-config-manager --enable docker-ce-nightly

安裝 Docker CE

更新 yum 軟件源緩存,并安裝 docker-ce

$ sudo yum makecache fast
$ sudo yum install docker-ce

使用腳本自動安裝

在測試或開發(fā)環(huán)境中 Docker 官方為了簡化安裝流程,提供了一套便捷的安裝腳本,CentOS 系統(tǒng)上可以使用這套腳本安裝:

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun

執(zhí)行這個命令后,腳本就會自動的將一切準備工作做好,并且把 Docker CE 的 Edge 版本安裝在系統(tǒng)中。

啟動 Docker CE

$ sudo systemctl enable docker
$ sudo systemctl start docker

建立 docker 用戶組

默認情況下,docker 命令會使用 Unix socket 與 Docker 引擎通訊。而只有 root 用戶和 docker 組的用戶才可以訪問 Docker 引擎的 Unix socket。出于安全考慮,一般 Linux 系統(tǒng)上不會直接使用 root 用戶。因此,更好地做法是將需要使用 docker 的用戶加入 docker 用戶組。

建立 docker 組:

$ sudo groupadd docker

將當前用戶加入 docker 組:

$ sudo usermod -aG docker $USER

退出當前終端并重新登錄,進行測試。

鏡像加速

鑒于國內(nèi)網(wǎng)絡問題,后續(xù)拉取 Docker 鏡像十分緩慢,強烈建議安裝 Docker 之后配置 國內(nèi)鏡像加速。

常用命令

$ sudo service docker start 啟動Docker

鏡像操作

列出鏡像 $ docker image ls
鏡像體積 $ docker system df
刪除鏡像 $ docker image rm [選項] <鏡像1> [<鏡像2> ...]

容器操作

docker ps 查看正在運行的容器
docker ps -a 查看所有容器
docker cp myNginx:/etc/nginx/nginx.conf ./nginx.conf 復制容器中的文件到指定目錄
docker run創(chuàng)建并啟動
例如:
$ docker run -t -i ubuntu:14.04 /bin/bash

-t 選項讓Docker分配一個偽終端(pseudo-tty)并綁定到容器的標準輸入上, -i 則讓容器的標準輸入保持打開。

--rm:這個參數(shù)是說容器退出后隨之將其刪除。默認情況下,為了排障需求,退出的容器并不會立即刪除,除非手動 docker rm。我們這里只是隨便執(zhí)行個命令,看看結(jié)果,不需要排障和保留結(jié)果,因此使用 --rm 可以避免浪費空間。
ubuntu:16.04:這是指用 ubuntu:16.04 鏡像為基礎來啟動容器。
bash:放在鏡像名后的是命令,這里我們希望有個交互式 Shell,因此用的是 bash。
如果使用了 -d 參數(shù)運行容器,此時容器會在后臺運行并不會把輸出的結(jié)果 (STDOUT) 打印到宿主機上面(輸出結(jié)果可以用 docker logs 查看)。
注: 容器是否會長久運行,是和 docker run 指定的命令有關,和 -d 參數(shù)無關。
-p 則可以指定要映射的端口,并且,在一個指定端口上只可以綁定一個容器
-v 指定數(shù)據(jù)卷
docker container logs 容器ID 獲取容器的輸出信息
docker container stop 容器ID 終止一個運行中的容器
docker container ls -a 容器ID 查看所有容器
docker container start 容器ID 啟動終止態(tài)的容器
docker container restart 容器ID 重啟容器
docker attach 容器ID 進入容器,如果從這個 stdin 中 exit,會導致容器的停止。
docker exec -it 容器ID bash 進入容器,exit退出后不會導致容器關閉。
docker container rm 容器ID 刪除容器,-v 同時刪除數(shù)據(jù)卷
docker container prune 清楚所有處于終止態(tài)的容器
docker inspect web 查看數(shù)據(jù)卷的具體信息
docker volume prune 刪除無主數(shù)據(jù)卷

docker-compose安裝和卸載

例如,在 Linux 64 位系統(tǒng)上直接下載對應的二進制包。

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

$ sudo rm /usr/local/bin/docker-compose 卸載

設置容器開機啟動

1.創(chuàng)建新容器時設置
sudo docker run --restart=always .....
2.更新已有容器的設置 xxx為容器名
docker update --restart=always xxx
參考鏈接:
容器開機自動啟動
Docker update更新容器配置

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 《Docker從入門到實踐》閱讀筆記 原書地址: https://yeasy.gitbooks.io/docker...
    GuoYuebo閱讀 11,641評論 1 39
  • 一.docker 是什么: 2.安裝docker 系統(tǒng):ubuntu16.04 使用腳本自動安裝 Docker 官...
    Black_Sun閱讀 2,252評論 0 2
  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一、Docker 簡介 Docke...
    極客圈閱讀 10,744評論 0 120
  • 關關雎鳩,在河之洲;窈窕淑女,君子好逑…… 追求心儀的女子,在古人看來也是極其正常的事,但卻有一個前提“君子”,然...
    云深老松閱讀 292評論 0 0
  • 今天辦公室開會,主要內(nèi)容就是線上銷售的發(fā)展方向,明確了與銷售相關的各部門的運行方法,清楚的知道了實現(xiàn)個人價值主義的...
    王德彪閱讀 101評論 0 2

友情鏈接更多精彩內(nèi)容