docker 學習--02 常用命令

docker 學習–02 常用命令

文章目錄

  • docker 學習--02 常用命令
  • 1. 幫助啟動類命令
    • 1.1啟動docker
    • 1.2 停止docker
    • 1.3 重啟docker
    • 1.4 查看docker
    • 1.5 設置開機自啟
    • 1.6 查看docker概要信息
    • 1.7 查看docker總體幫助文檔
    • 1.8 查看docker命令幫助文檔
  • 2. 鏡像命令
    • 2.1 列出本地主機上有的鏡像
    • 2.2 查詢鏡像庫
    • 2.3 從遠程庫拉取鏡像
    • 2.4 查看鏡像/容器/數據卷所占的空間(使用時注意自己是否有權限)
    • 2.5 刪除本地鏡像
    • 2.6 創建新的鏡像
    • 2.7 通過Dcokerfile構建鏡像
  • 3容器命令
    • 3.1 新建啟動容器
    • 3.2 查看容器 大小
    • 3.3 退出容器
    • 3.4 進入正在運行的容器并以命令行交互
    • 3.5 啟動已停止運行的容器
    • 3.6 重啟容器
    • 3.7 停止容器
    • 3.8 強制停止容器
    • 3.9 刪除已停止的容器
    • 3.10 查看容器日志
    • 3.11 查看容器內運行的進程
    • 3.12 查看容器內部細節
    • 3.13 從容器內拷貝文件到主機上
    • 3.14 導入和導出容器
    • 3.15 容器數據卷掛載 運行一個帶有容器卷存儲功能的容器實例
    • 3.16 容器數據卷繼承
    • 3.17 查看容器資源占用情況
  • 4 docker 網絡命令
    • 4.1 查看網絡
    • 4.2 創建網絡
    • 4.3 查看網絡源數據
    • 4.4 刪除網絡
  • 5.Docker-compose容器 命令

1. 幫助啟動類命令

1.1啟動docker

 systemctl start docker

1.2 停止docker

 systemctl stop docker

1.3 重啟docker

systemctl restart docker

1.4 查看docker

systemctl status docker

1.5 設置開機自啟

systemctl enable docker

1.6 查看docker概要信息

docker info

1.7 查看docker總體幫助文檔

docker --help

1.8 查看docker命令幫助文檔

docker 命令 --helpexample:
docker run --help

2. 鏡像命令

2.1 列出本地主機上有的鏡像

docker images [OPTIONS]常用參數:
-a :列出所有的鏡像 (含歷史映像層)
-q :只顯示鏡像IDexample:
docker images -a
docker images -q
docker images -aq
docker images php #查找鏡像名為php的鏡像
//REPOSITORY:表示鏡像的倉庫源
//TAG:鏡像的標簽版本號
//IMAGE ID:鏡像ID
//CREATED:鏡像創建時間
//SIZE:鏡像大小 

2.2 查詢鏡像庫

docker search [OPTIONS] 鏡像名字常用參數:
--limit nu   #只輸出查到的前nu條記錄example:
docker search php
docker search --limit 10 php
//NAME:鏡像名稱
//DISCRIPTION:鏡像說明
//STARTS:點贊數
//OFFICAL:是否是官方認可的
//AUTOMATED:是否自動構建 

2.3 從遠程庫拉取鏡像

docker pull 鏡像名字[:TAG]example:
docker pull php:7.2
docker pull php # 沒有指定版本即拉取最新版 

2.4 查看鏡像/容器/數據卷所占的空間(使用時注意自己是否有權限)

//檢查Docker鏡像的磁盤空間
docker system df 
//查該命令將顯示所有正在運行的Docker容器的磁盤使用情況
docker ps -s  
//檢查Docker容器的詳細磁盤使用情況  
//該命令將顯示指定Docker容器的詳細磁盤使用情況,包括容器的各個層的大小。
docker inspect | grep -i "size" 

2.5 刪除本地鏡像

