docker run -e傳遞環(huán)境變量的過程
docker run -e傳遞環(huán)境變量
1. Dockerfile
FROM openjdk:8-jdk-alpine MAINTAINER fengqiangboy shenzhen <fengqiangboy@gmail.com> RUN mkdir -p /usr/local/proxy-server COPY startup.sh /usr/local/proxy-server RUN cd /usr/local/proxy-server && \ chmod +x startup.sh WORKDIR /usr/local/proxy-server # 設(shè)置環(huán)境變量 USERNAME 默認(rèn)值為 admin,后面可以通過docker run -e USERNAME="XXXXXX"修改,這個(gè)環(huán)境變量在容器里也可以$USERNAME獲取 ENV USERNAME admin RUN echo 'USERNAME=' $USERNAME # 打印一下默認(rèn)值 # 運(yùn)行 startup.sh腳本,$USERNAME傳遞參數(shù)到腳本中,不能用 CMD []這種形式,這種方式讀取不到變量 CMD sh startup.sh $USERNAME
2. startup.sh
#!/bin/bash
MODULE=$1 # 定義變量為上面?zhèn)鞯?$USERNAME 第一個(gè)參數(shù)
echo 'MODULE=' ${MODULE} # 打印如果想替換參數(shù)使用命令
sed -i "s/<USERNAME>/$USERNAME/" config.properties,必須用雙引號(hào),用單引號(hào)不能讀取變量
查看最終文件目錄
[root@wanfei test-docker]# ls Dockerfile startup.sh
3. 制作鏡像
[root@wanfei test-docker]# docker build -t www/test-docker .
4. 運(yùn)行鏡像
[root@wanfei test-docker]# docker run --name docker -e USERNAME="WANFEI" www/test-docker MODULE= WANFEI
打印成功
WANFEI
到此這篇關(guān)于docker run -e傳遞環(huán)境變量的文章就介紹到這了,更多相關(guān)docker run -e傳遞環(huán)境變量內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker跨架構(gòu)部署實(shí)操小結(jié)
本文主要介紹了Docker跨架構(gòu)部署實(shí)操小結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-07-07
docker在已有的tomcat鏡像上打新的鏡像的Dockerfile編寫說明介紹
這篇文章主要介紹了docker在已有的tomcat鏡像上打新的鏡像的Dockerfile編寫說明介紹,需要的朋友可以參考下2016-10-10
檢查當(dāng)前Docker使用的默認(rèn)運(yùn)行時(shí)(default runtime)的三種方法
本文介紹了三種檢查當(dāng)前Docker使用的默認(rèn)運(yùn)行時(shí)的方法,方法一:查看Docker配置文件;方法二:使用Dockerinfo命令輸出;方法三:檢查特定容器的運(yùn)行時(shí),文中詳細(xì)的給大家介紹了這三種方法,需要的朋友可以參考下2025-05-05
Windows的docker刪除容器后WSL2磁盤空間不釋放的問題的解決方法
很多同學(xué)拉取鏡像使用一段時(shí)間后發(fā)現(xiàn) C 盤快滿了,把之前用過的鏡像和容器刪除,發(fā)現(xiàn) WSL 掛載目錄的虛擬磁盤大小沒有變化,非常的奇怪,所以本文介紹了Windows的docker刪除容器后WSL2磁盤空間不釋放的問題的解決方法,需要的朋友可以參考下2024-12-12
Navicat 連接服務(wù)器端中的docker數(shù)據(jù)庫的方法
這篇文章主要介紹了Navicat 連接服務(wù)器端中的docker數(shù)據(jù)庫,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
Spring Boot使用Docker分層打包的設(shè)置方法
Spring Boot 現(xiàn)在支持分層打包技術(shù)了, 我們也來用一用, 加速Docker打包, 構(gòu)建的時(shí)候速度也會(huì)非常快.本文重點(diǎn)給大家介紹Spring Boot使用Docker分層打包的設(shè)置方法,感興趣的朋友一起看看吧2021-08-08

