2017-03-21 10 views
0

私はPhpStormで画像を作成しています(ポータブル開発環境を構築する努力の一環として)。 PhpStormがそれ自体を再起動することができないことを除いて、すべてがかなりスムーズに実行されます。その目的のために、bin/restart.pyスクリプトを使用します。これは、ドッキングされたときには機能しません。コンテナ内のプロセスを再起動する方法/元のrestart.pyを使用してPhpStormを再起動する

これは、スクリプト体である: - すぐに親プロセスが終了した後、すなわち

#!/usr/bin/env python 

# Waits for the parent process to terminate, then executes specified commands. 

import os 
import signal 
import sys 
import time 

if len(sys.argv) < 3: 
    raise Exception('usage: restart.py <pid> <path> [optional command]') 

signal.signal(signal.SIGHUP, signal.SIG_IGN) 

pid = int(sys.argv[1]) 

while os.getppid() == pid: 
    time.sleep(0.5) // *** 

if len(sys.argv) > 3: 
    to_launch = sys.argv[3:] 
    os.spawnv(os.P_WAIT, to_launch[0], to_launch) 

to_launch = ['/usr/bin/open', sys.argv[2]] if sys.platform == 'darwin' else [sys.argv[2]] 
os.execv(to_launch[0], to_launch) 

スクリプトが***でマークされた行まで実行されます。

bashルートプロセスを使用してPhpStormを実行しようとしましたが、dumb-initまたはTINIプロセスで差をつけずに実行しました。

何が間違っているのか、これを「修正」する方法はありますか?ルートプロセスで実装されなければならない特定のシグナルがあるのか​​、それともそのような用途を許さないドッカーの性質ですか?

答えて

0

問題の最も簡単な解決策は、コンテナを最初に再起動することです。これはコンテナを再起動することです。

+0

PhpStormの再起動が機能しないため、解決策ではありません。 – Onkeltem

関連する問題