11.dockerfile之ENV指令


一、ENV指令說明


 ENV指令用來在鏡像構建過程中設置環境變量,后續的RUN可以使用它所創建的環境變量

當創建基於該鏡像的container的時候,會自動擁有設置的環境變量

 

二、ENV案例


首先,編寫dockerfile:

#base image
FROM centos

#MAINTAINER,this dockerfile creater
MAINTAINER loose@docker.com

#設置環境變量
ENV env variable

其次,構成鏡像:

最后,進入偽交互模式,並通過env命令查詢環境變量:

說明:

1.通過ENV定義的環境變量,可以被后面的所有指令中使用,比如我們構建了nginx:v1.0鏡像,配置了ENV  env  123;以nginx:v1.0為基礎鏡像再構建一個新的鏡像jdk:v1.0,那么jdk:v1.0也會擁有該環境變量:

再次創建一個鏡像,以上方的eng:v1.0鏡像為基礎鏡像:

#base image
FROM eng:v1.0

#MAINTAINER,this dockerfile creater
MAINTAINER loose@docker.com

構建一個新的鏡像:

進入交互模式,然后通過env命令查詢環境變量:

2.通過ENV定義的環境變量,可以在dockerfile被后面的所有指令中使用

ENV env variable
RUN mkdir $env

3.通過ENV定義的環境變量不能被CMD指令使用,也不能被docker run 的命令參數引用

4.在docker run 命令中通過 -e標記來傳遞環境變量,這樣容器運行時就可以使用該變量:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM