前言
docker可以为容器配置环境变量。配置的途径有两种:
在制作镜像时,通过ENV命令为镜像增加环境变量。在容器启动时使用该环境变量。
在容器启动时候,通过参数配置环境变量,如果与镜像中有重复的环境变量,会覆盖镜像的环境变量。
使用
docker exec {containerID} env即可查看容器中生效的环境变量。
[root@localhost ~]# docker exec 984 env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/java/default/bin
TERM=xterm
AUTHORIZED_KEYS=**None**
JAVA_HOME=/usr/java/default
HOME=/root
...容器启动的进程,也就是ENTRYPOINT+CMD中,可以通过相应的系统库获取容器的环境变量。
进入到容器中,查看进程的环境变量,可以通过/proc下进行查看。
cat /proc/{pid}/environ因此,容器中的环境变量也可以通过在容器中查看1号进程的环境变量来获取。可以通过执行cat /proc/1/environ |tr ‘
