Closed ImBIOS closed 1 year ago
The first step of #68
@griffobeid @darioalessandro I think it's ready for review now.
I think #71 and this PR should be discussed, what's the main purpose to achieve in this containerization? Are we going to combine dev and prod environment, or we will split it so each one optimized for each purpose?
@griffobeid @darioalessandro I think it's ready for review now.
I think #71 and this PR should be discussed, what's the main purpose to achieve in this containerization? Are we going to combine dev and prod environment, or we will split it so each one optimized for each purpose?
I think we can have them both together in the same Dockerfile and optimize for each purpose simultaneously by using multi-stage builds. I like to use three stages, development
which contains all of the development resources, build
which inherits from the development
container but also contains the source code, and finally, the production
container which is just a slim OS image and any system-level dependencies that the application requires.
I prefer this approach because we have fewer Dockerfiles to update which can often lead to dev and production Dockerfiles going out of sync on some versions.
So I guess the ask is could you reduce the number of Dockerfiles and also docker-compose yaml files? I would prefer to have 1 docker-compose.yaml
and a single Dockerfile
for each application
@griffobeid I love your idea ⭐
I just need to sync and cook that idea, my current progress, and the current main
branch containerization progress.
It'll be great developer experience to have a maintainable source code 👍
Hey @ImBIOS thank you so much for your contributions!
Hey @ImBIOS are you still working on this?
📈 What's Improved?
clippy
instead ofclippy-preview
, it's more stable and works properly for this project.--no-cache
flag to the npm install command to avoid storing the package cache in the Docker layer.postgres:12-alpine
instead ofpostgres:12
to save up to 200 MB of image size.devcontainer
feature for better developer experience and local-first development..dockerignore
tailwindcss
for production intrunk
hookREADME.md
withmarkdownlint
✅ Objective