6.6 KiB
このフォークから本家版に移行する
移行には時間が掛かるので、必ずまとまった時間が取れるときに行ってください。
サーバーに Firefish を直接インストールしている場合
-
サーバーを停止する
sudo systemctl stop firefish
-
サーバーのバックアップを取る
-
Firefish がインストールされているディレクトリ (e.g.,
/home/firefish/firefish
) の親ディレクトリ (e.g.,/home/firefish
) に移動するcd /home/firefish
-
Firefish がインストールされているディレクトリ (e.g.,
./firefish
) の名前を変えるmv firefish firefish.old
-
元々 Firefish がインストールされていたディレクトリ (e.g.,
./firefish
) と同じ名前でこのリポジトリをクローンするgit clone --branch=main https://code.naskya.net/naskya/firefish firefish
-
必要なファイルを元のディレクトリからコピーする
rm -rf firefish/files firefish/custom firefish/.config cp -r firefish.old/files firefish cp -r firefish.old/custom firefish cp -r firefish.old/.config firefish
-
全文検索エンジン(Meilisearch, Sonic, Elasticsearch のいずれか)を使用している場合には、
.config/default.yml
からその設定を削除またはコメントアウトする先頭に
#
をつけると設定をコメントアウトできます。#sonic: # host: localhost # port: 1491 # auth: SecretPassword # collection: notes # bucket: default
全文検索エンジンは停止またはアンインストールしてしまってよいです。本家の Firefish に戻るつもりがあるなら停止を、そうでなければアンインストールをおすすめします。
停止コマンドの例
sudo systemctl disable --now sonic
-
PostgreSQL のバージョンを確認する
psql --version
-
PGroonga をインストールする
コマンドの例(詳しくはこの投稿を参考にしてください)
sudo apt install -y software-properties-common sudo add-apt-repository -y universe sudo add-apt-repository -y ppa:groonga/ppa sudo apt install -y wget lsb-release wget https://packages.groonga.org/ubuntu/groonga-apt-source-latest-$(lsb_release --codename --short).deb sudo apt install -y -V ./groonga-apt-source-latest-$(lsb_release --codename --short).deb echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release --codename --short)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - sudo apt update sudo apt install -y -V postgresql-16-pgdg-pgroonga
-
.config/default.yml
に書かれているデータベースの名前を確認する(以下の例ではfirefish_db
)db: host: localhost port: 5432 db: firefish_db # これ
-
以下のコマンドを実行してデータベースに変更を加える(
firefish_db
の部分は自分のデータベース名に変えて実行)sudo -u postgres psql --dbname=firefish_db --file=neko/install.sql
-
新しい Firefish のディレクトリに入ってビルドする
cd firefish ./update.sh --install --native
update.sh
の初回の実行には非常に時間が掛かります(サーバーの規模にもよりますが、数十分から 1 時間は掛かると思ってください)。処理がフリーズしているように見えることもありますが、絶対に途中で強制終了しないでください。 -
サーバーを起動して動作を確認する
sudo systemctl start firefish
-
元々 Firefish がインストールされていたディレクトリを削除する
cd .. rm -rf firefish.old
コンテナで Firefish を動かしている場合
Docker を使う場合には以下の podman
, podman-compose
, --podman
をそれぞれ docker
, docker-compose
, --docker
に読み替えてください。
-
サーバーを停止し、バックアップを取る
-
Firefish がインストールされているディレクトリ (e.g.,
/home/firefish/firefish
) の親ディレクトリ (e.g.,/home/firefish
) に移動するcd /home/firefish
-
Firefish がインストールされているディレクトリ (e.g.,
./firefish
) の名前を変えるmv firefish firefish.old
-
元々 Firefish がインストールされていたディレクトリ (e.g.,
./firefish
) と同じ名前でこのリポジトリをクローンするgit clone --branch=main https://code.naskya.net/naskya/firefish firefish
-
必要なファイルを元のディレクトリからコピーする
rm -rf firefish/files firefish/custom firefish/.config cp -r firefish.old/files firefish cp -r firefish.old/custom firefish cp -r firefish.old/.config firefish
-
docker-compose.yml
の設定例を複製するcp firefish/docker-compose.example.yml firefish/docker-compose.yml
docker-compose.yml
にカスタムが必要な場合には、各自で編集してください。 -
以下のコマンドを実行してデータベースに変更を加える
podman-compose up db --detach podman-compose exec db sh -c 'psql --user="${POSTGRES_USER}" --dbname="${POSTGRES_DB}" --file=/docker-entrypoint-initdb.d/install.sql'
-
コンテナイメージをダウンロードまたはビルドする
./update.sh --install --podman
-
サーバーを起動して動作を確認する
podman-compose up
初回の起動には非常に時間が掛かります(サーバーの規模にもよりますが、数十分から 1 時間は掛かると思ってください)。初回は
-d (--detach)
のオプション無しで起動してログを確認することをおすすめします。処理がフリーズしているように見えることもありますが、絶対に途中で強制終了しないでください。 -
元々 Firefish がインストールされていたディレクトリを削除する
cd .. rm -rf firefish.old