make postgres
make createdb
migrate -path db/migration/ -database "postgresql://root:secret@localhost:5432/simple_bank?sslmode=disable" -verbose up
brew install golang-migrate
make new_migration
\\ build image, in the Dockerfile folder
docker build -t simplebank:last .
\\ create docker network
docker network create bank-network
\\ connect network to postgresql container
docker network connect bank-network postgres16
\\ container
docker run --name simplebank --network bank-network -p 8080:8080 -e GIN_MODE=release -e DB_SOURCE="postgresql://root:secret@postgres:5432/simple_bank?sslmode=disable" simplebank:last
docker compose up
To make the api container run after by the postgres container, we have to use depends_on
and with condition: service_healthy
By Legacy versions, besides the depends_on field, we need some script like wait-for, new version docker compose supported inside. Anyway, If we want to use some scipts, don't miss change scipts permissions.
chomd +x fileName
make new_migration name=<migration_name>
npm i dbdocs -g
and make db_docs
npm install -g @dbml/cli
and make db_schema
brew install protobuf
go install google.golang.org/protobuf/cmd/[email protected]
go install google.golang.org/grpc/cmd/[email protected]
brew tap ktr0731/evans
brew install evans
Request
evans --host localhost --port 9090 -r repl