//刪除單個
docker rmi 鏡像ID  #刪除鏡像,如果此時鏡像上面有容器正在運行,會報錯無法刪除
docker rmi  -f 鏡像ID   #強制(forced)刪除鏡像
//刪除多個
docker rmi -f 鏡像名1:TAG 鏡像名2:TAG 
//刪除全部(慎用)
docker rmi -f $(docker images -qa)  
#首先docker images -qa會列舉本地所有的鏡像的ID,然后作為一個集合送入rmi一個個刪除

2.6 創建新的鏡像

docker commit -m="提交的描述信息" -a="作者" 容器ID 要創建的目標鏡像名:[標簽名]

2.7 通過Dcokerfile構建鏡像

Dockerfile是使用Docker構建鏡像的一種常見方式,它是一個文本文件,包含了構建鏡像所需的命令和指令 格式如下

//Docker?le常見命令:
//FROM image_name:tag	聲明基礎鏡像
//MAINTAINER user_name	聲明鏡像的作者
//ENV key value	設置環境變量 (可以寫多條)
//RUN command	編譯鏡像時運行的腳本(可以寫多條)
//CMD	設置容器的啟動命令
//ENTRYPOINT	設置容器的入口程序
//ADD source_dir/?le dest_dir/?le	將宿主機的文件復制到鏡像內,如果是一個壓縮文件,將會在復制后自動解壓。支持URL路徑下載源文件,但下載方式不能自動解壓。
//COPY source_dir/?le dest_dir/?le	和ADD相似,將宿主機的文件復制到鏡像內,但是如果有壓縮文件并不能解壓。不支持URL路徑下載。
//WORKDIR path_dir	設置工作目錄
//ARG	設置編譯鏡像時加入的參數
//VOLUMN	設置容器的掛載卷//示例  #(1)建立工作目錄mkdir /opt/apachecd /opt/apache?#(2)準備Dockerfile文件vim Dockerfile#基于的基礎鏡像FROM centos:7#維護鏡像的用戶信息MAINTAINER this is apache image <zy>#鏡像操作指令安裝apache軟件RUN yum -y install httpd#開啟80端口EXPOSE 80#復制網站首頁文件ADD index.html /var/www/html/#指定啟動容器時第一個運行的命令,前臺運行apache//方法一:#將執行腳本復制到鏡像中ADD run.sh /run.shRUN chmod 755 /run.sh#啟動容器時執行腳本CMD ["/run.sh"]?//方法二:ENTRYPOINT ["/usr/sbin/apachectl"]CMD ["-D", "FOREGROUND"]     #FOREGROUND前臺運行#默認情況下apache是在后臺運行需要-D指定FOREGROUND表示前臺運行否則執行完第一條命令會停止鏡像??#(3)準備執行腳本。使用方法一的情況下需要準備執行腳本,使用方法二可跳過此步驟。vim run.sh#!/bin/bash#清理httpd的緩存rm -rf /run/httpd/*#指定為前臺運行/usr/sbin/apachectl -D FOREGROUND#因為Docker容器僅在它的1號進程(PID為1)運行時,會保持運行。如果1號進程退出了,Docker容器也就退出了。?#(4)準備網站頁面echo "this is apache web" > index.html?#(5)生成鏡像(構建鏡像)docker build -t httpd:centos .   #注意別忘了末尾有"."?#(6)使用新鏡像運行容器docker run -d -p 6666:80 httpd:centos   #指定映射端口1314?#使用宿主機IP和1314端口,測試網頁訪問http://IP:6666/

3容器命令

3.1 新建啟動容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]常用參數:
--name=NAME   #為容器指定名字為NAME,不使用的話系統自動為容器命名
-d: 后臺運行容器并返回容器ID,也即啟動守護式容器(后臺運行);-i:以交互模式運行容器,通常與 -t 同時使用;
-t:為容器重新分配一個偽輸入終端,通常與 -i 同時使用;
也即啟動交互式容器(前臺有偽終端,等待交互,一般連用,即-it);-P: 隨機端口映射,大寫P
-p: 指定端口映射,小寫pexample:以ubuntu為例,啟動后要交互先聲明交互模式,其次交互得需要一個終端,因此參數為-it
docker run -it ubuntu /bin/bash指定名稱
docker run -it --name=myubuntu ubuntu /bin/bash

3.2 查看容器 大小

docker ps [OPTIONS]常用參數:
-a :列出當前所有正在運行的容器+歷史上運行過的
-l :顯示最近創建的容器。
-n nu:顯示最近nu個創建的容器。
-q :靜默模式,只顯示容器編號

3.3 退出容器


//1.run進去容器,exit退出,容器停止
exit
//2.run進去容器,ctrl+p+q退出,容器不停止

3.4 進入正在運行的容器并以命令行交互

//exec 是在容器中打開新的終端,并且可以啟動新的進程。用exit退出,不會導致容器的停止。
//attach 直接進入容器啟動命令的終端,不會啟動新的進程。用exit退出,會導致容器的停止。
docker exec -it 容器ID/容器名稱 bashShell
docker attach 容器ID

3.5 啟動已停止運行的容器

docker start 容器ID或者容器名

3.6 重啟容器

docker restart 容器ID或者容器名

3.7 停止容器

docker stop 容器ID或者容器名

3.8 強制停止容器

docker kill 容器ID或容器名

3.9 刪除已停止的容器

#刪除一個
docker rm 容器ID  
docker rm -f 容器ID  #強制刪除#刪除多個
docker rm -f $(docker ps -a -q)docker ps -a -q | xargs docker rm

3.10 查看容器日志

docker logs 容器ID

3.11 查看容器內運行的進程

docker top 容器ID

3.12 查看容器內部細節

docker inspect 容器ID

3.13 從容器內拷貝文件到主機上

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

3.14 導入和導出容器

docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 鏡像用戶/鏡像名:鏡像版本號

3.15 容器數據卷掛載 運行一個帶有容器卷存儲功能的容器實例

docker run -it --privileged=true -v /宿主機絕對路徑目錄:/容器內目錄:[OPTION] 鏡像名OPTION:
rw   可讀可寫(read + write)
ro   容器實例內部被限制,只能讀取不能寫,僅讀(read only)

3.16 容器數據卷繼承

docker run -it  --privileged=true --volumes-from 父類  --name u2 ubuntuexample:
# 新創建u3容器繼承u2容器的數據卷掛載,此時u2就算stop也不影響u3
docker run -it --privileged=true --volumes-from u2 --name u3 ubuntu

3.17 查看容器資源占用情況

docker stats [OPTIONS] [CONTAINER...]OPTIONS:
--all , -a :顯示所有的容器,包括未運行的。
--format :指定返回值的模板文件。
--no-stream :展示當前狀態就直接退出了,不再實時更新。
--no-trunc :不截斷輸出。
example:
docker stats
docker stats mynginx  # 容器名
docker stats af7928654200  # 容器ID//CONTAINER ID 與 NAME: 容器 ID 與名稱。
//CPU % 與 MEM %: 容器使用的 CPU 和內存的百分比。
//MEM USAGE / LIMIT: 容器正在使用的總內存,以及允許使用的內存總量。
//NET I/O: 容器通過其網絡接口發送和接收的數據量。
//BLOCK I/O: 容器從主機上的塊設備讀取和寫入的數據量。
//PIDs: 容器創建的進程或線程數。

4 docker 網絡命令

4.1 查看網絡

docker network ls

4.2 創建網絡

docker network create xxx網絡名字

4.3 查看網絡源數據

docker network inspect  XXX網絡名字

4.4 刪除網絡

docker network rm XXX網絡名字

5.Docker-compose容器 命令

docker-compose -h                      # 查看幫助
docker-compose up                      # 啟動所有docker-compose服務
docker-compose up -d                   # 啟動所有docker-compose服務并后臺運行
docker-compose down                    # 停止并刪除容器、網絡、卷、鏡像。
docker-compose exec  yml里面的服務id          # 進入容器實例內部  
docker-compose exec docker-compose.yml文件中寫的服務id /bin/bash
docker-compose ps                      # 展示當前docker-compose編排過的運行的所有容器
docker-compose top                     # 展示當前docker-compose編排過的容器進程docker-compose logs  yml里面的服務id    # 查看容器輸出日志
docker-compose config     # 檢查配置
docker-compose config -q  # 檢查配置,有問題才有輸出
docker-compose restart   # 重啟服務
docker-compose start     # 啟動服務
docker-compose stop      # 停止服務

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/38052.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/38052.shtml
英文地址,請注明出處:http://en.pswp.cn/news/38052.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Jmeter 參數化的幾種方法

