- https://www.docker.com/get-started/からアプリをダウンロード
- ターミナルを起動して下記コマンド
$ brew install docker
- docker-composeをインストール
$ brew install docker-compose
- env.sampleファイルを.envにリネーム(docker-nuxt直下とnuxt/srcの2箇所ある)
- ビルド
$ docker-compose build
- 起動
$ docker-compose up
- ブラウザからlocalhost:3001にアクセス
- migrate create -ext sql -dir go/src/migration -seq {操作の名前(create_userとか、ファイル名に使われる)}
- up.sqlに更新のSQL、down.sqlに切り戻しのSQLを書く
基本的にgoを起動したときよしなにやってくれる、必要な時はdockerの中に入って作業を行う
- dockerの中に入るコマンド
docker-compose exec go sh
- migrationをリセットしたいとき
migrate -path=migration -database="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@{host名(dockerの場合DB_CONTAINERのサービス名)}:${POSTGRES_PORT}/${POSTGRES_DB}?sslmode=disable" drop
- migrationを手動アップデート
migrate -path=migration -database="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@{host名(dockerの場合DB_CONTAINERのサービス名)}:${POSTGRES_PORT}/${POSTGRES_DB}?sslmode=disable" up {version}
- migrationを手動ダウングレード
migrate -path=migration -database="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@{host名(dockerの場合DB_CONTAINERのサービス名)}:${POSTGRES_PORT}/${POSTGRES_DB}?sslmode=disable" down {version}
docker-compose run --rm go /bin/ash
go mod init main
go mod download
go mod tidy
exit
docker-compose run --rm go go get github.com/golang-migrate/migrate/v4/database/postgres