Fahrtenbuch
The application is now dockerized.
That means: Every part of the app (client, server, postgres, pgAdmin) is now an own Docker container. Client and server both have a Dockerfile which defines the routine to be run when building the container from the source.
All parts work together by composing them with docker-compose. The file docker-compose.yaml
defines, which services there are and how Docker should initialize them. By composing the multiple services, they all run inside their own container but can communicate inside their own network with each other.
By using volumes, we can directly map the source code on our machine to the source code inside the container, which enables us to sync our changes with the container -> Hot reload :)
How to develop
- Install Docker: https://www.docker.com/get-started
- In the root of the project, run
docker compose build
to build all containers. - Then run
docker compose up
to start the build. - Done