はじめに
CMSに少し触れてみたいなあとふと思いついて、この記事を書いてみました。
CMSといえば、私は真っ先にWordPressを思い浮かべます。
しかしながら、開発でDjangoを使っていることもあり、
面白そうだと思いまして、今回はDjango製のCMSを使っていきます。
WagtailとはDjango(Python)上で動くCMSです。
オープンソースで、インストール手順も下記ページを見る限り簡単に導入できそうと
思い、一連の流れを記事にしてみました。
http://docs.wagtail.io/en/v2.6.1/getting_started/index.html
他のQiita記事でも導入方法は載っていたので、
私の記事ではDockerComposeを使用した構築方法を載せております。
環境の構築 - ファイルの作成
Wagtailを導入するコンテナのDockerfileを記載していきます。
FROM python:3.6
ENV PYTHONUNBUFFERED 1
WORKDIR /server
ADD . /server/
RUN pip install --upgrade pip
RUN pip install wagtail
DBやNginxを今後入れられるよう、
Docker Composeファイルも作っておきます。
version: '3'
services:
cms:
build:
context: ./cms
dockerfile: Dockerfile
command: 'python manage.py runserver 0.0.0.0:8000'
ports:
- 8000:8000
volumes:
- ./cms:/server/
環境の構築 - サーバーの立ち上げ
コマンドにて、Wagtailプロジェクトを立ち上げます。
管理画面にログインする際のユーザーも作成します。
$ docker-compose run cms wagtail start mysite
$ docker-compose run cms python ./mysite/manage.py createsuperuser
導入する際に使用したコンテナを
Wagtailプロジェクトに向き先を変えて起動します。
FROM python:3.6
ENV PYTHONUNBUFFERED 1
WORKDIR /server
ADD . /server/
RUN pip install --upgrade pip
RUN pip install wagtail
RUN pip install -r ./mysite/requirements.txt
RUN python ./mysite/manage.py migrate
サーバーの立ち上げ
サーバーの立ち上げを行います。
もしうまくいかない方は docker-compose run ./mysite/manage.py migrate
を行なってください。
$ docker-compose build
$ docker-compose up -d
localhost:8000 にアクセスすると、
初期ページが見ることができると思います。
また、管理画面の方も localhost:8000/admin から確認できます
まとめ
今回は、環境を構築〜サーバー立ち上げまでを行いました。
次回は実際にブログを作成することを意図とした実装をしていきたいと思います。
現在弊社では、HRモンスターと呼ばれる
採用の新しいスタイルを提供するサービスをローンチいたしました。
ローンチ後のさらなる機能追加、改善などのPDCAサイクルを回すべく、
エンジニアを募集しております。
https://www.wantedly.com/projects/341182
Kubernetes、Vue.js(Javascript)、Django(Python)といったモダンな技術を使って、
開発しておりますので、もしご興味がある方はぜひ、ご応募お待ちしております。