見出し画像

Laravelで開発準備

スタッフ向けにLaravelでの開発環境の構築手順&メモ書き

Mac OSでの開発手順です(Windows)も同じだと思うけどアプリケーションとか細かい部分違うと思うので確認しながらやってください。

必要なアプリケーション
・Visual Studio Code(エディター)
https://azure.microsoft.com/ja-jp/products/visual-studio-code/

・Docker(コンテナ型の仮想環境作成ツール)
https://www.docker.com/

必要な準備
・GitHubのアカウント作成
https://github.com/

・SSH鍵の認証
https://parashuto.com/rriver/tools/setting-up-ssh-key-to-connect-to-github
上記サイトを参考にGitにSSH鍵を追加

リポジトリをクローン

git clone git@github.com:hogehoge/xxxxxxxxxxxxxx.git

hogehoge/xxxxxxxxxxxxxxの部分は開発サービスごとに確認してください
xxxxxxxxxxxxxxは以下常に同じです

クローンしたプロジェクトへ移動

cd xxxxxxxxxxxxxx

.envの準備

cp .env.example .env

Dockerイメージのビルド

docker build -t xxxxxxxxxxxxxx -f .docker/php/Dockerfile .

node.jsのmoduleをインストール

docker run -it --rm -v $(pwd):/app -w /app node npm install

composerの依存パッケージをインストール

docker run -it --rm -v $(pwd):/app -w /app mnl48game-app-server composer install

ログファイルの準備とパーミッション付与

touch storage/logs/laravel.log
chmod -R a+w storage
chmod -R a+w bootstrap

コンテナを起動

docker-compose up -d

データベース初期化

docker-compose run -d app php artisan migrate
docker-compose run -d app php artisan db:seed

コンテナが起動していること確認

docker-compose ps
【表示例です】
zzzzzzzzz_app          docker-php-entrypoint php-fpm    Up      9000/tcp                                
zzzzzzzzz_cron         /bin/sh -c echo '* * * * * ...   Up      9000/tcp                                
zzzzzzzzz_mysql        docker-entrypoint.sh mysqld      Up      0.0.0.0:3306->3306/tcp, 33060/tcp       
zzzzzzzzz_nginx        nginx -g daemon off;             Up      0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
zzzzzzzzz_phpmyadmin   /run.sh supervisord -n -j  ...   Up      0.0.0.0:9090->80/tcp, 9000/tcp          
zzzzzzzzz_redis        docker-entrypoint.sh redis ...   Up      6379/tcp                                
zzzzzzzzz_worker       /bin/sh -c php artisan que ...   Up      9000/tcp     


このように表示されていればOKです。


ローカル開発環境        
https://localhost
データベース(phpMyAdmin)  
 http://localhost:9090

2回目以降(プロジェクトのあるフォルダに移動してから)

docker-compose up -d





















この記事が気に入ったらサポートをしてみませんか?