目錄 配置元件-用戶自定義變量 前置處理器-用戶參數 配置元件-CSV Data Set Config Tools-函數助手 配置元件-用戶自定義變量 可在測試計劃、線程組、HTTP請求下創建用戶定義的變量 全局變量&#xff0c;可以跨線程組調用 jmeter執行的時候&#xff0c;只獲取一次&#xff0…

kafka 02——三個重要的kafka客戶端

kafka 02——三個重要的kafka客戶端 1. 前言1.1 關于 Kafka 的安裝1.2 常用客戶端簡介1.3 依賴 2. AdminClient2.1 Admin Configs2.2 AdminClient API2.2.1 設置 AdminClient 對象2.2.2 創建 topic 獲取 topic 列表2.2.3 刪除topic2.2.4 查看 topic 的描述信息2.2.5 查看 topi…

【復習8-13天】每天40min,我們一起用70天穩扎穩打學完《JavaEE初階》——14/70 第十四天

專注 效率 記憶 預習 筆記 復習 做題 歡迎觀看我的博客,如有問題交流,歡迎評論區留言,一定盡快回復!(大家可以去看我的專欄,是所有文章的目錄)   文章字體風格: 紅色文字表示:重難點★? 藍色文字表示:思路以及想法★?   如果大家覺得有幫助的話,感謝大家幫忙 點…

【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據

【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據 文章目錄 【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據前言出現的背景一、TDSQL-C數據庫是什么&#xff1f;二、TDSQL-C 的特點三、TDSQL-C的應用場景四、基于TD…

測試相關Liunx基礎知識

Linux的歷史和安裝 基本常識 Liunx目錄結果 常見

CTF之逆向之阿里巴巴

題目地址&#xff1a;http://www.shiyanbar.com/ctf/13 題目預覽&#xff1a; 解題過程&#xff1a; 1、下載附件發現是exe文件 2、使用PEid和Detect It Easy查殼 和 開發語言&#xff0c;發現沒有加殼&#xff0c;都是用C#開發的 3、C#和Java Python屬于解釋型語言&#xff…

Win10安裝GPU支持的最新版本的tensorflow

我在安裝好cuda和cudnn后&#xff0c;使用pip install tensorflow安裝的tensorflow都提示不能找到GPU&#xff0c; 為此懷疑默認暗轉的tensorflow是不帶GPU支持的。 在tensorflow官網提供了多個版本的GPU支持的windows的安裝包 https://www.tensorflow.org/install/pip?hlz…

用ChatGPT和六頂帽思考法幫助自己更好地決策和解決問題

當我們在解決復雜問題時&#xff0c;我們常常陷入單一視角的狀態。創造性思維領域的先驅愛德華德博諾&#xff0c;提出了六頂帽思考法[1]&#xff0c;這意味著我們可以從六個不同的視角來思考一個問題&#xff0c;以實現高水平決策和解決問題。 每一頂“帽子”代表不同的視角。…

阿里云國際版CDN使用教程!

當網站流量達到一定值后&#xff0c;勢必會造成網站訪問卡堵&#xff0c;這時候阿里云CDN將會一個很好的選擇&#xff0c;阿里云 CDN 是由全球分布式邊緣節點組成的虛擬網絡。阿里云 CDN 可減少源站負載&#xff0c;防止網絡擁塞&#xff0c;使用阿里云 CDN 加速圖像、小文件、…

SAP ME2L/ME2M/ME3M報表增強添加字段(包含:LMEREPI02、SE18:ES_BADI_ME_REPORTING)

ME2L、ME2M、ME3M這三個報表的字段增強&#xff0c;核心點都在同一個結構里 SE11:MEREP_OUTTAB_PURCHDOC 在這里加字段&#xff0c;如果要加的字段是EKKO、EKPO里的數據&#xff0c;直接加進去&#xff0c;啥都不用做&#xff0c;就完成了 如果要加的字段不在EKKO和EKPO這兩個…

LabVIEW控制通用工作臺

LabVIEW控制通用工作臺 用于教育目的的計算機化實驗室顯著增長&#xff0c;特別是用于運動控制的實驗室。它們代表了各種工業應用中不斷擴大的領域&#xff0c;并成為以安全的方式使用通常昂貴或獨特的實驗室設備進行實時實驗的寶貴工具。NI LabVIEW等軟件應用程序的開發和不斷…

Linux 中復制文件并保持修改時間等屬性

一、遇到的問題 Linux使用cp命令復制文件備份時&#xff0c;發現文件的修改時間變成當前時間了&#xff0c;想要保留備份文件原有的修改時間及其它文件屬性。 二、實現 1、cp命令 在 Linux 中&#xff0c;你可以使用 cp 命令來復制文件&#xff0c;并通過 -p 或 --preserve…

二進制轉字符串(小數)

題目&#xff1a; 給定一個介于0和1之間的實數&#xff08;如0.72&#xff09;&#xff0c;類型為double&#xff0c;打印它的二進制表達式。如果該數字無法精確地用32位以內的二進制表示&#xff0c;則打印“ERROR”。 示例: 輸入&#xff1a;0.625 輸出&#xff1a;"…

智慧工地源碼,互聯網+建筑工地,基于微服務+Java+Spring Cloud +Vue+UniApp開發

基于微服務JavaSpring Cloud VueUniApp MySql開發的智慧工地云平臺源碼 智慧工地概念&#xff1a; 智慧工地就是互聯網建筑工地&#xff0c;是將互聯網的理念和技術引入建筑工地&#xff0c;然后以物聯網、移動互聯網技術為基礎&#xff0c;充分應用BIM、大數據、人工智能、移…

【jvm】類加載器的分類

目錄 一、說明二、示例2.1 代碼2.2 截圖 三、啟動類加載器四、擴展類加載器五、應用程序類加載器 一、說明 1.jvm支持兩種類型的類加載器&#xff0c;分別是引導類加載器&#xff08;bootstrap classloader&#xff09;和自定義類加載器&#xff08;user-defined classloader&a…

【springboot啟動報錯】java: 錯誤: 無效的源發行版:17

報錯截圖 解決方案 第一步&#xff1a;編輯配置&#xff0c;改為想用的jdk版本 第二步&#xff1a;文件--->項目結構&#xff0c;改為對應的SDK 第三步&#xff1a;文件--->設置--->構建、執行、部署--->編譯器--->Java編譯器&#xff0c;修改目標字節碼版本 第…

fiddler抓包工具的用法以及抓取手機報文定位bug

前言&#xff1a; fiddler抓包工具是日常測試中常用的一種bug定位工具 一 抓取https報文步驟 使用方法&#xff1a; 1 首先打開fiddler工具將證書導出 點擊TOOLS------Options------Https-----Actions---選中第二個選項 2 把證書導出到桌面后 打開谷歌瀏覽器 設置---高級…

自定義 視頻/音頻 進度條

復制代碼根據自己需求改動就可以了 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><metaname"viewport"conten…

【BASH】回顧與知識點梳理(二十五)

【BASH】回顧與知識點梳理 二十五 二十五. 特殊shell、PAM 模塊、訊息傳遞和大量建置賬號25.1 特殊shell特殊的 shell, /sbin/nologin 25.2 PAM模塊25.3 Linux 主機上的用戶訊息傳遞查詢使用者&#xff1a; w, who, last, lastlog使用者對談&#xff1a; write, mesg, wall使用…

Vue3組件庫

Vue組件庫 ViteVue3TypescriptTSX 1、項目搭建 1.1、創建項目&#xff08;yarn&#xff09; D:\WebstromProject>yarn create vite yarn create v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh pa…