2017-04-19 25 views
0

我已經在容器中安裝了tomcat,裏面有應用程序配置文件。我想在運行時在其中填充一個值。 (在此之前,我不知道構建映像時不能填充的值)我想在運行時通過docker撰寫配置文件中的條目撰寫

我正在使用docker-compose調用服務,並且我希望配置文件中的值通過我提供的值進行替換到泊塢窗「通過泊塢窗撰寫在運行時間值」構成爲參數

像碼頭工人,組成了-e

URL for server 
SERVERADD=https://{{value at run time via docker compose}}/{{index}} 

我能做到這一點與環境變量或任何其他方式好心建議!

回答

0

這通常是在內置於圖像中的ENTRYPOINTCMD腳本中完成的。

該腳本檢查環境變量,是否需要替換或其他工作,然後繼續像以前一樣運行該命令。

#!/bin/sh 
if [ -n "$SOME_ENV" ]; then 
    sed -i '' -e 's/^param=.*/param='"$SOME_ENV"'/' /etc/file.conf 
fi 
exec "[email protected]" 

腳本需要添加到圖像時,Dockerfile可能是:

FROM whatever 
COPY docker-entrypoint.sh /entrypoint.sh 
ENTRYPOINT [ "/entrypoint.sh" ] 
CMD [ "run_server", "-o", "option" ]