docker的安裝使用及常用命令大全

2021-08-03 21:46:31 字數 4545 閱讀 2684

1.docker的安裝

1.1 前提條件

docker 執行在 centos 7 上,要求系統為64位、系統核心版本為 3.10 以上。

docker 執行在 centos-6.5 或更高的版本的 centos 上,要求系統為64位、系統核心版本為 2.6.32-431 或者更高版本。

docker 要求 centos 系統的核心版本高於 3.10 ,通過 uname -r 命令檢視你當前的核心版本 ,來驗證你的centos 版本是否支援 docker 。

[root@miwifi-r3-srv ~]# uname -r
1.2 使用yum安裝

docker 軟體包和依賴包已經包含在預設的 centos-extras 軟體源裡;

[root@miwifi-r3-srv ~]# yum install docker -y
1.3 啟動docker
[root@miwifi-r3-srv ~]# service docker start
1.4 測試執行 hello-world
[root@miwifi-r3-srv ~]# docker run hello-world
2.docker的常用命令

2.1 從阿里的docker hub查詢映象

[root@miwifi-r3-srv ~]# docker search centos
–automated :只列出 automated build型別的映象;

–no-trunc :顯示完整的映象描述;

-s :列出收藏數不小於指定值的映象。

2.2 拉取映象 docker pull 《映象名:tag>
[root@miwifi-r3-srv ~]# docker pull docker.io/ansible/centos7-ansible:latest
:latest : 表示最新版

2.3 列出本地映象
[root@miwifi-r3-srv ~]# docker images

repository tag image id created size

docker.io/ansible/centos7-ansible latest 688353a31fde 10 months ago 447.2 mb

-a :列出本地所有的映象(含中間映像層,預設情況下,過濾掉中間映像層);

–digests :顯示映象的摘要資訊;

-f :顯示滿足條件的映象;

–format :指定返回值的模板檔案;

–no-trunc :顯示完整的映象資訊;

-q :只顯示映象id。

2.4 建立乙個新的容器並執行乙個命令
[root@miwifi-r3-srv ~]# docker run --name centos-nginx01 -d 688353a31fde
-a stdin: 指定標準輸入輸出內容型別,可選 stdin/stdout/stderr 三項;

-d: 後台執行容器,並返回容器id;

-i: 以互動模式執行容器,通常與 -t 同時使用;

-t: 為容器重新分配乙個偽輸入終端,通常與 -i 同時使用;

–name=」nginx-lb」: 為容器指定乙個名稱;

–dns 8.8.8.8: 指定容器使用的dns伺服器,預設和宿主一致;

–dns-search example.com: 指定容器dns搜尋網域名稱,預設和宿主一致;

-h 「mars」: 指定容器的hostname;

-e username=」ritchie」: 設定環境變數;

–env-file=: 從指定檔案讀入環境變數;

–cpuset=」0-2」 or –cpuset=」0,1,2」: 繫結容器到指定cpu執行;

-m :設定容器使用記憶體最大值;

–net=」bridge」: 指定容器的網路連線型別,支援 bridge/host/none/container: 四種型別;

–link=: 新增鏈結到另乙個容器;

–expose=: 開放乙個埠或一組埠;

-p 80:80 : 將容器的80埠對映到主機的80埠;

-p : 將容器的80埠對映到主機隨機埠;

-v /data:/data : 主機的目錄/data對映到容器的/data;

2.5 列出容器
[root@miwifi-r3-srv ~]# docker ps -a

container

idimage

command

created

status

ports

names

e1e1f780dcc7 688353a31fde "/bin/bash"

8 minutes ago exited (0) 8 minutes ago centos-nginx01

-a :顯示所有的容器,包括未執行的。

-f :根據條件過濾顯示的內容。

–format :指定返回值的模板檔案。

-l :顯示最近建立的容器。

-n :列出最近建立的n個容器。

–no-trunc :不截斷輸出。

-q :靜默模式,只顯示容器編號。

-s :顯示總的檔案大小。

2.6 從容器建立乙個新的映象->儲存對容器的修改

將容器e1e1f780dcc7 儲存為新的映象,並新增提交人資訊和說明資訊。

[root@miwifi-r3-srv ~]# docker commit -a "luxiaofeng" -m "test-images" e1e1f780dcc7 mycentos7:v1
-a :提交的映象作者;

-c :使用dockerfile指令來建立映象;

-m :提交時的說明文字;

-p :在commit時,將容器暫停。

2.7 獲取容器/映象的元資料
[root@miwifi-r3-srv ~]# docker inspect 688353a31fde
-f :指定返回值的模板檔案。

-s :顯示總的檔案大小。

–type :為指定型別返回json。

2.8 獲取正在執行的容器的 ip
[root@miwifi-r3-srv ~]# docker inspect --format='}}

}'

2.9 start/stop/restart 命令
docker start :啟動乙個或多少已經被停止的容器

docker stop :停止乙個執行中的容器

docker restart :重啟容器

2.10 刪除乙個或多少容器
[root@miwifi-r3-srv ~]# docker rm -f e1e1f780dcc7
-f :通過sigkill訊號強制刪除乙個執行中的容器

-l :移除容器間的網路連線,而非容器本身

-v :-v 刪除與容器關聯的卷

2.11 刪除本地乙個或多少映象
[root@miwifi-r3-srv ~]# docker rmi -f 688353a31fde
-f :強制刪除;

–no-prune :不移除該映象的過程映象,預設移除;

2.12 docker開機啟動:
systemctl enable docker
2.13 容器開機啟動:
docker run --restart=always --name first-mysql

-p3306:3306

-e mysql\_root\_password=

123456

-d mysql:latest

–restart :引數來設定容器開機啟動。

no-container:不重啟

on-failure-container:退出狀態非0時重啟

always:始終重啟

至此,整個docker的安裝使用已完成啦!

關注我: ☛

Docker安裝使用及常用命令

概念 映象 image 容器 container 倉庫 repository 官網 文件庫 映象倉庫 刪除舊版本 sudo yum remove docker docker common container selinux docker selinux docker engine 安裝部分工具包 新...

Docker安裝及常用命令

docker 是乙個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到乙個可移植的容器中,然後發布到任何流行的linux機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。docker 最初是 dotcloud 公司創始人 solomon hykes 在法國期間發起的乙...

docker安裝及常用命令

docker安裝最新版 最新版docker安裝,可能會涉及到fq,所以加入google host docker的連線工具 1 sudo apt install gcc 2 sudo apt install make 3 wget tar xzvf util linux 2.24.tar.gz 4 c...