./launcher rebuild app for old 1.6 discourse が機能しない

パズルの最後のピースです。

古いフォーラムを新しい場所に移動しましたが、まだアクセスが必要です。app.yml を編集してドメイン名を変更し、./launcher/ rebuild app --skip-prereqs を実行して更新しましたが、失敗しました。

Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 60 app
app
2.0.20230116-0051: Pulling from discourse/base
e01f084ee363: Already exists 
db2fb8a75c87: Already exists 
6e789f3cf3a6: Already exists 
afa15f3b4f49: Already exists 
bd9a8f354aab: Already exists 
7492e41ba139: Already exists 
17620c643046: Already exists 
24a2215b994e: Already exists 
3119b33deb35: Already exists 
32a8b7f7c0e8: Already exists 
2dbcf46b2450: Already exists 
bdc228d4887d: Already exists 
914f28af582f: Already exists 
4a67c541b202: Already exists 
d3fc17f1b671: Already exists 
77b3d250e54b: Already exists 
9329aa462aa8: Already exists 
daeee236a97d: Already exists 
b7746b7c02a0: Already exists 
5c28ac2537d4: Already exists 
56d3ef9b7e39: Already exists 
3bb00ba1ec5a: Already exists 
1f758f6d6132: Already exists 
374c5f9048f9: Already exists 
0259a5d2f899: Already exists 
3ad74725ef87: Already exists 
f61c04c40065: Already exists 
1917d29aeb87: Already exists 
6bf5a4e9b5be: Already exists 
0f99e9c433c1: Already exists 
5c757ebc11e3: Already exists 
eb1d61649fc0: Already exists 
b3fce4a2403d: Already exists 
2252a5634a08: Already exists 
3b67775f0e8d: Already exists 
fb7e87c0cabf: Already exists 
f0ba17f026a5: Already exists 
aa579fdb2c50: Already exists 
9b282f6a881a: Already exists 
e60b39d46409: Already exists 
4e9e640a98df: Already exists 
0d2ba21fdd7e: Already exists 
5871f9f51cef: Already exists 
2a25ca72ae61: Already exists 
a6b1f035e2fa: Already exists 
4f13760fda63: Already exists 
856119d0afd5: Already exists 
0d289e5416ba: Already exists 
7ee9fa0f4507: Already exists 
aa6751fe4791: Already exists 
a586d833efb5: Already exists 
769ebf485619: Already exists 
701cfc339927: Already exists 
Digest: sha256:xxx
Status: Image is up to date for discourse/base:2.0.20230116-0051
/usr/local/lib/ruby/gems/3.1.0/lib/pups.rb
/usr/local/bin/pups --stdin
flag provided but not defined: --shm-size
See '/usr/bin/docker run --help'.
cat: cids/app_bootstrap.cid: No such file or directory
bootstrap failed with exit code 2
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
Container name cannot be empty

DISCOURSE DOCTOR Tue Jan 24 13:46:45 GMT 2023
OS: Linux xxxx01 3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux


Found containers/app.yml

==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=forumsold.xxxxx.com
SMTP_ADDRESS=smtp.xxxxx.com # (mandatory)
DEVELOPER_EMAILS=xxxxxx
SMTP_PASSWORD=xxxxx # (optional)
SMTP_PORT=25 # (optional)
SMTP_USER_NAME=xxxxx # (optional)
LETSENCRYPT_ACCOUNT_EMAIL=

==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 1.7.0, build 0baf609

DOCKER PROCESSES (docker ps -a)

CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS                      PORTS               NAMES
456040e68bec        local_discourse/app   “/sbin/boot”        6 years ago         Exited (5) 52 minutes ago                       app                 
91834fc0d913        hello-world           “/hello”            7 years ago         Exited (0) 7 years ago                          ecstatic_poitras    

==================== SERIOUS PROBLEM!!!! ====================
app not running!
Attempting to rebuild
==================== REBUILD LOG ====================
ERROR: Docker version 1.7.0 not supported, please upgrade to at least 17.03.1, or recommended 17.06.2
==================== END REBUILD LOG ====================
Failed to rebuild app.

Checking your domain name . . .

Connection to xxxx.xxxxxx.com succeeded.
You should probably remove any non-standard plugins and rebuild.
Attempting to restart existing container. . . 
ERROR: Docker version 1.7.0 not supported, please upgrade to at least 17.03.1, or recommended 17.06.2
Failed to restart the container.

==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved.git

