セルフホストの自動更新
セルフホストのNowledge Mem Dockerサーバーでブラウザベースの更新を有効にする
セルフホストのDockerサーバーは、Webアプリから新しいNowledge Memリリースを確認できます。 それらのリリースをブラウザからインストールするかどうかはオプトインです。 これはサーバー自体を変更するためです。
これは公式の nmemctl Docker デプロイメント向けです
アプリ内自動更新には、公式のcommunity/dockerレイアウトとそのnmemctlヘルパーが必要です。
NASアプリストア、NAS Container Managerテンプレート、Portainer、Unraid、または独自のカスタムcomposeファイルからMemをインストールした場合、アプリは新しいバージョンが存在することを表示するかもしれませんが、そのデプロイメントを安全に書き換えることはできません。
インストールしたのと同じ場所から更新するか、独自のDockerイメージのpull/recreateフローを使用してください。
設定ページに自動更新が構成されていないと表示される場合は、サーバーに一度SSHで接続して次を実行します:
cd community/docker
./nmemctl auto-update enableこのコマンドは、デプロイごとのアップデータートークンを作成し、小さなコンパニオンアップデーターコンテナを起動し、Webアプリが将来のMemイメージをダウンロードしてインストールできるようにします。
サーバーにcommunity/dockerまたは./nmemctlが存在しない場合、この更新パスには乗っていません。
これは自分が管理するサーバーでのみ使用してください
アップデーターコンパニオンコンテナは、Memコンテナを置き換えるためにDockerへのアクセスを必要とします。 そのため、サーバーホストで明示的に有効化するまでブラウザからのインストールは無効になっています。
アプリでの変更点
公式の自動更新を有効にすると:
- 新しいサーバーイメージが利用可能になると、タイトルバーに更新バッジが表示されます。
- 設定には、現在のサーバーバージョン、利用可能な最新バージョン、およびリリースノートへのリンクが表示されます。
- ダウンロードはMemをオフラインにすることなく、バックグラウンドでイメージを取得します。
- インストールは、アップグレード前のスナップショットを取得し、コンテナを再作成し、サーバーが復帰したらページを再接続します。
インストールのたびに、直近3つのアップグレード前スナップショットが./cacheに保持されます。
新しいイメージが起動に失敗した場合、設定にスナップショットのパスが表示されるので、サーバーから復元できます:
./nmemctl import <snapshot-path> --force便利なコマンド
./nmemctl auto-update status
./nmemctl auto-update rotate
./nmemctl auto-update upgrade
./nmemctl auto-update disablestatusは、自動更新が有効かどうかと、どのスナップショットが保持されているかを表示します。rotateは、アップデータートークンを置き換えます。upgradeは、コンパニオンアップデーターコンテナ自体を更新します。disableは、アップデーターコンテナを削除しますが、既存のスナップショットは保持します。
リモートインストール
更新の確認は常に安全で、Web UIから利用できます。 ダウンロードとインストールはサーバー側の操作であるため、サーバーのリモート操作設定によって保護されています。
./nmemctl auto-update enableは、通常のWebアップグレードフロー用にこれを構成します。
後でこれをオフにした場合は、信頼できるプライベートネットワーク上にいるときに設定から リモートサーバーアップグレード を有効にするか、SSHからアップグレードを実行します:
./nmemctl upgrade <version>詳細
バックアップ、メモリサイジング、TLS、移行を含む完全なDockerデプロイメントガイドについては、Docker Deploymentを参照してください。
