Dockerfile 指令 - 三(COPY)

鏡像定制都會使用 Dockerfile 的一些指令特碳,比如 FROM全蝶、RUN、ADD、COPY等爱沟,其實利用Dockerfile定制鏡像所需要的指令會比較多捞烟,Dockerfile 功能非常強大嗽仪,可以提供很多的指令鳄哭。

COPY 復制文件

格式:

  • COPY [--chown=<user>:<group>] <源路徑>... <目標路徑>
  • COPY [--chown=<user>:<group>] ["<源路徑1>",... "<目標路徑>"]

和 RUN 指令一樣,也有兩種格式萎胰,一種類似于命令行碾盟,一種類似于函數(shù)調用

COPY 指令將從構建上下文目錄中 <源路徑> 的文件/目錄復制到新的一層的鏡像內的 <目標路徑> 位置冰肴。如,

FROM nginx:latest
COPY hello.txt home/
COPY html/index.html /usr/share/nginx/

<源路徑> 可以是多個榔组,甚至可以是通配符,通配符要滿足 Go 的 filepath.Match 規(guī)則搓扯,如,

COPY hom* /mydir/
COPY hom?.txt /mydir/

<目標路徑> 可以是容器內的絕對路徑锨推,也可以是相對于工作目錄的相對路徑(工作目錄可以用 WORKDIR 指令來指定)。目標路徑不需要事先創(chuàng)建换可,如果目錄不存在會在復制文件前先行創(chuàng)建缺失目錄。

COPY 指令還會保留源文件的各種元數(shù)據(jù)沾鳄。比如讀、寫洞渔、執(zhí)行權限、文件變更時間等磁椒。這個特性對于鏡像定制很有用。特別是構建相關文件都在使用 Git 進行管理的時候浆熔。

在使用該指令的時候還可以加上 --chown=<user>:<group> 選項來改變文件的所屬用戶及所屬組。

COPY --chown=55:mygroup files* /mydir/
COPY --chown=bin files* /mydir/
COPY --chown=1 files* /mydir/
COPY --chown=10:11 files* /mydir/

如果源路徑是文件夾医增,復制的時候不是直接復制該文件夾,而是將文件夾中的內容復制到目標路徑茫多。

構建過程
查看Dockerfile 所在目錄的結構

[root@ip-10-1-0-142 mynginx]# tree
.
├── app
│ ├── app.jar
│ ├── hello.txt
│ └── html
│ └── index.html
└── Dockerfile

2 directories, 4 files
[root@ip-10-1-0-142 mynginx]#

鏡像構建

[root@ip-10-1-0-142 mynginx]# docker build -f Dockerfile -t docker:v2 app
Sending build context to Docker daemon 3.631kB
Step 1/3 : FROM nginx:latest
---> 08b152afcfae
Step 2/3 : COPY hello.txt home/
---> Using cache
---> 7d8a97c733a6
Step 3/3 : COPY html/index.html /usr/share/nginx/
---> Using cache
---> dfa69cdc3b6d
Successfully built dfa69cdc3b6d
Successfully tagged docker:v2
[root@ip-10-1-0-142 mynginx]# ls
app Dockerfile

運行一個容器

[root@ip-10-1-0-142 mynginx]# docker run -itd --name docekr3 -p 82:80 docker:v2 bash
c3660ca7af4a53ea3d6f03a8bc3a795ba3c83a9e7f1b9bcdc3cfac646fdea20d

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末忽刽,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子跪帝,更是在濱河造成了極大的恐慌,老刑警劉巖伞剑,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異恕刘,居然都是意外死亡,警方通過查閱死者的電腦和手機雪营,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門衡便,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人镣陕,你說我怎么就攤上這事〈粢郑” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵鹊碍,是天一觀的道長食绿。 經(jīng)常有香客問我公罕,道長,這世上最難降的妖魔是什么楼眷? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮罐柳,結果婚禮上,老公的妹妹穿的比我還像新娘张吉。我一直安慰自己,他們只是感情好芦拿,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蔗崎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缓苛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天未桥,我揣著相機與錄音,去河邊找鬼冬耿。 笑死,一個胖子當著我的面吹牛亦镶,可吹牛的內容都是我干的。 我是一名探鬼主播缤骨,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼绊起!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤栅表,失蹤者是張志新(化名)和其女友劉穎荡碾,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體坛吁,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡铐尚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了宣增。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片玫膀。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡爹脾,死狀恐怖,靈堂內的尸體忽然破棺而出灵妨,到底是詐尸還是另有隱情,我是刑警寧澤泌霍,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站朱转,受9級特大地震影響,放射性物質發(fā)生泄漏藤为。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一缅疟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧窿吩,春花似錦、人聲如沸纫雁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刽脖。三九已至,卻和暖如春曲管,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背院水。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留檬某,地道東北人。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓恢恼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親场斑。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內容