Closed6

開発環境で使用しているDBのローカル化

purupurupupurupurupu

PJ概要

開発環境で使用しているDBを複数人で共有している状況なため、各自ローカルで開発できる状態にする。

tech stack

フロントエンド:Vue,jQuery,Blade
バックエンド:Laravel
インフラ:AWS EC2,RDS...よくある構成
ソース管理:GitHub

purupurupupurupurupu

ローカルで開発環境が完結していないため、まずはそこを整理することから始める。
できるところからコンテナ化して配布しやすい状況に持っていく。(まずはDBから)

参考URL

DBコンテナ化後

DB migrationまでCDに組み込むかを検討。理想的には組み込みたいが、現在Laravelのmigrationを利用していないため、コンテナ化後にローカルで実行環境の検証が必要。(なぜ利用されていないのかは不明)

purupurupupurupurupu

RDSのdump〜restore

dumpなんてほとんどやったことないからこえーっぺよ。
調べた感じ1GBで数分らしいのでそんなに1時間もあれば終わる見込み。

restoreのときはdockerコンテナ内に流し込まないといけないけどあっさりいくかな。
https://qiita.com/marienplatz/items/3255b2d7f7f922ab115a
https://www.yuulinux.tokyo/20466/

アプリケーションとの疎通

ビルトインサーバーで疎通確認するでOK。

purupurupupurupurupu

利用しているユーザーにdumpの権限がないことが発覚。
別の方法でローカルへエクスポートする必要あり。。。

MySQLユーザーの棚卸しも今後する必要あり。(引き継ぎも何もない状態からスタートしているので迂闊に触れない)

purupurupupurupurupu

tableplusからdumpできそうという情報をいただいたので試してみると無事dumpできた。
ひとまず粛々とdump中。

次にやるのはコンテナ化したMySQLへのリストアと思ったが、MySQL中にDATABASEを二つ作る必要があった。環境間の統一のため。
今のdocker-compose.yamlだと一つしか生成されないので確認中。
以下の記事でなんとかなりそう。

https://qiita.com/piggydev/items/2096258dc45a6bbe2a19

初回実行時にdumpまでやれそうだけど、一旦は生成までにしておく。

purupurupupurupurupu
  • 無事上記の記事を使ってコンテナ側のDatabaseの構築は完了。
  • restoreも一部エラーは吐いたが実使用上は問題なさそうなので不問としておく。(レビュー依頼中)
  • Laravelとの疎通も完了。.envの修正のみで完了したので楽ちん。
このスクラップは2023/03/07にクローズされました