如果要从Pycharm中调试启动,需要设置相应参数,这些参数可以参考docker-compose.yml文件中Cello-operator-dashboard容器定义的ENV参数,但该模板文件定义时大量使用了环境变量的引用,需要自己推导,一个简单的办法是使用docker inspect指令,先获得已经运行的该容器的环境参数,如下所示:
"Env": [
"DEBUG=False",
"LOG_LEVEL=INFO",
"STATIC_FOLDER=static",
"TEMPLATE_FOLDER=templates",
"ENABLE_EMAIL_ACTIVE=False",
"BROKER=amqp://cello:[email protected]:5672/cello",
"BACKEND=amqp://cello:[email protected]:5672/cello",
"SSO_KEY=cello-operator-dashboard",
"SSO_SECRET=420d07b2-a4b2-4f63-85ce-ddf2b94831d5",
"SERVER_PUBLIC_IP=127.0.0.1",
"KEYCLOAK_REALM=cello-realm",
"KEYCLOAK_SERVER_PORT=8083",
"KEYCLOAK_ADMIN_NAME=keycloak-admin",
"KEYCLOAK_ADMIN_PASSWORD=password",
"PARSE_API_ROOT=http://parse:1337/parse",
"PARSE_SERVER_APPLICATION_ID=application-id",
"PARSE_SERVER_MASTER_KEY=master-key",
"PARSE_SERVER_REST_API_KEY=rest-api-key",
"PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
"PYTHON_VERSION=3.6.8",
"PYTHON_PIP_VERSION=19.0.3"
],
"Cmd": [
"/bin/sh",
"-c",
"/etc/init.d/supervisor start && bash /app/init_client_secrets.sh && if [ \"$DEBUG\" = \"True\" ]; then python dashboard.py ; else gunicorn -w 1 --worker-class eventlet -b 0.0.0.0:8080 dashboard:app ;fi"
],
对比docker-compose.yml模板的容器ENV参数,配置需要的环境变量即可,如下图:
