Community EditionからEnterprise Editionへのアップグレード手順(Docker利用/DBにMySQLを利用)
Docker版プリザンターについて¶
以下では、Docker Hubで公開されているプリザンターの公式Dockerイメージを利用します。
implem/pleasanter - Docker Image | Docker Hub
概要¶
データベースにMySQLを指定して、Community EditionからEnterprise Editionへアップグレードする手順について説明します。
注意事項¶
- Community EditionからEnterprise Editionにアップグレードすると以下の動作となります。
- 「ライセンス」が商用ライセンスになります。ライセンスは「共通機能:バージョン」画面で確認できます。
- 「分類項目」、「数値項目」、「日付項目」、「説明項目」、「チェック項目」、「添付ファイル項目」の利用数を拡張することができます。
- 契約した「年間サポートサービスプラン」に応じてユーザ登録数の上限が設定され、上限を超えてユーザを登録することができません。
- Pleasanter Extensions(Pleasanter Site Visualizer、Pleasanter Code Assist、Operations Tools、Development Tools)が利用可能になります。
- 本ページの手順は、プリザンターをすぐに試したいユーザのために、MySQLコンテナをプリザンターと同一のDocker構成に含めた複数コンテナ構成を採用しています。この構成は本番運用を想定したものではありません。
- 本番運用では、データベースコンテナが性能上のボトルネックになります。別ホスト上のデータベースとすることを強く推奨します。
前提条件¶
- 本手順は、以下のマニュアルの手順通り実施し、パラメータファイルを変更して起動できることを前提としています。
「Dockerイメージを使用しパラメータを既定値から変更して起動する」
操作手順¶
1. プリザンターのバージョンアップ¶
アップグレードの前に、以下の手順に従ってバージョンアップを実施してください。
「Dockerイメージのプリザンターをバージョンアップする」
2. ライセンスファイルの格納¶
-
コンテナを停止します。以下のコマンドを実行してください。
-
app_data_parametersフォルダと同じ階層にlicenseフォルダを新規作成してください。
-
ライセンスパックに含まれる「Implem.License.dll」をlicenseフォルダ内へコピーしてください。
フォルダ構成は以下の通りです。
-
PleasanterとCodeDefinerからImplem.License.dllを参照できるように、compose.yamlを以下のように編集します。
以下はcompose.yamlの抜粋です。
compose.yaml(抜粋)¶
services: pleasanter: # 中略 volumes: - pleasanter_params:/app/App_Data/Parameters - ./license/Implem.License.dll:/app/Implem.License.dll:ro #←追記 # 中略 codedefiner: # 中略 volumes: - codedefiner_params:/app/Implem.Pleasanter/App_Data/Parameters - ./license/Implem.License.dll:/app/Implem.CodeDefiner/Implem.License.dll:ro #←追記サービス 配置先 pleasanter /app/Implem.License.dll codedefiner /app/Implem.CodeDefiner/Implem.License.dll compose.yaml(全体)¶
services: db: container_name: mysql image: mysql:${MYSQL_VERSION} environment: - MYSQL_ROOT_PASSWORD volumes: - type: volume source: my_data target: /var/lib/mysql healthcheck: test: mysqladmin ping -h 127.0.0.1 -u root -p${MYSQL_ROOT_PASSWORD} interval: 10s timeout: 10s retries: 6 networks: - backend param-init: container_name: param-init image: implem/pleasanter:${PLEASANTER_VERSION} volumes: - ./app_data_parameters:/tmp/app_data_parameters:ro - pleasanter_params:/app/App_Data/Parameters entrypoint: - sh - -c - cp -rf /tmp/app_data_parameters/. /app/App_Data/Parameters/ && echo "Parameters copied" restart: "no" network_mode: none param-init-codedefiner: container_name: param-init-codedefiner image: implem/pleasanter:codedefiner volumes: - ./app_data_parameters:/tmp/app_data_parameters:ro - codedefiner_params:/app/Implem.Pleasanter/App_Data/Parameters entrypoint: - sh - -c - cp -rf /tmp/app_data_parameters/. /app/Implem.Pleasanter/App_Data/Parameters/ && echo "Parameters copied" restart: "no" network_mode: none pleasanter: container_name: pleasanter image: implem/pleasanter:${PLEASANTER_VERSION} restart: unless-stopped depends_on: db: condition: service_healthy param-init: condition: service_completed_successfully ports: - '50001:8080' environment: Implem.Pleasanter_Rds_MySQL_SaConnectionString: ${Implem_Pleasanter_Rds_MySQL_SaConnectionString} Implem.Pleasanter_Rds_MySQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_MySQL_OwnerConnectionString} Implem.Pleasanter_Rds_MySQL_UserConnectionString: ${Implem_Pleasanter_Rds_MySQL_UserConnectionString} volumes: - pleasanter_params:/app/App_Data/Parameters - ./license/Implem.License.dll:/app/Implem.License.dll:ro networks: - backend codedefiner: container_name: codedefiner image: implem/pleasanter:codedefiner depends_on: db: condition: service_healthy param-init-codedefiner: condition: service_completed_successfully environment: Implem.Pleasanter_Rds_MySQL_SaConnectionString: ${Implem_Pleasanter_Rds_MySQL_SaConnectionString} Implem.Pleasanter_Rds_MySQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_MySQL_OwnerConnectionString} Implem.Pleasanter_Rds_MySQL_UserConnectionString: ${Implem_Pleasanter_Rds_MySQL_UserConnectionString} volumes: - codedefiner_params:/app/Implem.Pleasanter/App_Data/Parameters - ./license/Implem.License.dll:/app/Implem.CodeDefiner/Implem.License.dll:ro networks: - backend networks: backend: volumes: my_data: name: ${COMPOSE_PROJECT_NAME:-default}_my_data_volume pleasanter_params: name: ${COMPOSE_PROJECT_NAME:-default}_pleasanter_params_volume codedefiner_params: name: ${COMPOSE_PROJECT_NAME:-default}_codedefiner_params_volume
3. コンテナの再作成と再起動¶
4. アップグレードの確認¶
-
ブラウザで以下のURLを開いてください。
-
プリザンターにログインしてください。
- 「共通機能:バージョン」画面を開きます。ナビゲーションメニューの「ヘルプ」をクリックし、「バージョン」をクリックしてください。
-
以下の3点を確認してください。
- ライセンスが「商用ライセンス」となっていること
- ライセンス期限が正しいこと
- 使用者が正しいこと
項目拡張作業¶
Community Editionでは「分類項目」、「数値項目」、「日付項目」、「説明項目」、「チェック項目」、「添付ファイル項目」の各項種別毎に26個、計156項目が利用できますが、Enterprise Editionでは項目を拡張することができます。
| DB | Enterprise Editionで利用できる項目の上限 |
|---|---|
| PostgreSQL | 6つの項目種別の合計で最大900個まで |
| SQL Server | 6つの項目種別の合計で最大900個まで |
| MySQL1 | 6つの項目種別の合計で最大256個まで |
項目拡張を行う場合は「Docker利用時の項目拡張」の手順に沿って作業を行ってください。
関連情報¶
- implem/pleasanter - Docker Image | Docker Hub
- Community EditionからEnterprise Editionへのアップグレード手順(Docker利用)
-
プリザンター1.4.9.0以降で使用できます。 ↩
