検索条件
全2件
(1/1ページ)
ハマったので残しておく。
git remote -vの状態が以下の通りで、origin/mainが本番運用ブランチ。
mastodon https://github.com/mastodon/mastodon.git (fetch)
mastodon https://github.com/mastodon/mastodon.git (push)
origin https://github.com/Lycolia/lycodon.git (fetch)
origin https://github.com/Lycolia/lycodon.git (push)
git checkout -b merge-latest
git fech mastodon
git merge mastodon/main
sudo su - mastodon
# Rubyのアップデート用
cd ~/.rbenv/plugins/ruby-build
git pull
RUBY_CONFIGURE_OPTS=--with-jemalloc rbenv install
cd ~/live
# install
bundle install
yarn install
# DBがアカンことがあるので叩いておく
RAILS_ENV=production bundle exec rails db:migrate
# いつものリビルド
RAILS_ENV=production bundle exec rails assets:clobber
RAILS_ENV=production bundle exec rails assets:precompile
exit
# 再起動
sudo systemctl restart mastodon-web mastodon-sidekiq mastodon-streaming
git pushしてGitHub上で自分のところのmainにマージする。デフォルトでは本家に向くので注意ジャーナルを見てエラー原因を特定する。新規要素がらみのパラメーターが出てたらDBが怪しいのでRAILS_ENV=production bundle exec rails db:migrateで直る可能性がある。
sudo journalctl -u mastodon-web -f
以下のコマンドを叩いてruby-buildを更新するといける
cd "$(rbenv root)"/plugins/ruby-build
git pull
なんか昔のやり方が使えなくなってたので調べたメモ。
| Env | Ver |
|---|---|
| OS | Ubuntu 24.04.3 LTS |
| Docker | version 28.1.1, build 4eba377 |
| Docker Compose | v2.35.1 |
| Mastodonのバージョン | v4.5.0-alpha.2 |
| Mastodonのコミットハッシュ | 06803422da3794538cd9cd5c7ccd61a0694ef921 |
DEVELOPMENT.md#dockerの手順通りにやると行ける。
docker compose -f .devcontainer/compose.yaml up -d
docker compose -f .devcontainer/compose.yaml exec app bin/setup
docker compose -f .devcontainer/compose.yaml exec app bin/dev
コンテナへのアタッチ方法
# 方法1
docker compose -f .devcontainer/compose.yaml exec app zsh
# 方法2
cd .devcontainer
docker compose exec app zsh
VSCodeがあるならDockerやRemoteほげほげ系の拡張を使い、devcontainer-appにAttach Shellしてもよい。
./bin/tootctl accounts create hoge --email hoge@example.com --confirmed
rails console
user = Account.find_by(username: 'hoge').user
user.approve!
# PW変更ここから
user.password = 'password'
user.skip_confirmation!
# PW変更ここまで
user.save!
quit
bin/rails assets:precompile
bin/dev
.env.developmentにALTERNATE_DOMAINS=hoge.testの行を追加することで他のドメインでもアクセスできる。
この設定があるとMastodonを別環境で動かしててリモートからドメインアクセスする場合に便利。
コンテナの中でrails db:setupを叩くことで解決する。
リポジトリルートにあるdocker-compose.ymlを使うと発生するので、.devcontainer/compose.yamlを使う事で解決する。
検証用にバニラなMastodon環境が欲しくて作ってみたが昔と変わっていて地味にハマった…。