Wanting to quickly start new projects that get built, tested and deployed to a public server.
What it does
This will be a public GitLab project. You'll be able to clone it in GitLab and start developing. The goal is to user Docker and docker-compose to make the platform that is building and deploying (wether locally or on a build server) only depend on docker (and compose).
The project will focus on infrastructure, not the actual project technology. It'll probably be a Vue or Angular frontend with a Java backend and some database, but everything will be built and deployed using Docker images so you can quickly start a project in any technology and still use the same build and deploy setup (probably changing which Docker images you use to run the build and / or deploy).
There will be three Docker containers that build the applications. A frontend container, a backend container and a database container. After building, the output from these containers will be used to create the containers to deploy.
There will be three Docker containers that (can) get deployed from the previous step. A frontend container, a backend container and a database container. These will be stored in the GitLab registry at the end of the build. To deploy to different providers and still make the building system (local or CI server) only depend on Docker, the deploy itself will also be dockerized. This way you could create a Docker image per provider to execute the deploy.
Everything about this project can be found at https://gitlab.com/Gi11i4m/gitlab-docker-quickstart