【1】Laravelでコーディングテストサービスを共同開発した際のメモ【環境構築編】

こんにちは!かたつむり(@Katatumuri_nyan)です!

今回は、とらちゃんと共同開発した際の開発メモを書いていきます!
コーディングの試験を登録できるサービスを作成しています。

GitHub/CodingTester)でソースコードを管理しています!

最初から見る↓
【1】Laravelでコーディングテストサービスを共同開発した際のメモ【環境構築編】【1】Laravelでコーディングテストサービスを共同開発した際のメモ【環境構築編】

リポジトリのクローン

とらちゃんのリポジトリがメインなので、そちらにGitHubから招待してもらいます。
(メモ:Forkすると複雑になるの)

GitHubから、クローンして、feature/designブランチを切りました。

参考:githubを使った共同作業の手順

dockerのコンテナを立てる

今回はdockerで環境構築をするので、docker-compose up -d --build
(すでにとらちゃんがdocker-composeファイルなどは作ってくれています。)

index.phpが開けない

picture 1

コンテナ内でcomposer installします。

参考:Laravelで…vendor/autoload.php): failed to open stream: No such file or directory というエラーによりデフォルト画面が表示されない解決方法

picture 2
表示されました!

中身はちょっと作ってあるのと、私もデザインを少しいじっているので、続きからやっていきます。

データベースとの接続

picture 3

SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘laravel_db.questions’ doesn’t exist (SQL: select * from questions)
A table was not found
You might have forgotten to run your migrations. You can run your migrations using php artisan migrate.
Pressing the button below will try to run your migrations.

データベースと接続できないので、解決方法をメモします。

appコンテナ内でphp artisan migrateしてみる

picture 4
Nothing to migrate.

キャッシュクリアしてみる

php artisan cache:clear
php artisan config:clear
php artisan migrate:refresh

picture 5

PDOException::(“SQLSTATE[HY000]: General error: 1813 Tablespace ‘laravel_db.questions‘ exists.”)

picture 6
ちなみにテーブルはありません

DBコンテナを削除してみる

DBコンテナに問題があるかもしれないので、DBコンテナだけ再ビルドします。
dockerデスクトップでdbコンテナ停止・dbコンテナremove
docker-compose up -d --build db

もう一度
php artisan migrateします。

同エラーが出たのでもう一度キャッシュクリアします。
php artisan cache:clear
php artisan config:clear
php artisan migrate:refresh

同エラーが出ます。

コンテナを一度削除して作成しなおす。

docker-compose down
docker-compose up -d --build
php artisan migrate

同エラーが出ました

パーミッションを確認する

一応パーミッションを確認してみます。
dbのコンテナで確認します。
picture 7
大丈夫そうですね。なんでだろうw

データベースを削除

rm -rf laravel_db
mkdir laravel_db
php artisan migrate

picture 8
パーミッションエラーが出たので、パーミッション変更します。

picture 9
確認して


chmod 777 laravel_db
ls -l
picture 10
変更できました。

再びphp artisan migrate
picture 11
できたっぽい

データの生成

すでに問題データがあるので、php artisan db:seedしときます。
Laravelでシーダーを使う

picture 12

これで環境構築は終了です(*´ω`)

コメントを残す

メールアドレスが公開されることはありません。