MediaWiki を Heroku で動かす

MediaWiki を Heroku で動かす手順

MediaWiki を Heroku で動かそうとした際につまづいたので構築の手順を解説する。

環境

  • Arch Linux
  • Git
  • Heroku CLI

Heroku のアプリを作成する

https://github.com/wikimedia/mediawiki をフォークしたあと、Heroku のアプリを作成する

1
2
3
$ git clone https://github.com/<自分のユーザー名>/mediawiki
$ cd mediawiki
$ heroku apps:create <アプリ名>

composer.lock を生成する

Heroku で PHP を使うには composer.lock ファイルが必要になる。 PHP と Composer をインストールして生成する。

1
2
3
4
5
6
$ yay -S php
$ yay -S composer
$ composer update
$ git add -f composer.lock
$ git commit -m "add composer.lock"
$ git push heroku master

データベースを設定する

アドオンに PostgreSQL を追加する。

1
$ heroku addons:add heroku-postgresql

後々必要になる DATABASE_URL を確認する

1
$ heroku config

MediaWiki のセットアップ

https://<アプリ名>.herokuapp.com/ にアクセスするとインストールセットアップが表示されるので、画面の指示に従って設定する。 データベースの情報は DATABASE_URL をもとに設定する。postgres://USER:PASS@host:port/database の形で構成されているので参考に。

セットアップが完了すると LocalSettings.php のダウンロードが指示されるのでダウンロードし、/mediawiki ディレクトリに設置する。

一旦 LocalSettings.php をリポジトリにプッシュする。

1
2
3
$ git add -f "LocalSettings.php"
$ git commit -m "added LocalSettings.php"
$ git push heroku master

完了したらもう一度 https://<アプリ名>.herokuapp.com/ を開いて、「MediaWikiが正常にインストールされました。」というメッセージが表示されていれば成功。

スキンをインストールする際の注意

Heroku で動かしている場合、スキンにも composer.lock が必要になるため、ダウンロードしたスキンのディレクトリに移動し、先程と同様に composer update を行う必要がある。

Built with Hugo
テーマ StackJimmy によって設計されています。