docker客戶端和服務端 docker鏡像 registry docker容器
docker以鏡像爲基礎,在鏡像的基礎上建立、運行容器,能夠簡單的理解爲容器是鏡像運行時的表現。
一、docker run --name container_name -i -t ubuntu /bin/bash (建立一個交互式容器) docker run 命令指的是運行某一個鏡像,這裏指ubuntu鏡像 --name 參數用於指定即將建立運行的容器的名稱(惟一) -i 參數指的是以鏡像運行的容器中的標準輸入是打開的 -t 參數指的是爲建立的容器分配tty終端 /bin/bash 命令指的是容器建立完畢啓動的命令 二、docker start containerId/containerName 從新啓動容器(docker重啓時,會沿用docker run命令時指定的參數來運行) 三、docker stop containerId/containerName 中止容器 四、docker run --name daemon_dave -d ubuntu(守護式容器) -d 參數說明該容器在後臺運行 五、docker logs [options] containerId/containerName docker logs containerId/containerName:輸出此容器的log -f 參數 動態打印容器運行時的log日誌 -tf 參數 給日誌添加時間 --tail number 參數用於獲取日誌的最後幾行內容 六、docker top containerId/containerName 查看容器內部運行的進程 七、docker exec [options] containerId/containerName [shell] docker exec:在容器內部額外啓動新進程 -d: 後臺進程 -i -t:交互式進程 八、docker run --restart=[param] ... --restart=always:不管容器退出碼是多少,都自動重啓容器 --restart=on-failure:5:當退出碼是非0時,自動重啓5次 九、docker ps docker ps 命令顯示當前正在運行的容器 docker ps -a 顯示全部容器 docker ps -l 顯示最新建立的一個容器 docker ps -l -q 顯示最新建立的一個容器的id 十、docker run -p/-P -p: 8080:80 將容器內的80端口綁定到了本地宿主機的8080端口 127.0.0.1:8080:80 將容器內的80端口綁定到了本地宿主機的127.0.0.1這個IP的8080端口 127.0.0.1::80 將容器內的80端口綁定到了本地宿主機的127.0.0.1這個IP的一個隨機端口 -P: 將容器內的80端口對本地宿主機公開,而且綁定到宿主機的一個隨機端口上 十一、docker inspect containerId/containerName 查看容器詳細信息 十二、docker port containerId/containerName 查看容器端口映射狀況
一、docker images docker images:查找docker宿主機全部的鏡像,後面加鏡像名可查看指定鏡像的信息 二、docker search XXX 用於查看XXX相關的鏡像 鏡像通常存儲在鏡像倉庫中(用戶倉庫:用戶名/倉庫名),並打上標籤 三、docker commit docker commit:構建鏡像 docker commit -m "A new custom image" -a "James Turnbull" [容器Id] [倉庫名/鏡像名:tag] -m:提交信息 -a:提交人信息 四、基於dockerfile構建鏡像 docker build -t="倉庫名/鏡像名:tag" . .:表明從當前目錄下查找Dockerfile,也能夠指定git倉庫 五、dockerfile命令 CMD: 指定容器要啓動時要運行的命令,一個dockerfile只有一個CMD命令生效, 且若是docker run時指定了命令,會覆蓋dockerfile的CDM指定的命令。 ENTRYPOINT: 指定容易啓動時要運行的命令,通常不會被覆蓋,能夠經過docker run --entrypoint覆蓋 WORKDIR: dockerfile後續指令的工做目錄 EVN: ENV TARGET_DIR /opt/app:指定環境變量 VOLUME: 用來向基於鏡像建立的容器添加捲, 讓咱們能夠將數據(如源代碼)、數據庫或者其餘內容添加到鏡像中而不是將這些內容提交到鏡像中,而且容許咱們在多個容器間共享這些內容 ADD: 用來將構建環境下的文件和目錄複製到鏡像中。 ADD 源文件 目的文件位置 COPY: ARG: 用來定義能夠在docker build命令運行時傳遞給構建運行時的變量,咱們只須要在構建時使用--build-arg標誌便可
以上內容參考了《第一本Docker書》,若是有不正確的地方,歡迎指出git