I went ahead and started tweaking my Dockerfile again, and managed to go in the exact opposite direction of #38.
Notable changes:
Devcontainers
Scheduled builds based on fedora and custom “distroless” fedora images based on the latest node LTS release, including healthchecks, an unprivileged user “node”, and builds for both arm64 and amd64 (once TN sets up GHA)
Automated GHA checks for ESLint and builds for PRs + dependabot
General GHA cleanup
A basic docker-compose.yml
Improved handling of SIGINT/SIGTERM
Output images are ~40MB, same as before, but with less layers and more room to shrink (if desired) with more features. The entire image could be built from a fedora base image within one Dockerfile, however, cross-platform builds in CI would take an hour (just look at the run triggered by my first commit!), and the use of dnf would greatly slow down local rebuilds.
Edit: Images are pushed here every Sunday/whenever a new commit is made to main
Hello, it’s me again!
I went ahead and started tweaking my Dockerfile again, and managed to go in the exact opposite direction of #38. Notable changes:
Output images are ~40MB, same as before, but with less layers and more room to shrink (if desired) with more features. The entire image could be built from a fedora base image within one Dockerfile, however, cross-platform builds in CI would take an hour (just look at the run triggered by my first commit!), and the use of
dnf
would greatly slow down local rebuilds.Edit: Images are pushed here every Sunday/whenever a new commit is made to
main