#Mastodon v4.3 の upgrade プロセスの中で、

4. Generate secrets by running RAILS_ENV=production bin/rails db:encryption:init, then copy them to your .env.production (copy it across all your nodes if you use multiple ones)

が分からない。すでに、.env.production には secret が書かれているのに。

また、 secret の作り方が、以前は exec rake secret ではなかったのか?

2点がなぞ。

#prattohome

@ottoto2017 Railsのバージョンあげて、新しいキーが3つ必要になったの。ActiveRecord用の。

このへん参照
railsguides.jp/active_record_e

Ruby vesion は 3.2.3 で依存性要求は満足してそうですが、変えないといけないのですか?

フォロー

@ottoto2017 RailsはRailsでバージョン追従していかないとライフサイクルからおいていかれちゃうし、Mastodonのメジャーアップデートのタイミングで切り替えていくしかないね。

現行のMastodon v4.2.12は、Rails 7.0なんだけど、セキュリティフィクスが提供される期限が2025年4月1日までなのね。

こんどのv4.3ではRails 7.1系になる見込み。こちらは2025年10月1日まで。ただし、バグフィクスは2024年10月1日までなんだけどね。
rubyonrails.org/maintenance

Rails 7.2への切り替えも準備されてるよ。
github.com/mastodon/mastodon/p

rails -v
としても
Command 'rails' not found, but can be installed with:
apt install ruby-railties

と出て来て、rails のバージョンが分かりません。

@ottoto2017 railsはbundle exec railsとするか、bin/rails で呼びだして下さい。

bin/rails -v
bundle exec rails -v

railsのバージョンは、Gemfileの該当箇所、Gemfile.lockの該当箇所から確認できます。

Gemfileで指定しているのは

gem 'rails', '~> 7.1.1'

で、7.1.1以上で7.2.0未満を使用するよう指定していることになります。

実際にインストールされるバージョンはGemfile.lockに固定されていて、現在のmainでは

rails (7.1.4)

となっています。

Gemfile.lockは、開発環境でbundle updateした結果を保存してバージョン固定するためのファイルです。

bundle installすると、Gemfile.lockを参照してそこに固定されているバージョンのGemをインストールします。(railsはGemとして提供されています)

@ottoto2017 現在リリースされているRails 7.0系の最新バージョンですね。

Gemfile.lockに記載されているバージョンがインストールされます。
(Mastodon v4.2.12のGemfile.lockです)

libvips 8.15.3 はインストールしたのですが、これを mastodon で使うには、どうすれば?

@ottoto2017 .env.productionにMASTODON_USE_LIBVIPS=trueを記述

libvips を ubuntu user directory に install しています。

/usr/local/bin/
-rwxr-xr-x 1 root root 28560 Sep 12 14:46 vips
-rwxr-xr-x 1 root root 23360 Sep 12 14:46 vipsedit
-rwxr-xr-x 1 root root 22344 Sep 12 14:46 vipsheader
-rwxr-xr-x 1 root root 13524 Aug 11 23:53 vipsprofile
-rwxr-xr-x 1 root root 28224 Sep 12 14:46 vipsthumbnail

が作られています。

mastodon になにが見えていればいいのでしょうか?

@ottoto2017 /usr/local/lib/libvips.so.42かな。

Mastodon本体は、バージョンでいうとv4.3.0-beta.1以降で対応になります。

/usr/local/lib/libvips.so.42
は /etc/ld.so.conf に書き込んで、システム全体で見えるようにしました。ただ、属性が全部 root ですが、問題ないですか?

@ottoto2017 所有者は通常root:rootですが、permissionが-rwxr-xr-xなど誰でも読めるように設定されているかと思います。

そうですね。
lrwxrwxrwx 1 root root 13 Sep 12 14:46 libvips.so -> libvips.so.42
です。
色々ありがとうございました。

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。