我正在使用docker-compose调用服务,我希望配置文件中的值通过我提供给docker compose的值替换为参数
像docker-compose up -e"运行时通过docker撰写的值#34;
URL for server
SERVERADD=https://{{value at run time via docker compose}}/{{index}}
我可以通过环境变量或任何其他方式来完成此事吗亲切建议!!!
答案 0 :(得分:0)
这通常是在图片中内置的ENTRYPOINT
或CMD
脚本中完成的。
脚本检查环境变量,执行替换或其他所需的工作,然后继续像以前一样运行命令。
#!/bin/sh
if [ -n "$SOME_ENV" ]; then
sed -i '' -e 's/^param=.*/param='"$SOME_ENV"'/' /etc/file.conf
fi
exec "$@"
需要将脚本添加到图像中,Dockerfile可以是:
FROM whatever
COPY docker-entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]
CMD [ "run_server", "-o", "option" ]