I’ve published a small "swap-in" alternative to cloudron/base:5.1 for packaging small utility apps:
Docker Hub : tcmbp132021/cloudron-minibase:0.0.1
Base image is only 50Mb !!
Apps built with it can be only 200-500Mb.
AppsMonitor, just published as Community App, is only 307Mb.
That compares to 2.5Gb and counting for official full base image packages.
Usage (basically same as a regular Cloudron Dockerfile) :
FROM tcmbp132021/cloudron-minibase:0.0.1@sha256:a9c29ddb555b1a33f1e5b3b70c512e3a799cc691770d5016c70e0195e74764e0
NOTE : This is not about app runtime performance. The large official base image is usually fine there because Docker layer sharing helps a lot. Apps built with cloudron-minibase use mostly the same runtime memory as if they were built with official base image.
For me, the main issue has been build time and image transfer time.
AppsMonitor, using cloudron-minibase, took 43s for entire build script, start to finish, including building and pushing to container repo.
cloudron-minibase is a stripped-down Cloudron-compatible base image with just the basics (it's not alpine or whatever):
bash
gosu
nano
locale support
CA certs
common shell/debug tools
It leaves out the big bundled pieces like:
Node
Python
PHP
Java
nginx
Apache
DB clients
supervisor
Need any of the excluded pieces ? Just install them.
The app packager pulls into their app only the runtime components the app actually actually needs.
cloudron-minibase is built from the official cloudron/base:5.1 image, just removing what is not essential.
Main benefits:
smaller pulls
smaller pushes
faster rebuild cycles
less unused stuff in app images
nice fit for simple apps or static binaries
If anyone finds this useful, I can share more details or refine it further.