【チーム共有】Laravelプロジェクトをdockerでチーム開発できるようにした
概要
今あるLaravelプロジェクトをチームで開発するためにdockerを導入しました。
導入コストがかからないようにlaradockを採用。
その時のことをメモ。
また、今回は他所のリポジトリで既に管理しているプロジェクトとLaradock
を取ってきますが、
新しく作成するgit管理ファイルでまとめたいのでそれぞれのフォルダ内にある.git
ファイルを削除して親ディレクトリ(まとめディレクトリ)でまとめる、という風にしています。
このやり方が漠然と、良くない事なのかもしれないと思いながらこれをしているので
もし問題点や他にいいやり方等があれば教えて頂けると嬉しいです。
(もしくはこれが無意味だ、等)
前提
- プロジェクトをgitで管理していること
- PCにdocker環境が整っていること (以下にURLだけ投げときます)
-
.gitignore
に予めlaradock/
が追記されていること
.gitignore
に予めlaradock/
が追記されていること※.gitignore
の編集はプロジェクトにおいて権限がある方に済ませてもらいましょう
※windows10 home (toolbox)でも試しましたが
うまくいかなかったのでこの記事では諦めてください、、
docker -- windows10 pro
dokcer -- mac
目標
この記事での手順を通して、メンバーそれぞれが自身のローカル環境で
共通のLaravelプロジェクトの開発、およびそのコードのgithubでの管理を目標とします。
目標ディレクトリの構成
project
|
| - laradock
|
| - src
(Laravel project) -- app等々
※laradockはgit管理対象から外します
※単なるプロジェクト(project)とした表記は親ディレクトリで
Laravel プロジェクトとした表記はLaravel project を指しています
参考記事
Laravel プロジェクトをクローン
-
git clone
します
git clone {管理しているLaravelプロジェクトリポジトリのURL}
クローンしたプロジェクトに.env
を用意しておきます
-- mac
cp .env.example .env
-- windows
copy .env.example .env
Laradock クローン
- プロジェクト用のディレクトリの作成 & 中に移動
cd {プロジェクト名}
- Laradock をクローン
git clone https://github.com/Laradock/laradock.git
-
.env
をコピー生成
-- mac
cd laradock && cp env-example .env
-- windows
cd laradock && copy env-example .env
-
docker-compose.yml
のapache2 serverのports
/laradock
にあるdocker-compose.yml
のapache2 server
の欄のportsの部分を以下のように書き換えてください。
portについて、ローカルの他のwebサーバー系と面倒なことが起きないようにlocalhost:8002
で受け付けるようにしています。
※.envに変数を書いてそこから取ろうとしたのですが、うまくいかなったので直書きしています。
どなたかもしわかればご教授ください、、
-
apache2/sites
のdefault.apache.conf
を編集
エディタで以下のように編集してください
2行目のServerName
をlocalhost
に変更します
3.6行目の/var/www/
を/var/www/{Laravelプロジェクト名}/public
に変更します
コンテナ立ち上げ
実際にローカル環境を立ち上げてみます
cd laradock && docker-compose up -d apache2
立ち上げたコンテナに入っていきます
docker exec -it laradock_workspace_1 bash
/var/www
に入ると思うので、プロジェクトディレクトリに入ってcomposer
を入れていきます
cd { プロジェクト名 } && composer install
次にLaravel プロジェクトのAPP_KEYを生成します
php artisan key:generate
このコマンドが正常に完了したのち、ブラウザでlocalhost:8002
に入り、
プロジェクトのトップページが表示されていれば成功です
上の部分までできたら、あとは実際に開発していくのみです。
では。
Author And Source
この問題について(【チーム共有】Laravelプロジェクトをdockerでチーム開発できるようにした), 我々は、より多くの情報をここで見つけました https://qiita.com/kamashintamashin/items/e78709827bfbaeeaa0c7著者帰属:元の著者の情報は、元の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 .