[obsidian] vault backup: 2024-02-15 12:56:18[
All checks were successful
Build / build (push) Successful in 2m10s

This commit is contained in:
Tomoya Matsuura(MacBookPro) 2024-02-15 12:56:18 +09:00
parent 037260f41b
commit 562de4835c
2 changed files with 47 additions and 1 deletions

View File

@ -43,4 +43,6 @@ cd /home/tomoya/mastodon
/usr/bin/docker run -v fedifetcher-artifacts:/app/artifacts --rm --name fedifetcher -it ghcr.io/nanos/fedifetcher:latest --access-token=XXXXXXXXXXXXXXX --server=social.matsuuratomoya.com --home-timeline-length=200 --max-followings=90 --reply-interval-in-hours=6 --lock-hours=1 /usr/bin/docker run -v fedifetcher-artifacts:/app/artifacts --rm --name fedifetcher -it ghcr.io/nanos/fedifetcher:latest --access-token=XXXXXXXXXXXXXXX --server=social.matsuuratomoya.com --home-timeline-length=200 --max-followings=90 --reply-interval-in-hours=6 --lock-hours=1
``` ```
[[Mastodonのデータベースが壊れたときにやったことv4.2.0]] [[Mastodonのデータベースが壊れたときにやったことv4.2.0]]
[[Mastodonのアップデートでいちいちdocker-compose.ymlを一時的に書き換えない]]

View File

@ -0,0 +1,44 @@
#tips
普通、dockerで運用するときはMastodonのリポジトリをクローンしてきて、`docker-compose.yml`の`build`をコメントアウトすることで、リポジトリからコンテナイメージをpullするように変える。
ただこの場合、バージョンアップデートの際に`git stash && git fetch && git checkout <version>` するとこんな感じにconflictが発生する。(ここでは4.2から4.2.5にダウングレードしてる)
```yml
web:
<<<<<<< Updated upstream
build: .
image: ghcr.io/mastodon/mastodon:v4.2.5
=======
# build: .
image: ghcr.io/mastodon/mastodon:v4.2.6
>>>>>>> Stashed changes
restart: always
```
そこで、`docker-compose.yml`とは別に`docker-compose.override.yml`というのを置いておくと、特定のキーを上書きしてくれる。
最近まで、この上書き機能では特定のエントリをコメントアウトするような操作はできなかったが、docker-compose v2.18.0以降で`!reset`というのを置いておくとできるようになった。
[docker-compose.override.yml で 打ち消し定義 ができるようになった。](https://zenn.dev/iitenkida7/articles/91b88ca76e98c7)
そこでこんなsudo apt-get upgrade docker-compose-plugin`docker-compose.override.yml`を作る。
```yml
web:
image: ghcr.io/mastodon/mastodon:latest
build: !reset
#depends_on: #必要に応じて
# - es
streaming
image: ghcr.io/mastodon/mastodon:latest
build: !reset
sidekiq
image: ghcr.io/mastodon/mastodon:latest
build: !reset
```
こうすれば、更新する時は`docker-compose pull&& docker-compose down && docker-compose up -d`1つでよくなる。(compose自体に更新が入ったり、.env.productionとかに変更があったり、`rake:db migrate`する必要がある場合もあるので、基本はリリースノートを読んでから!)