まず実行できないこと
docker run "existing container" command
このコマンドはコンテナではなく画像を想定しているため、いずれにせよ新しいコンテナが生成されます (見たいコンテナではありません)。
docker では、別の方法で考えるように自分自身をプッシュする必要があるという事実に同意します (したがって、コンテナーにログオンする必要がないように方法を見つける必要があります)。その周りに。
DEAMON モードでスーパーバイザーを介してコマンドを実行します。
次に、私が呼んでいるものを実行しますdocker_loop.sh
。内容はほとんど次のとおりです。
#!/bin/bash
/usr/bin/supervisord
/usr/bin/supervisorctl
while ( true )
do
echo "Detach with Ctrl-p Ctrl-q. Dropping to shell"
sleep 1
/bin/bash
done
それが行うことは、コンテナに「アタッチ」し、supervisorctl
停止/開始/再起動してログを確認するためのインターフェイスを提示できるようにすることです。それでも十分でないCtrl+D
場合は、通常のシステムであるかのように覗き見できるシェルにドロップすることができます。
このシステムは、シェルのないコンテナを使用する場合ほど安全ではないことも考慮してください。そのため、コンテナを保護するために必要なすべての手順を実行してください。