問題タブ [symfony-process]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - docker から websocket へのカラー化された出力
これは少し複雑な質問かもしれませんが、私に投げかけられたすべての提案を試すことにオープンです。
私はgitリポジトリをクローンするdockerインスタンスを実行しています.php 7 apache dockerインスタンスです:
Symfony Process Componentを使用して、コンテナーを起動し、環境変数を渡します。
色付きの出力が得られるように環境を追加しましたxterm-256-color
(これが間違っている場合は修正してください)。
コンテナーの出力を表示するために、Symfony Process Component を使用して Websocket に送信しています。
この時点で、socket.io のようなものを使用して、Web ページにリアルタイムで表示できます。
問題は、ターミナルで通常表示されるように、docker の出力を適切な色で表示したいことです。ただし、この時点では、すべての書式設定と色が失われているようです。
docker の出力を websocket に渡し、色を維持して Web ページに表示できる Web はありますか?
ここで多くの質問をしているので、正しい方向に導くためのヒントやヒントは大歓迎です。
読んでくれてありがとう、乾杯。
編集
明確にするために、私はまだ色付きの出力を取得していません。これまでのところ、docker コンテナーから与えられた出力は次のようになります (コンポーザーの例):
php - Symfony プロセスがコマンドを実行しない
コントローラ メソッドから、バックグラウンドで Symfony コマンドを実行したいと考えています。
実行する$process->getPid();
とpidが取得されるため、プロセスは機能しているように見えますが、コマンドは実行されません。
私は調査し、いくつかのテストを行い、次の結果に達しました: クラスProcess.php ( $this->status = self::STATUS_STARTED;
) の 290 行目にコメントを付けると、コマンドが実行されます。いいえの場合、何も起こりません。
誰もこの問題に遭遇したことがありますか? 何が原因でしょうか? Symfony 2.8.28 と PHP 7.1.10 を使用することを指定します。この問題は、MacOS および Ubuntu Server で発見されています。
プロセスをダンプし、手動で表示されたコマンドを実行すると、すべてが機能します。