🦅

Pleasanterの開発環境をDockerで構築する(PostgreSQL)

に公開

🐈‍⬛ 使用するリポジトリ

https://github.com/Implem/Implem.Pleasanter

⚠️ 注意点

  • Gitを使う場合は、必ず.gitignore内に.envを含めること!
  • チーム開発の場合、プリザンターやデータベースのバージョンは揃えたほうがいい

環境構築手順(PostgreSQL使用)

1. Docker Desktopをインストールする

2. ターミナルを起動し、作業フォルダの作成&移動

mkdir {作業フォルダ名}
cd {作業フォルダ名}

3. リポジトリのクローン&移動

git clone https://github.com/Implem/Implem.Pleasanter.git
cd Implem.Pleasanter

4. 環境変数ファイル(.env)を作成&保存

↓.env ※{}内は適宜変更する、数字が同じところは同じものを入力

POSTGRES_VERSION={最新安定版がおすすめ}
POSTGRES_USER={任意のユーザー名1}
POSTGRES_PASSWORD={任意のパスワード2}
POSTGRES_DB=pleasanter

POSTGRES_HOST_AUTH_METHOD=scram-sha-256
POSTGRES_INITDB_ARGS="--auth-host=scram-sha-256 --encoding=UTF-8"
PLEASANTER_VERSION={最新安定版がおすすめ}

# Pleasanter用DBユーザーのパスワード
PLEASANTER_OWNER_PASSWORD={任意のパスワード3}
PLEASANTER_USER_PASSWORD={任意のパスワード4}

# 接続文字列(本番用はさらに.envを分けた方がいい)
Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString='Server=db;Database=pleasanter;UID={任意のユーザー名1};PWD={任意のパスワード2}'
Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString='Server=db;Database=pleasanter;UID=pleasanter_Owner;PWD={任意のパスワード3}'
Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString='Server=db;Database=pleasanter;UID=pleasanter_User;PWD={任意のパスワード4}'

5. docker-compose.ymlの修正

services:
  db:
    container_name: postgres
    image: postgres:${POSTGRES_VERSION}
    environment:
      - POSTGRES_USER
      - POSTGRES_PASSWORD
      - POSTGRES_DB
      - POSTGRES_HOST_AUTH_METHOD
      - POSTGRES_INITDB_ARGS
    volumes:
      - type: volume
        source: pg_data
        target: /var/lib/postgresql/data
  pleasanter:
    container_name: pleasanter
    image: implem/pleasanter:${PLEASANTER_VERSION}
    depends_on:
      - db
    ports:
      - '50001:8080'
    environment:
      Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
      Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
      Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
  codedefiner:
    container_name: codedefiner
    image: implem/pleasanter:codedefiner
    depends_on:
      - db
    environment:
      Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
      Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
      Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
volumes:
  pg_data:
    name: ${COMPOSE_PROJECT_NAME:-default}_pg_data_volume

6. Dockerイメージ取得

docker compose pull

7. CodeDefinerの実行(初回のみ)

docker compose run --rm codedefiner _rds /l "ja" /z "Asia/Tokyo"

※ver 1.4.8.0以降はライセンスの承認を求められるので、yを入力
※環境によって違うこともあるのでREADME参照

8. Pleasanterの起動

docker compose up -d pleasanter

9. アクセス確認

http://localhost:50001にアクセス

10. ついにPleasanterが利用可能に!

初期共通アカウント
ユーザーID:Administrator
パスワード:pleasanter
※ログインしたらすぐに強力なパスワードに変更してください

11. 終了時

docker compose down

12. ひと安心🍵

Discussion