Itsscb/issue_Add-Dockerfile-for-backend-57 (#61)
* Add Dockerfile for backend Fixes #57 * Add Dockerfile for backend Fixes #57 * removes a temporary test relict * Major changes in Makefile
This commit is contained in:
parent
a9c53952de
commit
86186af05a
27
Makefile
27
Makefile
@ -1,13 +1,24 @@
|
|||||||
DB_URL=postgresql://root:secret@localhost:5432/df?sslmode=disable
|
DB_URL=postgresql://root:secret@localhost:5432/df?sslmode=disable
|
||||||
|
|
||||||
reset_docker:
|
reset_docker:
|
||||||
docker rm -vf df; docker rmi -f df; docker rm -vf postgres; docker rmi -f postgres
|
docker rm -vf df; docker rmi -f df; docker rm -vf postgres; docker rmi -f postgres; docker rm -vf migrate
|
||||||
|
|
||||||
backend_build_image:
|
backend_build:
|
||||||
docker build -t df:latest -f bff/Dockerfile
|
make network; \
|
||||||
|
make postgres; \
|
||||||
|
docker rm -vf df; \
|
||||||
|
docker rmi -f df:latest; \
|
||||||
|
docker rmi -f docker.io/library/golang:1.21-alpine3.18; \
|
||||||
|
docker build -t df:latest -f bff/Dockerfile; \
|
||||||
|
docker exec -it postgres createdb --username=root --owner=root df; \
|
||||||
|
docker run --name migrateup --rm --privileged=true -v $(PWD)/bff/db/migration:/migrations --network host migrate/migrate -path=/migrations/ -database $(DB_URL) up
|
||||||
|
|
||||||
|
backend:
|
||||||
|
docker start postgres; docker rm -vf df; docker run --name df --rm -p 8080:8080 --network df-network -d df:latest
|
||||||
|
|
||||||
|
backend-stop:
|
||||||
|
docker stop postgres; docker stop df
|
||||||
|
|
||||||
backend_run:
|
|
||||||
make createdb; make migrateup; docker rm -vf df; docker run --name df --rmi -p 8080:8080 --network df-network -d df:latest
|
|
||||||
|
|
||||||
network:
|
network:
|
||||||
docker network create df-network
|
docker network create df-network
|
||||||
@ -19,10 +30,10 @@ migratenew:
|
|||||||
migrate create -ext sql -dir bff/db/migration -seq init_schema
|
migrate create -ext sql -dir bff/db/migration -seq init_schema
|
||||||
|
|
||||||
migrateup:
|
migrateup:
|
||||||
migrate -path bff/db/migration -database $(DB_URL) -verbose up
|
docker run --name migrateup --privileged=true --rm -v $(PWD)/bff/db/migration:/migrations --network host migrate/migrate -path=/migrations/ -database $(DB_URL) up
|
||||||
|
|
||||||
migratedown:
|
migratedown:
|
||||||
migrate -path bff/db/migration -database $(DB_URL) -verbose down
|
docker run --name migratedown --privileged=true --rm -v $(PWD)/bff/db/migration:/migrations --network host migrate/migrate -path=/migrations/ -database $(DB_URL) down -all
|
||||||
|
|
||||||
createdb:
|
createdb:
|
||||||
docker exec -it postgres createdb --username=root --owner=root df
|
docker exec -it postgres createdb --username=root --owner=root df
|
||||||
@ -48,4 +59,4 @@ server:
|
|||||||
mock:
|
mock:
|
||||||
mockgen -package mockdb -destination bff/db/mock/store.go github.com/itsscb/df/bff/db/sqlc Store
|
mockgen -package mockdb -destination bff/db/mock/store.go github.com/itsscb/df/bff/db/sqlc Store
|
||||||
|
|
||||||
.PHONY: postgres migratenew createdb dropdb migrateup migratedown sqlc sqlcinit test server initialize backend_build_image backend_run reset_docker
|
.PHONY: postgres migratenew createdb dropdb migrateup migratedown sqlc sqlcinit test server backend_build backend backend-stop reset_docker
|
||||||
|
10
README.md
10
README.md
@ -3,15 +3,15 @@
|
|||||||
To first run the application in your local environment you can use
|
To first run the application in your local environment you can use
|
||||||
|
|
||||||
```
|
```
|
||||||
make network
|
# to (re-)build the app image including migration
|
||||||
make postgres
|
make backend_build
|
||||||
make backend_build_image
|
|
||||||
make backend_run
|
# to run the db and the app as docker images
|
||||||
|
make backend
|
||||||
```
|
```
|
||||||
|
|
||||||
or run those commands, listed in ```Makefile```, ***manually*** with your terminal in the repository root directory.
|
or run those commands, listed in ```Makefile```, ***manually*** with your terminal in the repository root directory.
|
||||||
|
|
||||||
***IMPORTANT***: You've got to have *golang-migrate* installed to run the backend.
|
|
||||||
|
|
||||||
# Prerequisites
|
# Prerequisites
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user