Inspired by Bluxmit's Alnoda Workspaces. I wanted to build the tiniest possible nodejs cloud workspace. Trimmed the fat by reducing redundant and/or unneeded programs, apps, users and runtimes. However, still with an intuitive and comfortable workflow.
Alnoda (Bluxmit) Ubuntu/base workspaces average ~1-3GB after the container build step (...still a really awesome project). AlpNode base workspace is ~300MB after build. Dive analysis shows an image efficiency score of 96%.
- Zsh, Oh my Zsh
- Node
- Python3, pip
- curl, wget
- Git: git, git-flow, lazygit
- File browsers: mc, Filebrowser
- vim
- htop
- supervisord
- cron
- dmidecode (Must run with
--privileged
)
All CLI programs accessable via Web Terminal
docker run --rm -p 8026:8026 -p 8021:8021 bresnow/alpnode_base_workspace -n space
If you wanted to install additional packages and build your own image based upon this one you'd start your Dockerfile like this:
FROM bresnow/alpnode_base_workspace:latest
RUN apk -add U -v package_name package_name
...
I will be adding more and updating the repo regularly.
- Traefik reverse proxy with compose/swarm config.
- IDE workspaces / Codespaces alternative
- Customization config setup to deploy white-label apps