こんにちは、フルスタックエンジニアのryuです。
今回の記事は、Dockerを使ってStrapiを構築する方法を解説します。Strapiとは、HeadlessCMSの1つで今注目されているオープンソースです。Dockerを使ってStrapiの環境を簡単に構築してみましょう!
目次
Dockerを使ってStrapiを構築する方法解説
今回の記事では、Strapiの環境をDockerを使用して構築します。手順は以下の通りです。
- docker-compose.ymlの作成
- コンテナの立ち上げ
この2つの手順でStrapiの環境を構築できます。
では、早速やってみましょう!
docker-compose.ymlの作成
まず、docker-compose.ymlの作成します。
ファイルの設定は以下の通りです。
version: '3'
services:
strapi:
container_name: strapi
image: strapi/strapi
environment:
- DATABASE_CLIENT=mongo
- DATABASE_HOST=db
- DATABASE_PORT=27017
- DATABASE_NAME=strapi
- DATABASE_USERNAME=
- DATABASE_PASSWORD=
- AUTHENTICATION_DATABASE=strapi
ports:
- 1337:1337
volumes:
- ./app:/srv/app
depends_on:
- db
db:
container_name: mongo
image: mongo
environment:
- MONGO_INITDB_DATABASE=strapi
ports:
- 27017:27017
volumes:
- ./db:/data/db
restart: always
このdocker-compose.ymlでは、strapiとmongoDBのコンテナを立ち上げています。strapiはDBが必要です。dockerを使うと、DBも同時に立ち上げることができるので便利です。
strapiでmysqlを使用する場合のdocker-compose.yml
ちなみに、mysqlを使用する場合は、下記のように設定します。
version: '3'
services:
strapi:
container_name: strapi
image: strapi/strapi
environment:
- DATABASE_CLIENT=mysql
- DATABASE_HOST=db
- DATABASE_PORT=3306
- DATABASE_NAME=strapi
- DATABASE_USERNAME=strapi
- DATABASE_PASSWORD=strapi
ports:
- 1337:1337
volumes:
- ./app:/srv/app
depends_on:
- db
db:
container_name: mysql
image: mysql:5.7
restart: always
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
environment:
MYSQL_DATABASE: strapi
MYSQL_USER: strapi
MYSQL_PASSWORD: strapi
MYSQL_ROOT_PASSWORD: strapi
volumes:
- ./db:/var/lib/mysql
DBの情報によってstrapiの「environment」部分を変更しましょう。DBの接続情報を記述します。
docker-compose.ymlファイルの準備ができたら、コマンドを入力してコンテナを立ち上げましょう。
docker-comoposeコマンドでStrapiを起動
先ほどまでdocker-compose.ymlファイルの準備をしました。準備したファイルを使用してコンテナを起動しましょう。
docker-compose up -dでStrapiを起動する
では、Strapiを起動してみましょう。下記のコマンドを入力してください。
docker-compose up -d
コマンドを入力すると、下記のようにDockerイメージをダウンロードしてくれます。
Strapiの起動までに数分時間が掛かります。
下記のようにファイルの共有の注意がでたら、「Share it」をクリックします。
Strapiのインストール状況を確認する
Strapiの起動までに数分時間がかかるので状況を確認してみましょう。
まず、docker psコマンドを入力してstrapiのコンテナ名を確認します。そして、docker logコマンドでstrapiのインストール状況を確認する流れです。
docker ps
docker logs strapi -f
コマンドを入力すると、下記のようにインストール状況が確認できます。
インストールが完了したら、strapiのサイトにアクセスしてみましょう。
Strapiのサイトにアクセスしてみる
dockerのコンテナが起動したら、Strapiのサイトにアクセスしてみましょう。
ブラウザから「http://localhost:1337/admin」へアクセスしてください。Strapiは1337番ポートが開いているので、URLの後ろに”:1337″を付けてください。
アクセスすると下記のような画面になります。
ユーザー登録してログインしてください。ログインすると、管理画面へ移動して設定できるようになります。
今回の記事では、環境構築までを解説します。
dockerfileの詳細を知りたい方は、下記のURLを参考にしてください。
以上で、Dockerを使ってStrapiを構築する方法解説を終了します。