docker 建立映象及執行容器

2022-09-12 20:21:21 字數 2398 閱讀 5499

一、打包映象並執行

1、專案**打包上傳伺服器及相關配置檔案ip設定

2、編寫dockerfile

docker通過讀取dockerfile中的指令自動生成映像

dockerfile 一般分為四部分:基礎映象資訊、維護者資訊、映象操作指令和容器啟動時執行指令,』#』 為 dockerfile 中的注釋

from:指定基礎映象,必須為第乙個命令

格式:

from from :from @

示例:from golang:latest

注:tag或digest是可選的,如果不使用這兩個值時,會使用latest版本的基礎映象

maintainer:維護者資訊

格式:

maintainer 示例:

maintainer jasper xu

maintainer [email protected]

maintainer jasper xu

workdir:工作目錄,類似於cd命令

格式:

workdir /path/to/workdir

示例: workdir /a (這時工作目錄為/a)

workdir b (這時工作目錄為/a/b)

workdir c (這時工作目錄為/a/b/c)

注:通過workdir設定工作目錄後,dockerfile中其後的命令run、cmd、entrypoint、add、copy等命令都會在該目錄下執行

add:將本地檔案新增到容器中,tar型別檔案會自動解壓(網路壓縮資源不會被解壓),可以訪問網路資源,類似wget

格式:

add ... add ["",... ""] 用於支援包含空格的路徑

示例: add hom* /mydir/ # 新增所有以"hom"開頭的檔案

add hom?.txt /mydir/ # ? 替代乙個單字元,例如:"home.txt"

add test relativedir/ # 新增 "test" 到 `workdir`/relativedir/

add test /absolutedir/ # 新增 "test" 到 /absolutedir/

run:構建映象時執行的命令

run用於在映象容器中執行命令,其有以下兩種命令執行方式:shell執行格式:

runexec執行格式:

run ["executable", "param1", "param2"]

示例: run ["executable", "param1", "param2"]

run apk update

run ["/etc/execfile", "arg1", "arg1"]

注:run指令建立的中間映象會被快取,並會在下次構建中使用。如果不想使用這些快取映象,可以在構建時指定--no-cache引數,如:docker build --no-cache

expose:指定於外界互動的埠

格式:

expose [...]

示例: expose 80 443

expose 8080

expose 11211/tcp 11211/udp

注:expose並不會讓容器的埠訪問到主機。要使其可訪問,需要在docker run執行容器時通過-p來發布這些埠,或通過-p引數來發布expose匯出的所有埠

env:設定環境變數

格式:

env #之後的所有內容均會被視為其的組成部分,因此,一次只能設定乙個變數

env =... #可以設定多個變數,每個變數為乙個"="的鍵值對,如果中包含空格,可以使用\來進行轉義,也可以通過""來進行標示;另外,反斜線也可以用於續行

示例: env myname john doe

env mydog rex the dog

env mycat=fluffy

entrypoint:

的目的和cmd一樣,都是在指定容器啟動程式及引數

示例:

Docker建立映象檔案並在容器中執行

1.如何建立映象檔案 首先找到docker toolbox安裝的路徑,在路徑下直接新建dockerfile檔案 在dockerfile檔案裡寫入的內容為 from docker whalesay latest run apt get y update apt get install y fortun...

docker 映象 容器

windows下使用 everything 軟體 查詢 daemon.json 修改為如下 docker imagesdocker search 映象名稱docker search centosdocker pull tutum centosdocker rmi 映象iddocker rmi doc...

Docker基礎 查詢映象和執行容器

編者的話 本文是作者學習docker的筆記,涉及在windows上的安裝,介紹了映象和容器的知識和基本操作,適合docker初學者。3 天燒腦式容器儲存網路訓練營 深圳站 本次培訓以容器儲存和網路為主題,包括 docker plugin docker storage driver docker vo...