Задать вопрос
kentuck1213
@kentuck1213

Почему supervisor не видит системные переменные?

my_app.ini:
[program:my_app]
command=/bin/bash /my_app/run.sh
directory=/my_app/
user=gitlab-runner
autostart=true
autorestart=true
stdout_logfile=/my_app/log/service-out.log
stderr_logfile=/my_app/log/service-out.log
stopsignal=INT
stopasgroup=true

run.sh:
#!/usr/bin/env bash

export PROJECT_ROOT=/my_app/
source ${PROJECT_ROOT}/.env/bin/activate

cd ${PROJECT_ROOT}

uwsgi --ini ${PROJECT_ROOT}/uwsgi.ini

После запуска, в логах появляется ошибка:
File "./config/settings_pro.py", line 7, in <module>
    SECRET_KEY = os.environ['SECRET_KEY']
  File "/usr/lib64/python3.6/os.py", line 669, in __getitem__
    raise KeyError(key) from None
KeyError: 'SECRET_KEY'
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI master process (pid: 5330)
spawned uWSGI worker 1 (pid: 5332, cores: 1)
spawned uWSGI worker 2 (pid: 5333, cores: 1)
spawned uWSGI worker 3 (pid: 5334, cores: 1)
spawned uWSGI worker 4 (pid: 5335, cores: 1)
spawned uWSGI worker 5 (pid: 5336, cores: 1)
spawned uWSGI worker 6 (pid: 5337, cores: 1)
spawned uWSGI worker 7 (pid: 5338, cores: 1)
spawned uWSGI worker 8 (pid: 5339, cores: 1)
spawned uWSGI worker 9 (pid: 5340, cores: 1)
spawned uWSGI worker 10 (pid: 5341, cores: 1)

Но есть запустить самим вручную:
bash run.sh
Никаких проблем нет, все переменные видны.
  • Вопрос задан
  • 272 просмотра
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
martin74ua
@martin74ua
Linux administrator
а SECRET_KEY чья переменная? В плане - у какого юзера она задана?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы