Docker常用命令、超實用、講解清晰明了(rm、stop、start、kill、logs、diff、top、cp、restart ...)

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

1. 查看docker信息(version、info)

# 查看docker版本  
$docker version  # 顯示docker系統的信息  
$docker info  

2. 對image的操作(search、pull、images、rmi、history)

[plain] view plain copy
# 檢索image  
$docker search image_name  # 下載image  
$docker pull image_name  # 列出鏡像列表; -a, --all=false Show all images; --no-trunc=false Don't truncate output; -q, --quiet=false Only show numeric IDs  
$docker images  # 刪除一個或者多個鏡像; -f, --force=false Force; --no-prune=false Do not delete untagged parents  
$docker rmi image_name  # 顯示一個鏡像的歷史; --no-trunc=false Don't truncate output; -q, --quiet=false Only show numeric IDs  
$docker history image_name  

?

3.?啟動容器(run)

docker容器可以理解為在沙盒中運行的進程。這個沙盒包含了該進程運行所必須的資源,包括文件系統、系統類庫、shell 環境等等。但這個沙盒默認是不會運行任何程序的。你需要在沙盒中運行一個進程來啟動某一個容器。這個進程是該容器的唯一進程,所以當該進程結束的時候,容器也會完全的停止。

?

# 在容器中運行"echo"命令,輸出"hello word"  
$docker run image_name echo "hello word"  # 交互式進入容器中  
$docker run -i -t image_name /bin/bash  # 在容器中安裝新的程序  
$docker run image_name apt-get install -y app_name  

?

?

?

Note: ?在執行apt-get 命令的時候,要帶上-y參數。如果不指定-y參數的話,apt-get命令會進入交互模式,需要用戶輸入命令來進行確認,但在docker環境中是無法響應這種交互的。apt-get 命令執行完畢之后,容器就會停止,但對容器的改動不會丟失。

4. 查看容器(ps)

# 列出當前所有正在運行的container  
$docker ps  
# 列出所有的container  
$docker ps -a  
# 列出最近一次啟動的container  
$docker ps -l  

5. 保存對容器的修改(commit)

當你對某一個容器做了修改之后(通過在容器中運行某一個命令),可以把對容器的修改保存下來,這樣下次可以從保存后的最新狀態運行該容器。

# 保存對容器的修改; -a, --author="" Author; -m, --message="" Commit message  
$docker commit ID new_image_name  

Note:??image相當于類,container相當于實例,不過可以動態給實例安裝新軟件,然后把這個container用commit命令固化成一個image。

?

6. 對容器的操作(rm、stop、start、kill、logs、diff、top、cp、restart、attach)

?

# 刪除所有容器  
$docker rm `docker ps -a -q`  # 刪除單個容器; -f, --force=false; -l, --link=false Remove the specified link and not the underlying container; -v, --volumes=false Remove the volumes associated to the container  
$docker rm Name/ID  # 停止、啟動、殺死一個容器  
$docker stop Name/ID  
$docker start Name/ID  
$docker kill Name/ID  # 從一個容器中取日志; -f, --follow=false Follow log output; -t, --timestamps=false Show timestamps  
$docker logs Name/ID  # 列出一個容器里面被改變的文件或者目錄,list列表會顯示出三種事件,A 增加的,D 刪除的,C 被改變的  
$docker diff Name/ID  # 顯示一個運行的容器里面的進程信息  
$docker top Name/ID  # 從容器里面拷貝文件/目錄到本地一個路徑  
$docker cp Name:/container_path to_path  
$docker cp ID:/container_path to_path  # 重啟一個正在運行的容器; -t, --time=10 Number of seconds to try to stop for before killing the container, Default=10  
$docker restart Name/ID  # 附加到一個運行的容器上面; --no-stdin=false Do not attach stdin; --sig-proxy=true Proxify all received signal to the process  
$docker attach ID  

?

?

?

Note:?attach命令允許你查看或者影響一個運行的容器。你可以在同一時間attach同一個容器。你也可以從一個容器中脫離出來,是從CTRL-C。

?

7. 保存和加載鏡像(save、load)

當需要把一臺機器上的鏡像遷移到另一臺機器的時候,需要保存鏡像與加載鏡像。

