docker 启动某个镜像时,执行source ~/.bash_profile方法
docker容器启动时,需要生效一下配置的环境变量,环境变量配置在镜像内部的~/.bash_profile文件内,但是每次启动时,都不能自动执行source,环境变量无法生效。经多方调研,发现镜像启动时,自动执行的是~/.bashrc文件,所以,环境变量需要配置在该文件内,这样镜像启动时,可自动执行该文件,使环境变量生效。具体可参考以下链接:https://askubuntu.com/...
·
docker容器启动时,需要生效一下配置的环境变量,环境变量配置在镜像内部的~/.bash_profile文件内,但是每次启动时,都不能自动执行source,环境变量无法生效。
经多方调研,发现镜像启动时,自动执行的是~/.bashrc文件,所以,环境变量需要配置在该文件内,这样镜像启动时,可自动执行该文件,使环境变量生效。
具体可参考以下链接:
上面的方式,如果在docker stack方式启动镜像,并设置CMD 自动启动服务时,会因为
CMD设置的启动服务指令,在执行source之前,所以还是会报错。
此时,使用env
environment:
- LD_LIBRARY_PATH="/home/dmdbms/bin:$LD_LIBRARY_PATH"
- DM_HOME="/home/dmdbms"
- PATH=$PATH:/home/dmdbms/bin
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdbms/bin
即可
更多推荐
已为社区贡献6条内容
所有评论(0)