Docker用法總結(三)常用命令

前兩篇介紹了dockerfiledocker-compose.yml文件。本篇將介紹相應的命令。

docker

build

從dockerfile創建鏡像

docker build . -t name

search

從docker hub搜索鏡像

sudo docker search xxx

pull

從docker hub下載鏡像

sudo docker pull xxx

run

鏡像->容器; 運行容器

docker run -it -d -p "0.0.0.0:6666:2333" -h "host" -v ./data:/data --name="name" cmd

-it interactive & tty

-d 後臺運行

-p 端口映射 本地:容器

-v 掛載數據卷 本地:容器

映射多個端口或掛載多個數據卷的話 就用多個 -p / -v

-h 容器的hostname

–name 容器name

cmd 容器執行的命令

commit

容器->鏡像; 打包容器爲鏡像

docker commit container_name image_name

exec

在容器執行命令

和run差不多,run是從鏡像創建容器後執行命令,exec是對正在運行的容器執行命令

docker exec -it xxx /bin/bash 

xxx 爲容器名/ID

-it interactive & tty

logs

docker logs xxx

xxx 爲容器名/ID

images

顯示鏡像信息

ps

顯示容器信息

docker ps -a

-a 全部容器,包括已經關閉的

container

容器管理命令

顯示容器信息

docker container ls -a

相當於

docker ps -a

詳細信息

docker inspect xxx

其他的沒啥

cp

本地與容器間複製文件

docker cp xxx:/home/dir ./
docker cp ./2333 xxx:/home/dir 

和scp差不多 格式爲 容器名:路徑

不用加-r,默認遞歸複製文件夾下所有文件/文件夾

容器關閉後也可cp

start

開啓容器

kill

關掉容器

rm

刪除容器

rmi

刪除鏡像

login

登錄docker hub

push

上傳鏡像

docker-compose

docker-compose命令會根據compose文件中的信息對容器進行相關操作

默認的compose文件是docker-compose.yml,也可以通過-f 指定compose文件:

docker-compose -f xxx.yml 

所以,須在docker-compose.yml文件所在的文件目錄下執行docker-compose命令(如果使用默認compose文件)

創建鏡像

根據dockerfile創建鏡像,一般是更新dockerfile後使用

docker-compose build

啓動服務

docker-compose up -d

這條命令會啓動compose文件中services下定義的所有的容器

-d 選項可讓服務後臺運行

如果沒有build過鏡像,這條命令會先build鏡像,然後再部署容器

查看進程

docker-compose ps -a

-a 選項可顯示全部進程,包括正在運行的和已經關閉的

關閉容器

docker-compose kill

這條命令會終止compose文件中services下定義的所有的容器

刪除容器

docker-compose rm -f

這條命令會刪除compose文件中services下定義的所有的容器

-f 選項可強制刪除(無提示信息)

重啓服務

docker-compose restart

這條命令會重啓compose文件中services下定義的所有的容器

查看日誌

如果某個容器掛掉了,查看日誌是必不可少的

docker-compose logs xxx

xxx 爲 services中定義的服務名字

比如

version: "3"
services:
  webapp:
    image: redis:4
    # ...

查看日誌的命令爲

docker-compose logs webapp

執行命令

docker-compose exec xxx [cmd]

在xxx容器中執行命令

命令必須是絕對路徑

e.g. 執行/bin/sh

docker-compose exec xxx /bin/sh

run

docker-compose run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] [-l KEY=VALUE...] SERVICE [COMMAND] [ARGS...] 

和docker的差不多

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章