Bootstrapとdestroyとstart

これは非常に初歩的な質問です。

コンテナを2つセットアップし、落ち着いた時に起動するのを待っています。

しかし、なぜ常に以下のようにガイドされているのでしょうか?

./launcher bootstrap .. && ./launcher destroy .. && ./launcher start ..

初めて行う場合 — まあ、正直に言うと、bootstrapとrebuildの違いは全く理解していませんが、全知全能のAIが、初めて行うときはbootstrapを行うべきだと言っていました。なぜなら、それは奇妙な開発スタッフだからであり、その後は毎回rebuildで問題ないからです。

では… ./launcher rebuild web_only だけでいいのではないでしょうか?なぜなら、最初にdestroyを実行した場合、rebuildが失敗したときに再起動するものが何もなくなってしまうのではないですか?

すべてを更新する場合、まずweb_onlyを停止し、次にdataを実行し、最後にweb_onlyを実行する必要があることは理解しています。

リビルドを行うと、コンテナがシャットダウンされ、ブートストラップが実行され、古いコンテナが破棄され、新しいコンテナが起動します。

リビルドは、新しいコンテナを起動する場所ができるまで、既存のコンテナを破棄しません。

ブートストラップに失敗した場合、古いコンテナを自分で再起動できます。

初回は、リビルドを行わない理由はありません。

2回目以降のビルドでは、新しいコンテナがビルドされている間、既存のコンテナがリクエストを処理し続けられるように、ブートストラップを行いたいでしょう。

データコンテナについては、2つのデータベースインスタンスが同じファイルを変更しないように、常にリビルドを行いたいでしょう。

PGのアップグレードについては、データコンテナをリビルドする前に、すべてを停止する必要があります(いずれにせよ、Webはデータベースなしでは機能しません)。

リビルドは「git pull」も行うため、それを制御したい場合は代わりにブートストラップを使用できます。

「いいね!」 4

コンテナの概念を理解するのにまだ苦労していますが、私の頭を越えていくことがたくさんあります。

しかし、今では順序、つまり「何」、「いつ」、「(ほぼ)なぜ」がわかりました。

ありがとうございます。

「いいね!」 1

コンピューター全体のハードドライブのようなものです。コンテナは、接続方法が限られている(ポート経由またはOSからアクセス可能なファイルが更新される)コンピューター全体です。

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.