1. 程式人生 > >【docker】docker run命令詳解

【docker】docker run命令詳解

Docker run命令用於執行一個新容器,而啟動一個容器需要非常多的資訊,所以該命令的引數非常多,今天就詳細分析下該命令支援的引數。

首先看一下該命令的格式:

  1. Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]  
  2.   -a, --attach=[]            登入容器(以docker run -d啟動的容器)  
  3.   -c, --cpu-shares=0         設定容器CPU權重,在CPU共享場景使用  
  4.   --cap-add=[]               新增許可權,許可權清單詳見:http://linux.die.net/man/7/capabilities  
  5.   --cap-drop=[]              刪除許可權,許可權清單詳見:http://linux.die.net/man/7/capabilities  
  6.   --cidfile=""               執行容器後,在指定檔案中寫入容器PID值,一種典型的監控系統用法  
  7.   --cpuset=""                設定容器可以使用哪些CPU,此引數可以用來容器獨佔CPU  
  8.   -d, --detach=false         指定容器運行於前臺還是後臺   
  9.   --device=[]                新增主機裝置給容器,相當於裝置直通  
  10.   --dns
    =[]                   指定容器的dns伺服器  
  11.   --dns-search=[]            指定容器的dns搜尋域名,寫入到容器的/etc/resolv.conf檔案  
  12.   -e, --env=[]               指定環境變數,容器中可以使用該環境變數  
  13.   --entrypoint=""            覆蓋image的入口點  
  14.   --env-file=[]              指定環境變數檔案,檔案格式為每行一個環境變數  
  15.   --expose=[]                指定容器暴露的埠,即修改映象的暴露埠  
  16.   -h, --hostname=""          指定容器的主機名  
  17.   -i, --interactive=false    開啟STDIN,用於控制檯互動  
  18.   --link=[]                  指定容器間的關聯,使用其他容器的IP、env等資訊  
  19.   --lxc-conf=[]              指定容器的配置檔案,只有在指定--exec-driver=lxc時使用  
  20.   -m, --memory=""            指定容器的記憶體上限  
  21.   --name=""                  指定容器名字,後續可以通過名字進行容器管理,links特性需要使用名字  
  22.   --net="bridge"             容器網路設定,待詳述  
  23.   -P, --publish-all=false    指定容器暴露的埠,待詳述  
  24.   -p, --publish=[]           指定容器暴露的埠,待詳述  
  25.   --privileged=false         指定容器是否為特權容器,特權容器擁有所有的capabilities  
  26.   --restart=""               指定容器停止後的重啟策略,待詳述  
  27.   --rm=false                 指定容器停止後自動刪除容器(不支援以docker run -d啟動的容器)  
  28.   --sig-proxy=true           設定由代理接受並處理訊號,但是SIGCHLD、SIGSTOP和SIGKILL不能被代理  
  29.   -t, --tty=false            分配tty裝置,該可以支援終端登入  
  30.   -u, --user=""              指定容器的使用者  
  31.   -v, --volume=[]            給容器掛載儲存卷,掛載到容器的某個目錄  
  32.   --volumes-from=[]          給容器掛載其他容器上的卷,掛載到容器的某個目錄  
  33.   -w, --workdir=""           指定容器的工作目錄  
故障處理
--restart引數,支援三種邏輯實現:
  1. </pre><prename="code"class="html">no:容器退出時不重啟  
  2. on-failure:容器故障退出(返回值非零)時重啟  
  3. always:容器退出時總是重啟  

埠暴露

-P引數:docker自動對映暴露埠;
  1. docker run -d -P training/webapp  <spanstyle="color:#009900;">//docker自動在host上開啟49000到49900的埠,對映到容器(由映象指定,或者--expose引數指定)的暴露埠;</span>

-p引數:指定埠或IP進行對映;

  1. docker run -d -p 5000:80 training/webapp  <spanstyle="color:#009900;">//host上5000號埠,對映到容器暴露的80埠;</span>
  2. docker run -d -p 127.0.0.1:5000:80 training/webapp <spanstyle="color:#009900;">//host上127.0.0.1:5000號埠,對映到容器暴露的80埠;</span>
  3. docker run -d -p 127.0.0.1::5000 training/webapp <spanstyle="color:#009900;">//host上127.0.0.1:隨機埠,對映到容器暴露的80埠;</span>
  4. docker run -d -p 127.0.0.1:5000:5000/udp training/webapp <spanstyle="color:#009900;">//繫結udp埠;</span>

網路配置

  1. --net=bridge: <spanstyle="color:#009900;">//使用docker daemon指定的網橋</span>
  2. --net=host: <spanstyle="color:#009900;">//容器使用主機的網路</span>
  3. --net=container:NAME_or_ID:<spanstyle="color:#009900;">//使用其他容器的網路,共享IP和PORT等網路資源</span>
  4. --net=none: <spanstyle="color:#009900;">//容器使用自己的網路(類似--net=bridge),但是不進行配置</span>

相關推薦

linux awk命令

column 環境變量 最後一行 工作流程 初始 文本文件 for循環 其中 cti 簡介 awk是一個強大的文本分析工具,相對於grep的查找,sed的編輯,awk在其對數據分析並生成報告時,顯得尤為強大。簡單來說awk就是把文件逐行的讀入,以空格為默認分隔符將每行切

Linux netstat命令,高階面試必備

簡介 Netstat 命令用於顯示各種網路相關資訊,如網路連線,路由表,介面狀態 (Interface Statistics),masquerade 連線,多播成員 (Multicast Memberships) 等等。 輸出資訊含義 執行netstat後,其輸出結果為 Active Internet co

dockerdocker run命令

