python - Using docker environment -e variable in supervisor -
i've been trying pass in environment variable docker container via -e option. variable meant used in supervisor script within container. unfortunately, variable not resolved (i.e. stay instance$instancename). tried ${var} , "${var}", didn't either. there can or not possible?
the docker run command:
sudo docker run -d -e "instancename=instance-1" -e "foo=2" -v /var/app/tmp:/var/app/tmp -t myrepos/app:tag and supervisor file:
[program:app] command=python test.py --param1=$foo stderr_logfile=/var/app/log/$instancename.log directory=/var/app autostart=true
the variable being passed container, supervisor doesn't let use environment variables inside configuration files.
you should review supervisor documentation, , parts string expressions. example, command option:
note value of
commandmay include python string expressions, e.g./path/to/programname --port=80%(process_num)02dmight expand/path/to/programname --port=8000@ runtime.string expressions evaluated against dictionary containing keys
group_name,host_node_name,process_num,program_name, here (the directory of supervisord config file), , supervisord’s environment variables prefixedenv_.
Comments
Post a Comment