2021年12月1日水曜日

DockerでMantis Bug Tracker、PostgreSQL14がインストールされたコンテナ(Alpine 3.14)を構築する

Mantis Bug Trackerは、PHP製のバグ追跡・課題管理サーバです。

〇Mantis Bug Trackerの画面
デフォルトユーザ/パスワードはadministrator/rootです。

構築方法

以下の手順で、Mantis Bug TrackerとPostgreSQLのコンテナを構築・実行します。
1.DockerとDocker Composeをインストールしていない場合は、以下の手順を実行します。
以下のページを参照してDockerとDocker Composeをインストールします。

Debian 11(Bullseye)にDocker/Docker Compose V2系をインストールする

Ubuntu 20.04にDocker/Docker Compose V2系をインストールする

2. Mantis Bug Trackerイメージの作成(Dockerfileがあるフォルダで実行)
docker build -t mantisbtpg .

Dockerfile
FROM alpine:3.14
WORKDIR /
RUN  apk update \
  && apk add --no-cache apache2 php8-apache2 php8-pgsql php8-pdo php8-pdo_pgsql php8-intl php8-mbstring php8-session php8-curl php8-json php8-xml php8-zip php8-tokenizer php8-ctype php8-gd php8-xmlwriter php8-xmlreader php8-dom php8-zlib php8-iconv php8-simplexml php8-fileinfo openssl openrc unzip \
  && rm -rf /var/cache/apk/* \
  && wget https://sourceforge.net/projects/mantisbt/files/mantis-stable/2.25.2/mantisbt-2.25.2.tar.gz \
  && tar xvfz mantisbt-2.25.2.tar.gz \
  && rm -f mantisbt-2.25.2.tar.gz \
  && mkdir -p /opt \
  && mv mantisbt-2.25.2 /opt/mantisbt \
  && chown -R apache:apache /opt/mantisbt \
  && ln -s  /opt/mantisbt /var/www/localhost/htdocs \
  && mkdir -p /run/apache2 \
  && mkdir -p /var/mantisbt \
  && chown -R apache:apache /var/mantisbt
EXPOSE 80
VOLUME ["/var/mantisbt","/opt/mantisbt"]
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]

3. Mantis Bug TrackerとPostgreSQLコンテナの構築・実行(docker-compose.ymlがあるフォルダで実行)
docker-compose up -d

docker-compose.yml
version: "3.9"
services:
  mantisbt:
    image: mantisbtpg
    container_name: "mantisbt"
    volumes:
      - "mantisbt-data:/var/mantisbt"
      - "mantisbt-opt:/opt/mantisbt"
    ports:
      - "80:80"
    depends_on:
      - db
    restart: always
  db:
    image: postgres:14-alpine
    environment:
      POSTGRES_DB: mantisbt
      POSTGRES_USER: mantisbt
      POSTGRES_PASSWORD: mantisbt
    ports:
      - "5432:5432"
    container_name: postgres
    volumes:
      - "db-data:/var/lib/postgresql/data"
    restart: always
volumes:
  db-data:
    driver: local
  mantisbt-data:
    driver: local
  mantisbt-opt:
    driver: local

4. ブラウザからhttp://<Dockerホスト名またはIP>/mantisbt/にアクセス
Installer Optionsで以下の項目を入力する
Type of Database: PostgreSQL
Hostname (for Database Server): db
Username (for Database): mantisbt
Password (for Database): mantisbt
Database name (for Database): mantisbt

0 件のコメント:

コメントを投稿