この記事の目的
FILEベースCMS GRAVのインストール方法を記載しています。
今回は CentOS7 上の Docker 環境下に GRAV を入れて立ち上げてみます。
手順としてコンテナをビルドするところから実施する手順としました。理由は後述。
前提事項
以下の環境で実施しました。
ホストOS: CentOS7 7.7.1908 (Core)
Docker: 1.13.1
セットアップ
準備
Dockerfile 他のファイルを置くディレクトリを作成しておきます。
mkdir -p /home/vm/docker-grav
git clone
git clone
コマンドで関連するファイルをダウンロード
今回は admin 画面も利用するので、Dockerfile.gravcoreadmin
ファイルを利用します。
cd /home/vm/docker-grav
git clone https://github.com/dsavell/docker-grav.git .
cp -p Dockerfile.gravcoreadmin Dockerfile
コンテナのビルド
Docker コマンドでビルドを実施します。
docker build -t local/docker-grav:1.0 .
できたらイメージを確認します。
docker images
保存ディレクトリの作成
コンテンツを保存するフォルダやキャッシュ関連のフォルダを作成しておきます。
mkdir -p /home/vm/docker-grav/user
mkdir -p /home/vm/docker-grav/backup
mkdir -p /home/vm/docker-grav/cache
コンテナ実行
引数を渡してコンテナを実行します。
今回はローカルポート 9080 にバインドして起動しました。
docker run -d -p 9080:80 -v /home/vm/docker-grav/cache:/var/www/grav/cache -v /home/vm/docker-grav/backup:/var/www/grav/backup -v /home/vm/docker-grav/user:/var/www/grav/user local/docker-grav:1.0
確認
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9efae32cddc5 local/docker-grav:1.0 "/init-admin" About a minute ago Up About a minute 443/tcp, 0.0.0.0:9080->80/tcp trusting_ritchie
使い方
ブラウザを起動してポート9080 でアクセスします。
終わりに
設定で各種プラグインやテーマを選択していくと、いくつかのPHPモジュールが必要となることがあります。今回も mbstring が足りず起動できなくなりました。その際には Dockerfile に php-mbstring を追加してビルドからやり直す必要があります。
GRAVはまだ活発に更新されているので、ちょくちょくと修正が入ります。
dsavell
さんの Docker Hub
も登録されているのですが、GRAVを更新すると動かなくなったりします。
現にこの記事を作成するにあたって、ほかの方の記事も参考にしたのですが、変更がありそのままでは動かなかったりするため、自分で Dockerfile を修正してビルドする手順に落ち着きました。
参考記事