plain] view plain copy
# 保存鏡像到一個tar包; -o, --output="" Write to an file  
$docker save image_name -o file_path  
# 加載一個tar包格式的鏡像; -i, --input="" Read from a tar archive file  
$docker load -i file_path  # 機器a  
$docker save image_name > /home/save.tar  
# 使用scp將save.tar拷到機器b上,然后:  
$docker load < /home/save.tar  

8、 登錄registry server(login)

# 登陸registry server; -e, --email="" Email; -p, --password="" Password; -u, --username="" Username  
$docker login 

9. 發布image(push)

# 發布docker鏡像  
$docker push new_image_name  

?

10.??根據Dockerfile 構建出一個容器

?

#build  --no-cache=false Do not use cache when building the image  -q, --quiet=false Suppress the verbose output generated by the containers  --rm=true Remove intermediate containers after a successful build  -t, --tag="" Repository name (and optionally a tag) to be applied to the resulting image in case of success  
$docker build -t image_name Dockerfile_path  

?

另外也推薦 :Docker 常用命令? ?和?Docker 命令整理

?

原文見:https://blog.csdn.net/we_shell/article/details/38368137

?

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

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

相關文章

推薦給開發人員的實用命令行工具

摘要&#xff1a;優秀的工具對于定位問題出在何處有著無可估量的價值&#xff0c;而且能在一開始就幫助我們阻止問題的出現&#xff0c;總的來說能使我們的工作更有效率。本文介紹了6個非常強大且靈活的工具&#xff0c;熟練使用這些工具能使你的生活變得更輕松一些。 作為一名…

雷軍:啟動手機+AIoT雙引擎戰略 5G春天到來前打持久戰

雷帝網 樂天 1月11日報道 小米CEO雷軍今日在小米年會上宣布&#xff0c;2019年&#xff0c;小米將正式啟動“手機AIoT”雙引擎戰略&#xff0c;這將是小米未來五年的核心戰略。未來5年&#xff0c;小米將在AIoT領域持續投入超過100億元。從2019年起&#xff0c;AIoT&#xff0c…

Jenkins自定義主題

x下載自定義樣式 http://afonsof.com/jenkins-material-theme/ 打開連接 最后點擊&#xff1a;DOWNLOAD TOUR THEME! 得到樣式文件&#xff1a;jenkins-material-theme.css 上傳樣式文件到jenkins 將jenkins-material-theme.css 上傳到&#xff1a; /var/jenkins_home/userCont…

SSH (Secure Shell)詳解

Secure Shell&#xff08;SSH&#xff09;是一種加密 網絡協議&#xff0c;用于在不安全的網絡上安全地運行網絡服務。 SSH通過客戶端 - 服務器體系結構中的不安全網絡提供安全通道&#xff0c;將SSH客戶端應用程序與SSH服務器相連接。 常見的應用程序包括遠程命令行登錄和遠程…

股票配對收益

import pandas as pd import numpy as npimport matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [SimHei] # 字體設置 import matplotlib matplotlib.rcParams[axes.unicode_minus]False # 負號顯示問題from arch.unitroot import ADF …

YUV420、YUV422、RGB24轉換

//平面YUV422轉平面RGB24 static void YUV422p_to_RGB24(unsigned char *yuv422[3], unsigned char *rgb24, int width, int height) { int R,G,B,Y,U,V; int x,y; int nWidth width>>1; //色度信號寬度 for (y0;y<height;y) { for (x0;x<width;x) { …

最長非下降子序列(O(nlogn))(offer收割)

題目 如題 思路 核心思想是&#xff0c;維護一個數組ends&#xff0c;它記錄了長度為k的子序列的末尾元素的最小值。聽起來很抽象&#xff0c;我們不妨手動演示一遍整個過程。 假設數組a{2,9,4,27,29,15,7}&#xff0c;令length表示當前找到的最長非下降子序列的長度。初始時le…

[Python]小甲魚Python視頻第026課(字典:當索引不好用時2)課后題及參考解答

# -*- coding: utf-8 -*- """ Created on Fri Mar 8 10:32:20 2019author: Administrator """"""測試題&#xff1a;0. Python的字典是否支持一鍵&#xff08;Key&#xff09;多值&#xff08;Value&#xff09;&#xff1f;不支…

