ExmentのDockerイメージです。
このリポジトリをダウンロードし、zipを解凍します。
使用するフォルダを選択します。buildフォルダ内の以下のフォルダから、構築したい環境により、使用するフォルダを選択します。
コンソールで、上記のフォルダを、カレントディレクトリとして遷移します。
コンソールで、以下のコマンドを実施し、環境を起動します。
docker-compose up
docker-composeで起動する環境を選択します。起動する環境ごとに、「docker-compose.*.yml」ファイルが分かれておりますので、コマンド実行時に"-f"オプションで、ファイルを指定してください。
設定ファイル | 環境 |
---|---|
docker-compose.yml | Webサーバー(ngnix、PHP) |
docker-compose.mysql.yml | MySQL |
docker-compose.mariadb.yml | MariaDB |
docker-compose.sqlsrv.yml | SQL Server |
docker-compose.phpmyadmin.yml | PhpMyAdmin |
docker-compose.redis.yml | Redis |
docker-compose.balancer.yml | ロードバランサー |
docker-compose.https-portal.yml | https |
起動時、「-f docker-compose.yml」のみ追加します。(もしくは、"-f"オプション無しで起動します)
docker-compose -f docker-compose.yml up
起動時、「-f docker-compose.mysql.yml」を追加します。
docker-compose -f docker-compose.mysql.yml -f docker-compose.yml up
起動時、「-f docker-compose.mariadb.yml」を追加します。
docker-compose -f docker-compose.mariadb.yml -f docker-compose.yml up
起動時、「-f docker-compose.sqlsrv.yml」を追加します。
docker-compose -f docker-compose.sqlsrv.yml -f docker-compose.yml up
起動時、「-f docker-compose.phpmyadmin.yml」を追加します。
docker-compose -f docker-compose.yml -f docker-compose.phpmyadmin.yml up
起動時、「-f docker-compose.redis.yml」を追加します。
docker-compose -f docker-compose.yml -f docker-compose.redis.yml up
起動時、「-f docker-compose.balancer.yml」を追加し、「--scale web=2」と、起動するWebサーバー数を指定します。
docker-compose -f docker-compose.yml -f docker-compose.balancer.yml up --scale web=2
起動時、「-f docker-compose.https-portal.yml」を追加します。
docker-compose -f docker-compose.yml -f docker-compose.https-portal.yml up
.envの「EXMENT_DOCKER_HTTPS_TARGET_URL」の値を「http://balancer:80」に変更してください。
docker-compose -f docker-compose.mysql.yml -f docker-compose.yml -f docker-compose.balancer.yml -f docker-compose.https-portal.yml up --scale web=2
起動時、起動したい環境を「-f docker-compose.XXXX.yml」をそれぞれ追加してください。
「.env」ファイルを開き、設定値を修正します。
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_FRONT_DOMAIN | localhost | DockerのExmentにアクセスするためのドメインです。 |
EXMENT_DOCKER_HTTP_PORTS | 80 | DockerのExmentにhttpアクセスするポートです。※Webサーバーを冗長化する場合に、ポートを複数指定する場合には、"80-90"など、範囲指定を行ってください。 |
EXMENT_DOCKER_EXMENT_VERSION | * | インストールするExmentのバージョンを指定する場合、"dev-brunch"のように記入を行ってください。最新版の場合は、"*"と記入します。 |
EXMENT_DOCKER_LARAVEL_VERSION | 9.* | インストールするLaravelのバージョンを指定する場合、"9.."のように記入を行ってください。 |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_HTTPS_PORTS | 443 | DockerのExmentにhttpsアクセスするポートです。※Webサーバーを冗長化する場合に、ポートを複数指定する場合には、"443-453"など、範囲指定を行ってください。 |
EXMENT_DOCKER_HTTPS_STAGE | staging | https環境を構築する設定です。(staging/production/local) 自己証明書を作成する場合、localを指定してください。 |
EXMENT_DOCKER_HTTPS_TARGET_URL | web | https環境を接続するサーバーのURLです。(例:http://web:80) |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_BALANCER_HTTP_PORT | 80 | ロードバランサーにhttpアクセスするポートです。 |
EXMENT_DOCKER_BALANCER_HTTPS_PORT | 443 | ロードバランサーにhttpsアクセスするポートです。 |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_MYSQL_PORT | 3306 | MySQLにアクセスするポートです。 |
EXMENT_DOCKER_MYSQL_DATABASE | exment_database | 作成するデータベース名です。 |
EXMENT_DOCKER_MYSQL_ROOT_PASSWORD | secret | rootアカウントのパスワードです。 |
EXMENT_DOCKER_MYSQL_USER | exment_user | 作成する一般アカウントのユーザー名です。 |
EXMENT_DOCKER_MYSQL_PASSWORD | secret | 作成する一般アカウントのパスワードです。 |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_SQLSRV_PID | Express | SQL Serverのエディションです。(Developer/Express/Standard/Enterprise/EnterpriseCore) |
EXMENT_DOCKER_SQLSRV_PORT | 1433 | SQL Serverにアクセスするポートです。 |
EXMENT_DOCKER_SQLSRV_ROOT_PASSWORD | JKnkdsaj-j3ks | saアカウントのパスワードです。※8文字以上の複雑なパスワードである必要があります。 |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_PHPMYADMIN_PORT | 8888 | PhpMyAdminにアクセスするポートです。 |
設定値 | 初期値 | 説明 |
---|---|---|
EXMENT_DOCKER_REDIS_PORT | 6379 | Redisにアクセスするポートです。 |
「php/volumes/.env」ファイルが、Exmentのプロジェクトフォルダの「.env」ファイルに該当しますので、そちらを編集してください。
ログファイルの確認などの理由で、ExmentアプリのDockerコンテナに接続する場合、以下の手順をお試しください。
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6b55fdf9cde0 nginx:latest "/docker-entrypoint.…" 15 minutes ago Up 15 minutes 0.0.0.0:80->80/tcp php72_mysql_web_1
211f83ee14e8 php72_mysql_php "docker-php-entrypoi…" 15 minutes ago Up 15 minutes 9000/tcp php72_mysql_php_1
c11be3d2b27b mysql:5.7 "docker-entrypoint.s…" 15 minutes ago Up 14 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp php72_mysql_mysql_1
docker exec -it (コンテナID) bash
リリースファイルは、以下のように構築してください。
php build.php {--test=1}
(オプション)リリースファイルを、Exmentのテスト用に構築します。詳細はこちらをご確認ください。