1. 程式人生 > 其它 >docker主要操作命令大全

docker主要操作命令大全

技術標籤:dockerdocker

docker images 來列出本地主機上的映象。

引數說明:

REPOSITORY:表示映象的倉庫源
TAG:映象的標籤
IMAGE ID:映象ID
CREATED:映象建立時間
SIZE:映象大小

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
常用引數
-d: 後臺執行容器,並返回容器ID;
-i: 以互動模式執行容器,通常與 -t 同時使用;
-P: 隨機埠對映,容器內部埠隨機對映到主機的埠
-p: 指定埠對映,格式為:主機(宿主)埠:容器埠
-t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;

--name="nginx-lb": 為容器指定一個名稱;

docker run -t -i ubuntu:15.10 /bin/bash
如果你不指定一個映象的版本標籤,例如你只使用 ubuntu,docker 將預設使用 ubuntu:latest 映象。
執行容器(內部)
docker run -d -p 8086:8086 -p 8083:8083 --name=jmeterdb influxdb

上傳映象
docker push : 將本地的映象上傳到映象倉庫,要先登陸到映象倉庫
docker push myapache:v1

拉取映象
docker pull : 從映象倉庫中拉取或者更新指定映象

docker pull [OPTIONS] NAME[:TAG|@DIGEST]
-a :拉取所有 tagged 映象
--disable-content-trust :忽略映象的校驗,預設開啟

搜尋映象
docker search : 從Docker Hub查詢映象
docker search [OPTIONS] TERM

刪除映象
docker rmi hello-world
更新映象
docker run -it ubuntu:15.10 /bin/bash 使用映象建立容器
在執行的容器內使用 apt-get update 命令進行更新
在完成操作之後,輸入 exit 命令來退出這個容器

docker commit 來提交容器副本
docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
引數
-m: 提交的描述資訊
-a: 指定映象作者
e218edb10161:容器 ID
runoob/ubuntu:v2: 指定要建立的目標映象名
構建映象
我們使用命令 docker build , 從零開始來建立一個新的映象。為此,我們需要建立一個 Dockerfile 檔案,其中包含一組指令來告訴 Docker 如何構建我們的映象
Dockerfile :
FROM centos:6.7
MAINTAINER Fisher "[email protected]"

RUN /bin/echo 'root:123456' |chpasswd
RUN useradd runoob
RUN /bin/echo 'runoob:123456' |chpasswd
RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" >/etc/default/local
EXPOSE 22
EXPOSE 80
CMD /usr/sbin/sshd -D
每一個指令的字首都必須是大寫的
第一條FROM,指定使用哪個映象源
RUN 指令告訴docker 在映象內執行命令,安裝了什麼
然後,我們使用 Dockerfile 檔案,通過 docker build 命令來構建一個映象

docker build -t runoob/centos:6.7 .
-t :指定要建立的目標映象名
. :Dockerfile 檔案所在目錄,可以指定Dockerfile 的絕對路徑
設定映象標籤docker tag 命令
docker tag 860c279d2fec runoob/centos:dev
映象Id :860c279d2fec
使用者名稱稱
映象源名(repository name) runoob/centos
新的標籤名(tag)dev

列出執行中的docker容器 : docker ps
列出執行中 + 已停止docker容器 docker ps -a
停止容器 docker stop [docker container id]
啟動容器 docker start [docker container id]
刪除容器 docker rm [docker container id]
重啟容器 docker restart myrunoob
進入容器
在使用 -d 引數時,容器啟動後會進入後臺
docker exec -it 243c32535da7 /bin/bash
docker exec -it jmeterdb bash
-d :分離模式: 在後臺執行
-i :即使沒有附加也保持STDIN 開啟
-t :分配一個偽終端

匯出容器 docker export 命令
docker export 1e560fca3906 > ubuntu.tar
匯入容器 docker import
cat docker/ubuntu.tar | docker import - test/ubuntu:v1
也可以通過指定 URL 或者某個目錄來匯入
docker import http://example.com/exampleimage.tgz example/imagerepo


docker ps [OPTIONS]
-a :顯示所有的容器,包括未執行的。
-f :根據條件過濾顯示的內容。
--format :指定返回值的模板檔案。
-l :顯示最近建立的容器。
-n :列出最近建立的n個容器。
--no-trunc :不截斷輸出。
-q :靜默模式,只顯示容器編號。
-s :顯示總的檔案大小。

docker logs [container ID]命令,檢視容器內的標準輸出