指令 |
說明 |
docker run [容器 CONTAINER ID] |
創建一個新的容器並運行一個命令 |
docker start [容器 CONTAINER ID] |
啟動一個或多個已經被停止的容器 |
docker stop [容器 CONTAINER ID] |
停止一個運行中的容器 |
docker restart [容器 CONTAINER ID] |
重啟容器 |
docker kill [容器 CONTAINER ID] |
殺掉一個運行中的容器 |
docker rm [容器 CONTAINER ID] |
刪除一個或多少容器 -f:通過SIGKILL信號強制刪除一個運行中的容器 -l:移除容器間的網絡連接,而非容器本身 -v:刪除與容器關聯的卷 |
docker pause [容器 CONTAINER ID] |
暫停容器中所有的進程 |
docker unpause [容器 CONTAINER ID] |
恢復容器中所有的進程 |
docker create |
創建一個新的容器但不啟動它 |
docker exec [容器 CONTAINER ID] |
在運行的容器中執行命令 |
docker ps [OPTIONS] |
-a :顯示所有的容器,包括未運行的。 -f :根據條件過濾顯示的內容。 --format :指定返回值的模板文件。 -l :顯示最近創建的容器。 -n :列出最近創建的n個容器。 --no-trunc :不截斷輸出。 -q :靜默模式,只顯示容器編號。 -s :顯示總的文件大小 |
docker inspect [容器 CONTAINER ID] |
獲取容器/鏡像的元數據。 -f :指定返回值的模板文件。 -s :顯示總的文件大小。 --type :為指定類型返回JSON。 |
docker top [容器 CONTAINER ID] |
查看容器中運行的進程信息,支持 ps 命令參數。 |
docker attach [容器 CONTAINER ID] |
連接到正在運行中的容器。 |
docker events [OPTIONS] |
-f :根據條件過濾事件; --since :從指定的時間戳后顯示所有事件; --until :流水時間顯示到指定的時間為止; docker events --since="2018-11-15" |
docker logs [OPTIONS] [容器 CONTAINER ID] |
參數 -f : 跟蹤日志輸出 --since :顯示某個開始時間的所有日志 -t : 顯示時間戳 --tail :僅列出最新N條容器日志 跟蹤查看容器nginx的日志輸出 [root@test-2 ~]# docker logs -f 8a4317175b4e 172.17.0.1 - - [15/Nov/2018:10:04:45 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.29.0" "-" 172.17.0.1 - - [15/Nov/2018:10:04:55 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.29.0" "-" 查看容器nginx從2018年11月15日后的最新1條記錄 [root@test-2 ~]# docker logs --since="2018-11-15" --tail=1 8a4317175b4e |
docker wait [容器 CONTAINER ID] |
阻塞運行直到容器停止,然后打印出它的退出代碼。 |
docker export [OPTIONS][容器 CONTAINER ID] |
將文件系統作為一個tar歸檔文件導出到STDOUT。 docker export -o mysql-`date +%Y%m%d`.tar a404c6c174a2 |
docker port [容器 CONTAINER ID] |
列出指定的容器的端口映射,或者查找將PRIVATE_PORT NAT到面向公眾的端口。 |
docker commit |
從容器創建一個新的鏡像。 語法: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] options說明 -a :提交的鏡像作者; -c :使用Dockerfile指令來創建鏡像; -m :提交時的說明文字; -p :在commit時,將容器暫停。 案例: docker commit -a "runoob.com" -m "my apache" a404c6c174a2 mymysql:v1 將容器a404c6c174a2 保存為新的鏡像,並添加提交人信息和說明信息。 |
docker cp |
用於容器與主機之間的數據拷貝。 |
docker diff |
檢查容器里文件結構的更改。 |
docker login/logout |
docker login : 登陸到一個Docker鏡像倉庫,如果未指定鏡像倉庫地址,默認為官方倉庫 Docker Hub docker logout : 登出一個Docker鏡像倉庫,如果未指定鏡像倉庫地址,默認為官方倉庫 Docker Hub 語法: docker login [OPTIONS] [SERVER] docker logout [OPTIONS] [SERVER] OPTIONS說明: -u :登陸的用戶名 -p :登陸的密碼 案例: 登陸到Docker Hub docker login -u 用戶名 -p 密碼 登出Docker Hub docker logout |
docker pull |
從鏡像倉庫中拉取或者更新指定鏡像 語法: docker pull [OPTIONS] NAME[:TAG|@DIGEST] PTIONS說明: -a :拉取所有 tagged 鏡像 --disable-content-trust :忽略鏡像的校驗,默認開啟 實例: 從docker hub 下載nginx最新鏡像 docker pull nginx 從docker hub下載nginx的所有鏡像 docker pull -a nginx |
docker push [OPTIONS] NAME[:TAG] |
將本地的鏡像上傳到鏡像倉庫,要先登陸到鏡像倉庫 案例: 上傳本地鏡像myapache:v1到鏡像倉庫中。 docker push myapache:v1 |
docker search [鏡像名稱] |
從docker hub查找鏡像 |
docker images |
列出本地鏡像 |
docker rmi [鏡像名稱] |
語法: docker rmi [OPTIONS] IMAGE [IMAGE...] OPTIONS說明: -f :強制刪除; --no-prune :不移除該鏡像的過程鏡像,默認移除; 實例: 強制刪除本地鏡像runoob/ubuntu:v4。 docker rmi -f runoob/ubuntu:v4。 |
docker tag |
標記本地鏡像,將其歸入某一個倉庫 語法 docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG] 實例: 將鏡像ubuntu:15.10標記為 runoob/ubuntu:v3 鏡像。 docker tag ubuntu:15.10 runoob/ubuntu:v3 |
docker build |
命令用於使用 Dockerfile 創建鏡像。 語法 docker build [OPTIONS] PATH | URL | - OPTIONS說明: --build-arg=[] :設置鏡像創建時的變量; --cpu-shares :設置 cpu 使用權重; --cpu-period :限制 CPU CFS周期; --cpu-quota :限制 CPU CFS配額; --cpuset-cpus :指定使用的CPU id; --cpuset-mems :指定使用的內存 id; --disable-content-trust :忽略校驗,默認開啟; -f :指定要使用的Dockerfile路徑; --force-rm :設置鏡像過程中刪除中間容器; --isolation :使用容器隔離技術; --label=[] :設置鏡像使用的元數據; -m :設置內存最大值; --memory-swap :設置Swap的最大值為內存+swap,"-1"表示不限swap; --no-cache :創建鏡像的過程不使用緩存; --pull :嘗試去更新鏡像的新版本; --quiet, -q :安靜模式,成功后只輸出鏡像 ID; --rm :設置鏡像成功后刪除中間容器; --shm-size :設置/dev/shm的大小,默認值是64M; --ulimit :Ulimit配置。 --tag, -t: 鏡像的名字及標簽,通常 name:tag 或者 name 格式;可以在一次構建中為一個鏡像設置多個標簽。 --network: 默認 default。在構建期間設置RUN指令的網絡模式 案例: 使用當前目錄的 Dockerfile 創建鏡像,標簽為 runoob/ubuntu:v1。 docker build -t runoob/ubuntu:v1 . 使用URL github.com/creack/docker-firefox 的 Dockerfile 創建鏡像。 docker build github.com/creack/docker-firefox 也可以通過 -f Dockerfile 文件的位置 docker build -f /path/to/a/Dockerfile . 在 Docker 守護進程執行 Dockerfile 中的指令前,首先會對 Dockerfile 進行語法檢查,有語法錯誤時會返回: docker build -t test/myapp . |
docker history [鏡像名稱] |
查看指定鏡像的創建歷史。 語法: docker history [OPTIONS] IMAGE OPTIONS說明: -H :以可讀的格式打印鏡像大小和日期,默認為true; --no-trunc :顯示完整的提交記錄; -q :僅列出提交記錄ID。 實例: 查看本地鏡像nginx的創建歷史。 [root@test-2 ~]# docker history nginx IMAGE CREATED CREATED BY SIZE COMMENT 62f816a209e6 9 days ago /bin/sh -c #(nop) CMD ["nginx" "-g" "daemon… 0B <missing> 9 days ago /bin/sh -c #(nop) STOPSIGNAL [SIGTERM] 0B <missing> 9 days ago /bin/sh -c #(nop) EXPOSE 80/tcp 0B <missing> 9 days ago /bin/sh -c ln -sf /dev/stdout /var/log/nginx… 22B <missing> 9 days ago /bin/sh -c set -x && apt-get update && apt… 53.8MB <missing> 9 days ago /bin/sh -c #(nop) ENV NJS_VERSION=1.15.6.0.… 0B <missing> 9 days ago /bin/sh -c #(nop) ENV NGINX_VERSION=1.15.6-… 0B <missing> 4 weeks ago /bin/sh -c #(nop) LABEL maintainer=NGINX Do… 0B <missing> 4 weeks ago /bin/sh -c #(nop) CMD ["bash"] 0B <missing> 4 weeks ago /bin/sh -c #(nop) ADD file:f8f26d117bc4a9289… 55.3MB |
docker save |
將指定鏡像保存成 tar 歸檔文件。 |
docker import |
從歸檔文件中創建鏡像 語法 docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]] OPTIONS說明: -c :應用docker 指令創建鏡像; -m :提交時的說明文字; 實例: 從鏡像歸檔文件my_ubuntu_v3.tar創建鏡像,命名為runoob/ubuntu:v4 |
docker info |
顯示 Docker 系統信息,包括鏡像和容器數。。 語法: docker info [OPTIONS] |
docker version |
顯示Docker版本信息。 語法: docker version [options] |