No non-official plugins detected.

See https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb for the official list.

========================================
Discourse version at xxxx.xxxx.com: NOT FOUND
Discourse version at localhost: NOT FOUND


==================== MEMORY INFORMATION ====================
RAM (MB): 4048

             total       used       free     shared    buffers     cached
Mem:          3953       2058       1894          0         13       1811
-/+ buffers/cache:        233       3719
Swap:         2047        134       1913

==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        79G   66G  9.5G  88% /

==================== DISK INFORMATION ====================

WARNING: GPT (GUID Partition Table) detected on '/dev/vda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/vda: 85.9 GB, 85899345920 bytes
255 heads, 63 sectors/track, 10443 cylinders, total 167772160 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1               1   167772159    83886079+  ee  GPT

==================== END DISK INFORMATION ====================

==================== MAIL TEST ====================
For a robust test, get an address from http://www.mail-tester.com/
Or just send a test message to yourself.
Email address for mail test? ('n' to skip) [xxxxxx]: n
Mail test skipped.
Replacing: SMTP_PASSWORD
Replacing: LETSENCRYPT_ACCOUNT_EMAIL
Replacing: DEVELOPER_EMAILS
Replacing: DISCOURSE_DB_PASSWORD
Replacing: Sending mail to

==================== DONE! ====================

インストール全体を移動した場合、アップグレードを試みる前にコンテナを起動しようとしましたか?

バックアップがあるのに、なぜ新しいインストールに復元しないのですか?

1.6から再構築しようとしていますが、これは機能するはずですが、はるかに面倒です。

なぜ前提条件をスキップしたのですか?再構築しているので、更新をスキップするのではなく、トラブルシューティングが難しいエラーメッセージからあなたを救うだけです。

ついでにDockerを更新できますか?

「いいね!」 1

すでに3.1にアップグレードを完了し、現在は正常に動作しています。
開発のために、古いフォーラム(変更されていないもの)をオンラインに戻そうとしています。

前提条件をスキップしているのは、それなしではランチャーの再構築コマンドを使用できないためです。Docker v1.7およびv1.8が必要です。しかし、これが問題である可能性があるため、今から更新を試みます。
これらのフォーラムを更新していないため、依存関係などを変更していないのに再構築が機能しない理由がわからないため、少し混乱しています。

唯一変更したのは、ホスト名を更新するためのapp.ymlで、再構築を実行しようとしましたが、前提条件をスキップしないと機能しません。

最新のランチャーとDockerイメージはDiscourse 1.6と互換性がありません。discourse_dockerの古いバージョンをチェックアウトする必要があります。例えば git checkout 2ec550f のようなものが機能するかもしれません…

「いいね!」 1

お使いのOSもサポート終了を過ぎている可能性が高いですが、いずれにしてもバックアップを作成し、新しいVMに新規インストールしてから、その新しいVMにバックアップを復元することをお勧めします。これにより、ドメイン名を変更またはDiscourseの名前を変更するために必要な手順の一部も節約できます。

アプリを再起動できなくなったため、もうそれはできません。

古いフォルダのバックアップがあれば、それを復元して起動を試すことができます。

問題は、ベースのDiscourseイメージをアップグレードしたことです。

その後、/var/discourse/shared ディレクトリを新しいサーバーに rsync します。

新しいサーバーで新しいDiscourseビルドを使用しても機能しますか?

「いいね!」 1

ここで求めている結果を教えていただけませんか。

現在お使いのインスタンスは1.6ですが、タイトルからは再構築を実行したいと考えているように見受けられます。再構築はアップグレードも伴いますが、それでよろしいでしょうか?もしそうであれば、新しいクリーンインストールに復元する方が手間は少ないでしょう。

アップグレードではなく、単に1.6インスタンスを開始したいだけであれば、アドバイスは異なります。ホスト名の変更がなければ、通常は /var/discourse の内容をサーバー間でコピーするだけで済みます。宛先マシンにDockerがインストールされていれば、./launcher start を使用して起動できます。

「いいね!」 1

古いフォーラムへのアクセスが必要なだけです。新しいインストールに引き継がれなかった投稿がいくつかあったためです(バックアップが少し古い)。

それらのユーザーに通知したかったのですが、1.6バージョンを復旧させることができません。アップデートしたくなかったのですが、アップデートされても構いません。とにかくアクセスが必要なだけです。

では、ホスト名を変更する場合はどうすればよいですか?

はい。機能するはずです。

「いいね!」 1