Docker run命令用於執行一個新容器,而啟動一個容器需要非常多的資訊,所以該命令的引數非常多,今天就詳細分析下該命令支援的引數。 首先看一下該命令的格式: Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG..

Docker學習總結(22)——Docke run命令

在Docker中,run應該是使用者使用最多的命令了,很多讀者反饋不是很明白run命令的用法,而且相關的書籍、中文資料中對run命令的描述也不是非常完整,所以DockerOne組織翻譯了Docker官方的文件,以饗讀者。注意,本文基於最新的Docker 1.4文件翻譯。Docker會在隔離的容器中執行程序。當

docker run 命令

在Docker中,run應該是使用者使用最多的命令了,很多讀者反饋不是很明白run命令的用法,而且相關的書籍、中文資料中對run命令的描述也不是非常完整,所以DockerOne組織翻譯了Docker官方的文件,以饗讀者。注意,本文基於最新的Docker 1.4文件翻譯。Docker會在隔離的容器中執行程序。當

DOCKER命令docker run 命令

docker run 命令可以新建並啟動一個容器。     他有幾個簡單的引數,此篇文章不做詳細說明,如果有興趣,請檢視本部落格另外一篇文章。   難點引數          -network     -network=bridge  預設選項,表示連線到預設的網橋。   

docker 命令-run命令

docker有一些常用的命令,可以通過幫助命令檢視全部命令 docker help 當然,我們也有一些常用的命令,下面對run命令進行簡單描述,引數說明,並不是全部內容,也只是列舉了部分常用的 run 命令:建立一個新的容器並執行一個命令 引數說明: -d: 

linuxValgrind工具集(八):Memcheck命令列引數

【linux】Valgrind工具集詳解(五):命令列詳解中不夠全,在此專門針對Memcheck工具中的命令列引數做一次詳細的解釋。 Memcheck命令列選項 –leak-check=<no|summary|yes|full> [default: summary]

linuxValgrind工具集(五):命令

一、使用方法 usage: valgrind [options] prog-and-args 使用方法:valgrind [引數選項] 程式和引數 二、選擇工具 tool-selection option, with default in [ ]: 工具選擇選項,預設值在[]

Docker(三):Dockerfile 命令

上一篇文章Docker(二):Dockerfile 使用介紹介紹了 Dockerfile 的使用,這篇文章我們來繼續瞭解 Dockerfile ,學習 Dockerfile 各種命令的使用。 Dockerfile 指令詳解 1 FROM 指定基礎映象 FROM 指令用於指定其後構建新映象所使用的基礎映象。FR

轉載瀏覽器緩存:expires cache-control last-modified

導致 lang -c csdn 判斷 屬性 lan -m load 最近在對CDN進行優化,對瀏覽器緩存深入研究了一下,記錄一下,方便後來者 畫了一個草圖: 每個狀態的詳細說明如下: 1、Last-Modified 在瀏覽器第一次請求某一個URL時,服務器端的返回

HTTP---HTTP狀態碼

無法 用戶輸入 格式 type 發送 pan http 節點 wiki https://en.wikipedia.org/wiki/List_of_HTTP_status_codes 1、百科名片 HTTP狀態碼(HTTP Status Code)是用以表示網頁服

HTMLHttp分段下載

多線程 ces 數值 alt locks www. 支持 read rand 一.為什麽需要Http分段下載 在實際的業務開發中,大文件使用Http普通下載非常容易OOM(內存溢出)或是鏈接超時的錯誤,這種情況下應該就應該考慮使用Http的分段下載了。下面筆者為你

Code First 屬性

map 時間 range get con 如果 per rem att 下面解釋每個配置的作用 Table :用於指定生成表的表名、架構信息。 Column :用於指定生成數據表的列信息,如列名、數據類型、順序等。 Key :用於指定任何名稱的屬性作為主鍵列並且默認將此列作

Lambda表達式

執行 pan mpi 新增 turn sum 下層 裏的 泛型類 前言 1、天真熱,程序員活著不易,星期天,也要頂著火辣辣的太陽,總結這些東西。 2、誇誇lambda吧:簡化了匿名委托的使用,讓你讓代碼更加簡潔,優雅。據說它是微軟自c#1

MySQLlower_case_table_names參數

安裝 系統 str pre 大寫 mysq db_name mysql 查看 簡介: lower_case_table_names 是mysql設置大小寫是否敏感的一個參數。 1.參數說明: lower_case_table_names=0 表名存儲為給定的大小和比較是

TestNGTestNG依賴測試

一、TestNG安裝與基本使用 參考部落格https://blog.csdn.net/df0128/article/details/83243822; 二、TestNG依賴的使用 TestNG支援用例或者組之間的依賴。 雖然我們有多種@Before可以使用,看起來和依賴效果一樣,

TestNGTestNG使用教程

一、TestNG介紹 TestNG是Java中的一個測試框架, 類似於JUnit 和NUnit, 功能都差不多, 只是功能更加強大,使用也更方便。 詳細使用說明請參考官方連結:https://testng.org/doc/index.html 二、TestNG安裝(基於eclipse

JAVA的內部類

轉載部落格: https://www.cnblogs.com/dolphin0520/p/3811445.html 作者:海 子   說起內部類這個詞,想必很多人都不陌生,但是又會覺得不熟悉。原因是平時編寫程式碼時可能用到的場景不多

linuxValgrind工具集(十五):Callgrind(效能分析圖)

一、概述 1、Callgrind Callgrind用於記錄程式中函式之間的呼叫歷史資訊,對程式效能分析。預設情況下,收集的資料包括執行的指令數,它們與原始碼行的關係,函式之間的呼叫者、被呼叫者關係以及此類呼叫的數量。可選項是,對快取記憶體模擬和分支預測(類似於Cachegrin