日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Docker_容器命令

發布時間:2024/9/30 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker_容器命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言:

前面了解完了Docker的原理以及一些基礎知識,這次就來進行實踐操作

0x00:Docker幫助命令

docker version docker info docker --help

0x01:Docker鏡像命令

列出本地鏡像

docker images


各個選項說明:

REPOSITORY:表示鏡像的倉庫源
TAG:鏡像的標簽
IMAGE ID:鏡像ID
CREATED:鏡像創建時間
SIZE:鏡像大小

同一倉庫源可以有多個TAG,代表這個倉庫源的不同個版本,使用REPOSITORY:TAG來定義不同的鏡像。默認使用xxx:latest鏡像

#列出本地所有的鏡像(含中間映像層) docker images -a #只顯示鏡像ID docker images -q --digests:只顯示鏡像的摘要信息 --no-trunc:顯示完整的鏡像信息

搜索鏡像

docker search 鏡像名稱

選項說明:

--no-trunc:顯示完整的鏡像信息 -s:列出收藏數不小于指定值的鏡像 --automated:只列出automated build類型的鏡像


下載鏡像

docker pull 鏡像名稱[:TAG] #注:如果后面不加本版號,自動下載最新版本的

刪除鏡像

docker rmi -f 鏡像名稱[:TAG] #注:如果后面不加本版號,刪除的是最新版本的


其他命令:

#刪除多個 docker rmi -f 鏡像名1:TAG 鏡像名2:TAG #刪除全部 docker rmi -f $(docker images -qa)

0x02:容器命令

新建并啟動容器

docker run[OPTIONS] image [COMMAND][ARG...]

#OPTIONS說明: OPTIONS說明(常用) :有些是一個減號,有些是兩個減號 --name="容器新名字":為容器指定-一個名稱; -d: 后臺運行容器, 并返回容器ID, 也即啟動守護式容器; -i: 以交互模式運行容器,通常與-t同時使用; -t: 為容器重新分配一一個偽輸入終端,通常與-i同時使用; -P:隨機端口映射; -p:指定端口映射,有以下四種格式 ip:hostPort:containerPort ip::containerPort hostPort:containerPort containerPort

列出當前正在運行的所有容器

docker ps[OPTIONS]

#OPTIONs說明 OPTIONS說明(常用) : -a :列出當前所有正在運行的容器+歷史上運行過的 -l:顯示最近創建的容器。 -n:顯示最近n個創建的容器。 -q :靜默模式,只顯示容器編號。 --no-trunc :不截斷輸出。

兩種退出方式

exit #容器停止退出 ctrl+P+Q #容器不停止退出

啟動容器

docker start ID

重啟容器

docker restart ID

停止容器

#正常停止 docker stop ID #強制關閉 docker kill ID

刪除容器

docker rm ID #加-f強制刪除

一次刪除多個容器

docker rm -f $(docker ps -a -q) docker ps -a -q| xargs docker rm

啟動守護進程

docker run -d 容器名

使用鏡像centos:latest以后臺模式啟動一個容器
docker run -d centos
問題:docker ps -a進行查看,會發現容器已經退出 很重要的一點是: Docker容器后臺運行時,就必須有一個前臺進程. 容器運行的命令如果不是那些一直掛起的命令(比如運行top,tail),就是會自動退出的。
這個是docker的機制問題,比如web容器,以nginx為例,正常情況下,配置啟動服務只需要啟動響應的service即可。如service nginx start 但是這樣做,nginx是后臺進程模式運行,就會導致docker前臺沒有運行的應用,這樣的容器后臺啟動后,會立即自殺因為覺得沒事可做. 所以,最佳的解決方案是,將要運行的程序以前臺進程的形式運行。

docker run -d centos /bin/sh -c "while true;do echo lemon;sleep 2;done"

這樣的命令便可以在后臺模式下啟動一個容器 ,有一個前臺進程。

查看容器日志

docker logs -f -t --tail 容器ID #參數說明: -t 加入時間戳 -f 跟隨最新的日志打印 --tail 數字顯示最后多少條

重新進入容器并以命令行交互

#進入交互界面 docker attach 容器ID #進入交互界面 docker exec -it 容器ID /bin/bash #直接執行命令 docker exec -it 容器ID ls -l /tmp

容器內的文件拷貝到主機上

docker cp 容器ID:容器內路徑 目的主機路徑

總結

以上是生活随笔為你收集整理的Docker_容器命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。