Laradockで2つのアプリケーション開発ができる環境を構築した
ローカルで複数サイトの開発環境を動かしたいということはよくあると思います。
今回はLaradockを使って2つLaravelアプリケーションの動作環境をつくります。
こんな感じでアクセスできればOK
http://project1.com
http://project2.com
フォルダ構成は以下のように複数プロジェクトがLaradockを参照する構成にする
laradock
L project1
L project2
Laravelプロジェクト作成
コンテナ起動し、worksoaceに入る
docker-compose up -d nginx mysql workspace
docker-compose exec workspace bash
2つのプロジェクトを作成
cd /var/www
composer create-project laravel/laravel --prefer-dist project1
composer create-project laravel/laravel --prefer-dist project2
exit
nginxの設定更新
デフォルトの設定ファイルを念のため無効にし、
各プロジェクトごとのnginx設定ファイルを作成する
mv laradock/nginx/sites/default.conf default.conf.bk
cp nginx/sites/app.conf.example nginx/sites/project1.conf
cp nginx/sites/app.conf.example nginx/sites/project2.conf
# project1.confの変更
server_name project1.com;
root /var/www/project1/public;
# project2.confの変更
server_name project2.com;
root /var/www/project2/public;
設定ファイル
docker-compose.ymlのvolumesでコンテナのディレクトリとローカルディレクトリの紐付けが行われる。
cd laradock
vi docker-compose.yml
volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
vi .env
APP_CODE_PATH_HOST=../ # ローカル
APP_CODE_PATH_CONTAINER=/var/www:cached # コンテナ
設定反映
docker-compose stop
docker-compose up -d mysql nginx workspace
/etc/hostsを修正
127.0.0.1 project1.com
127.0.0.1 project2.com
ブラウザで確認
docker-compose stop
docker-compose up -d mysql nginx workspace
127.0.0.1 project1.com
127.0.0.1 project2.com
ブラウザで確認
Author And Source
この問題について(Laradockで2つのアプリケーション開発ができる環境を構築した), 我々は、より多くの情報をここで見つけました https://qiita.com/ichimura/items/0e8938a28997b3a96863著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .