DockerでGRAVをインストールする方法。

データベースに頼っていないうえに、ファイルはすべて目に見える形で出力されるので移転がしやすく、なおかつ日記しかないようなシンプルなサイトだったら、Wordpressよりも向いていそうなGRAVとかいうCMSの話です。
エディターもMarkdownのため、クラシックエディター派とブロックエディター派のいつまでも終わらない争いもない。
今回はこれを自前のサーバーに、Dockerを使ってインストールしてみます。なお、OSはUbuntu 22.04です。

まず、任意のフォルダに「docker-compose.yml」を作成し、下記のように内容を入力します。

version: '2.1'
services:
  grav:
    image: dsavell/grav:admin
    container_name: grav
    restart: unless-stopped
    environment:
      - DUID=1000
      - DGID=1000
    volumes:
      - ./backup:/var/www/grav/backup
      - ./logs:/var/www/grav/log
      - ./user:/var/www/grav/user
    ports:
      - 7777:80

ポート番号は他のコンテナとかぶらないよう、お好みで。
その後コンソールから、docker-compose.ymlのあるフォルダに移動して、下記のコマンドを実行します。

sudo docker-compose up -d

あとは指定したポートの入ったURLをブラウザで入力すれば、インストール画面が開くはずです。(例:http://192.168.0.200:7777)

usernameはログインに使うアカウントID、Full nameはユーザーの名前を表します。
フルネームと書いていますが、実名じゃなくても問題なし。日本語の文字でもOK。
そしてtitleはサイトの名前です。もちろん日本語OK。

インストールのあと、ポート番号のURLに勝手に移動してエラー画面になりますが、もう一度手動でポート番号ありのURLを打ち直せば大丈夫。管理画面が出るはずです。(例:http://192.168.0.200:7777/admin)

あと、デフォルト設定だと英語になっているので、対応(supported)の部分に「ja」と入力して保存すれば、日本語になってくれます。
「デフォルト言語を付加」が「はい」になっていると、URLの末尾に「ja」が入ってしまうので、邪魔であれば「いいえ」にしておきましょう。

参考サイト

dsavell/docker-grav: Docker Container for GRAV CMS

FILEベースCMS GRAVのインストール(Docker) #Docker - Qiita

余談

当サイトには日記くらいしかないので、せっかくだからWordpressをやめてGRAVに移行しようと思って、しばらくお試ししてみました。

しかし、管理画面にてキャッシュを無効化しているにも関わらず、記事を追加したあとの一覧ページにて、いちいちブラウザの更新ボタンを押さなきゃ反映されないのが、猛烈にめんどくさい。どう見てもキャッシュされてる。不具合か?
その他にも、記事の上書きや削除のあとにページ遷移が正常に動かないときもあったり、これも不具合か。
2024年のこの世の中になって、いまだにAVIFに未対応なのもダメ(フォーラムにて2022年の時点ですでにツッコまれてるのに無反応)。WebPはいけるのに…。
あと、標準テーマじゃないとRSSが正常に生成されなかったり…。

正直言って期待ハズレでした。残念。
結局、Wordpressのまま継続することになる?