Скрипт развертывания Openshift с nohup - PullRequest
0 голосов
/ 14 февраля 2019

Я пишу веб-приложение Python Flask, которое развертываю на Openshift в контейнере (изображение Python S2I).Затем, после развертывания, я хочу запустить 1 процесс Python и 1 рабочий-сельдерей.Я использую для этого пост-жизненного цикла ловушку в модуле развертывания settings in openshift

Мой скрипт runFirst.py представлен ниже - я использую nohup &, чтобы поместить эти процессы в задний план:

#!/usr/bin/env python3

import subprocess
import os

print("start")
subprocess.run(['nohup', 'python', 'app/services/consumer.py', '</dev/null', 
'> nohup1.out', '2>nohup1.out', '&'])
subprocess.run(['nohup', 'celery', '-A', 'app.celery', 'worker', '-- 
pool=eventlet', '</dev/null', '> nohup2.out', '2>nohup2.out', '&'])
print("end")

Однако после развертывания модуля pod я получаю следующие журналы, которые доказывают, что сценарии не работают до конца и не помещают процессы в фоновый режим:

--> post: Running hook pod ...
start
Consumer is working...

Более того,Когда я захожу в модуль и проверяю процессы командой top, я не вижу этот процесс.

...