これは少し複雑な質問かもしれませんが、私はすべての提案を私に投げてみるために開いています。ドッカーからwebsocketへの色付き出力
私はgitリポジトリのクローンをドッキングウィンドウのインスタンスを実行しています、それはPHP 7 Apacheのドッキングウィンドウのインスタンスです:Symfony Process Componentで
FROM php:7.0-apache
私はコンテナを起動し、私の環境変数を渡しています。
"docker run -e REPOSITORY=\"{$url}\"
-e COMPOSER_ALLOW_SUPERUSER=1
-e TERM='xterm-256color' arbiter bash -l"
は、私は(これは間違っているなら、私を修正)色の出力を取得していますことを確認するxterm-256-color
環境を追加しました。
コンテナの出力を表示するには、Symfony Process Componentを使用してwebsocketに送信します。
$process->run(function ($type, $buffer) use ($socket) {
socket_write($socket, $buffer, strlen($buffer));
});
この時点では、リアルタイムでWebページに表示するためにsocket.ioのようなものを使用できます。
問題は、ターミナルで通常見られるように、ドッカーの出力を適切な色づけで表示したいということです。すべての書式設定と色分けがこの時点で失われているようです。
ドッカーの出力をwebsocketに渡しても、Webページに表示するために私の色付けを維持できますか?
私はここでたくさんお尋ねしているので、正しい方向に私を導くヒントやヒントは歓迎します。
読んでいただきありがとうございます。
編集は
私はまだ(作曲例)ドッキングウィンドウコンテナから私に与えられた出力は、単純に次のようになり、これまで任意の色の出力を取得していない午前明確にする:
[2017-02-12 01:02:56] local.INFO: remote: Counting objects: 69, done.
remote: Compressing objects: 2% (1/47)
remote: Compressing objects: 4% (2/47)
カラー出力の形式は何ですか? ANSIの色ですか? (すなわち、終端色)を生成する。そうであれば、それをHTMLカラーに変換する何かが必要になります。これは別の話です。次のようなものがあります:https://github.com/sensiolabs/ansi-to-html – Robert
websocketに渡すとわかるような書式はありません。私はそれをログファイルに出力すると、私も色付きの出力を得ていません。私は実際に私のコンテナに潜入すると、 'docker run -it -e REPOSITORY =" https://github.com/stephan-v/test.git "arbiter'私は出力を色づけしています。 –