docker 環境搭建、docker 與容器常用指令大全(推薦)

一、Docker 環境搭建

1. 準備工作(已有 Linux 環境可省略)

在這裡我們用 VM 虛擬機 +CentOS 的環境進行 Docker 部署(建議使用 CentOS 7 以上版本)。

首先準備一臺 CentOS 系統的虛擬機,可以看到主機的 IP 地址為 192.168.200.129;

為瞭更加直觀,我將使用 Xhell 7 連接虛擬機進行操作演示;

2. 安裝 Docker

第一步:yum 包更新到最新;

//更新yum
sudo yum update

第二步:安裝需要的軟件包,yum-util(提供 yum-config-manager 功能),device-mapper-persistent-datalvm2(devicemapper 驅動依賴);

//安裝需要的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

第三步:設置 yum 源為阿裡雲;

//設置阿裡雲源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

第四步:安裝 Docker;

//安裝docker
sudo yum install docker-ce

第五步:檢查 Docker 版本;

//檢查 docker 版本
docker -v

使用 docker -v 命令可以查看到版本號即說明安裝成功。

3. 設置 ustc 鏡像

Docker 安裝完成之後還需要執行一個操作那就是設置國內鏡像站點,否則 Docker 中下載操作會很慢。

ustc 是老牌 Linux 鏡像服務提供者,它的 Docker 加速器速度很快,而且不需要註冊,是真正的公共服務。

需要註意的是在設置之前要先啟動 docker 服務,如果不啟動服務就編輯 .json 文件是無法正常保存的,因為它無法找到 Docker 進程。啟動 Docker 服務使用指令:

service docker start

然後 vi 進入文件 /etc/docker/daemon.json,在文件中添加以下內容;

{
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

退出保存即可。

二、Docker/容器操作命令匯總

1. Docker 操作命令

systemctl start docker //啟動 Docker;

systemctl stop docker //停止 Docker;

systemctl restart docker //重啟 Docker;

systemctl status docker //查看 Docker 狀態;

systemctl enable docker //開機自啟動 Docker;

docker info //查看 Docker 概要信息;

docker –help //查看 Docker 幫助文檔;

2. 鏡像相關命令

docker images //查看鏡像(這些鏡像都存儲於 /var/lib/docker 目錄下)

  • repository – 鏡像名稱;
  • tag – 鏡像標簽;
  • image id – 鏡像 id;
  • created – 鏡像的創建日期;

size – 鏡像的大小;

docker search 鏡像名稱 //搜索鏡像,從網絡查找需要的鏡像

  • name – 倉庫名稱;
  • description – 鏡像描述;
  • stars – 用戶評價,反映該鏡像的受歡迎程度;
  • official – 是否官方;

automated – 自動構建,表示該鏡像是由 Docker Hub 自動構建流程創建的。

docker pull 鏡像名稱 //拉取鏡像,從中央倉庫下載鏡像到本地

如下載 centos 7 鏡像:

docker rmi 鏡像ID //刪除鏡像,可根據鏡像 ID 也可根據鏡像名稱

docker rmi `docker images -q` //刪除所有鏡像

3. 查看容器

docker ps //查看容器

docker ps -a //查看所有容器

docker ps -l //查看最後一次運行的容器

docker ps -f statu=exited //查看停止的容器

4. 創建容器

docker run

docker run 參數

包含參數如下:

  • -i 運行容器
  • -t 容器啟動後自動進入其命令行
  • –name 為創建的容器命名
  • -v 表示目錄映射關系,前者為宿主機目錄,後者是映射到宿主機上的目錄
  • -d 加瞭這個參數則會創建一個守護式容器在後臺運行(這樣創建容器後不會自動登錄容器)

-p 表示端口映射,前者為宿主機端口,後者是容器內的映射端口

常用創建容器的方式為交互式創建容器和守護式創建容器,如下:

//交互式創建容器
docker run -it --name=容器名稱 鏡像名稱:標簽 /bin/bash
//退出當前容器
exit
//守護式創建容器
docker run -di --name=容器名稱 鏡像名稱:標簽
//登錄守護式容器
docker exec -it 容器名稱/ID /bin/bash

5. 停止與啟動容器

docker stop 容器名稱/ID //停止容器

docker start 容器名稱/ID //啟動容器

6. 文件掛載

docker cp 需要拷貝的文件/目錄 容器名稱:目錄 //將文件拷貝到容器內

docker cp 容器名稱:目錄 需要拷貝的文件/目錄 //將文件從容器拷貝出來

7. 目錄掛載

在創建容器時,我們可以將宿主機的目錄與容器內的目錄進行映射,這樣就可以通過修改宿主機的目錄文件從而直接影響容器瞭。

docker run -di -v 宿主機目錄:容器目錄–name=容器名稱 鏡像名稱:標簽

如果共享多級的目錄,可能會出現權限不足的提示。這是由於 CentOS 7 中的安全模塊 selinux 將權限禁止瞭,這時候可以添加參數 –privileged=true 來解決此問題。

8. 查看容器 IP 地址

docker inspect 容器名稱/ID //查看容器 ip 以及相關的各種數據

docker inspect –format='{{.NetworkSettings.IPAddress}}' 容器名稱/ID //查看容器 ip 地址並輸出

9. 刪除容器

docker rm 容器名稱/ID //刪除指定的容器

需要註意的是如果想要刪除一個容器,需要先停止該容器;且如果鏡像中有運行狀態的容器,也是無法刪除容器的。

到此這篇關於docker 環境搭建、docker 與容器常用指令大全的文章就介紹到這瞭,更多相關docker容器常用指令內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: