DockerによるLaravel環境の構築
4077 ワード
docker-composeのワンタッチで開発環境を構築し、注:ミラーはすべてコピー大神であり、自分ではあまり研究していないが、現在は環境を構築することに成功すればよい.ディレクトリおよびファイルをローカルで作成します.次のようにします.
mkdir study/study mkdir study/study/public touch study/study/docker-compose.yml touch study/study/public/index.php echo “Hello World” >> study/study/public/index.php
2.次の内容をdocker-composeにコピーする.yml
3.フォルダstudy/studyに入り、コマンドdocker-compose up-dを実行し、初めてネット上から5つのdockerミラーを引き出し、実行に成功した後、ブラウザでlocalhostを入力し、Hello Worldを出力することができる.
4.docker ps-aでコンテナを表示します.true、workspace、nginx、php-fpm、mysqlの5つのコンテナが存在します.最初に実行します.mysqlコンテナは正常に起動しませんでした.study/data、study/logsフォルダの権限を777に設定し、docker-compose up-dを再設定して、それぞれのコンテナに入ります.
docker-compose exec workspace bash docker-compose exec nginx bash docker-compose exec mysql bash
5.Laravelプロジェクトを実行するには、composer、php artisanなどのワークスペースコンテナにアクセスして操作します.
mkdir study/study mkdir study/study/public touch study/study/docker-compose.yml touch study/study/public/index.php echo “Hello World” >> study/study/public/index.php
2.次の内容をdocker-composeにコピーする.yml
version: '2'
services:
### Applications Code Container #############################
applications:
image: lzssing/true
volumes:
- ./:/var/www
### Workspace Utilities Container ###########################
workspace:
image: lzssing/workspace
volumes_from:
- applications
extra_hosts:
- "dockerhost:10.0.75.1"
ports:
- "22"
tty: true
networks:
- frontend
- backend
### PHP-FPM Container #######################################
php-fpm:
image: lzssing/php-fpm
volumes_from:
- applications
expose:
- "9000"
depends_on:
- workspace
extra_hosts:
- "dockerhost:10.0.75.1"
environment:
- PHP_IDE_CONFIG=laradock
networks:
- backend
### NGINX Server Container ##################################
nginx:
image: lzssing/nginx
volumes_from:
- applications
volumes:
- ../logs/nginx/:/var/log/nginx
ports:
- "80:80"
- "443"
depends_on:
- php-fpm
networks:
- frontend
- backend
### MySQL Container #########################################
mysql:
image: lzssing/mysql
environment:
- MYSQL_DATABASE=study
- MYSQL_USER=root
- MYSQL_PASSWORD=docker.18
- MYSQL_ROOT_PASSWORD=docker.18
volumes:
- ../data/mysql:/var/lib/mysql
ports:
- "3306:3306"
networks:
- backend
### Networks Setup ############################################
networks:
frontend:
driver: "bridge"
backend:
driver: "bridge"
### Volumes Setup #############################################
volumes:
mysql:
driver: "local"
3.フォルダstudy/studyに入り、コマンドdocker-compose up-dを実行し、初めてネット上から5つのdockerミラーを引き出し、実行に成功した後、ブラウザでlocalhostを入力し、Hello Worldを出力することができる.
4.docker ps-aでコンテナを表示します.true、workspace、nginx、php-fpm、mysqlの5つのコンテナが存在します.最初に実行します.mysqlコンテナは正常に起動しませんでした.study/data、study/logsフォルダの権限を777に設定し、docker-compose up-dを再設定して、それぞれのコンテナに入ります.
docker-compose exec workspace bash docker-compose exec nginx bash docker-compose exec mysql bash
5.Laravelプロジェクトを実行するには、composer、php artisanなどのワークスペースコンテナにアクセスして操作します.