2021-08-12 畫蠟燭線

畫蠟燭線 pip install https://github.com/matplotlib/mpl_finance/archive/master.zip from mpl_finance import candlestick_ochl import matplotlib.pyplot as plt from matplotlib.pylab import date2num# 先畫日K線 fig, axes plt.subplots(nrows1, ncols1, figsize(20, …

替換字符串列表中字符串

//替換字符串列表中字符串 procedure StringsReplace(var S : TStrings; OldPattern, NewPattern: string; Flags: TReplaceFlags);var i : integer; tmpstr : string;begin for i : 0 to S.Count -1 do begin tmpstr : S[i]; s[i] : StringReplace(tmpstr, Ol…

TCP/IP協議族 詳解(TCP/IP四層模型、OSI七層模型)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 TCP/IP協議族&#xff08;TCP/IP Protocol Suite&#xff0c;或TCP/IP Protocols&#xff09;&#xff0c;簡稱TCP/IP。由于在網絡通訊協…

RGB 24和YUY2相互轉換

YUY2經常用于電視制式以及許多攝像頭的輸出格式.而我們在處理時經常需要將其轉化為RGB進行處理,這里簡單介紹下YUY2(YUV)與RGB之間相互轉化的關系: http://msdn2.microsoft.com/en-us/library/ms893078.aspx YUY2(YUV) To RGB: C Y - 16 D U - 128 E V - 128 R clip((…

通達信獲取數據

#python第三方庫pytdx獲取 from pytdx.hq import TdxHq_API api TdxHq_API() # 數據獲取接口一般返回list結構&#xff0c;如果需要轉化為pandas Dataframe接口&#xff0c;可以使用 api.to_df 進行轉化 with api.connect(119.147.212.81, 7709): # 返回普通list data …

ICMP (互聯網控制消息協議 )是什么

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 互聯網控制消息協議&#xff08;英語&#xff1a;Internet Control Message Protocol&#xff0c;縮寫&#xff1a;ICMP&#xff09;是互…

股票數據相關性分析

導入相關包 import pandas as pd import numpy as np import matplotlib.pyplot as plt from matplotlib.collections import LineCollection import akshare as ak from sklearn import cluster, covariance, manifold %matplotlib inline #Jupyter Notebook顯示圖形專用 plt…

分享一個輔助分析內存泄漏的腳本

最近給系統做了一點優化&#xff0c;前幾天去查看系統監控&#xff0c;想看看上線前后cpu使用率曲線變化情況。查看的時候意外發現上線前后內存占用相差不少&#xff0c;20%以上。 本來我沒怎么在意這個問題&#xff0c;因為我們系統會在運行過程中緩存部分數據內容。但客戶覺得…

windows Virtualbox下配置Ubuntu,且用ssh連接

1、軟件介紹 1&#xff09;virtualbox 5.2.22 2&#xff09;Ubuntu 18.04 3&#xff09;git bash 2、virtualbox設置 安裝完Ubuntu后點擊該鏡像的設置&#xff0c;依次點擊“網絡”——“端口轉發” 將主機端口設置為一個閑置端口&#xff0c;子系統端口也就是Ubuntu端口設置…

專訪劉偉:軟件開發人員的內功修煉之道

摘要&#xff1a;數學修養對軟件開發之路起著什么作用&#xff1f;碼農如何修煉自己的內功并成長為優秀的軟件開發員&#xff1f;帶著相關思考&#xff0c;社區之星第10期采訪了中南大學副教授——劉偉。他對數學修養、設計模式、軟件架構和重構方面的獨特見解&#xff0c;相信…

多線程數據下載(akshare)

import akshare as ak import pandas as pd from multiprocessing.dummy import Pool as ThreadPool import datetime import timedef get_hs300_stock_codes():獲取滬深300股票代碼列表:return:hs300ak.index_stock_cons_sina("000300")codeshs300[code]codescodes.…

MongoDB 4.6.1 c++ driver 編譯

版權聲明&#xff1a;本文為博主原創文章&#xff0c;未經博主同意不得轉載。https://blog.csdn.net/sheismylife/article/details/25512251 這個版本號已經和之前不一樣了。有專門的github的項目。https://github.com/mongodb/mongo-cxx-driver首先獲取源碼&#xff1a;git cl…