I'm impatient and thrilled to introduce seel, a command-line tool to containerize your Node.js application without effort. Not all developers are Docker/container experts and containerizing an application is not a simple task. For example, you will have to:
- Write a Dockerfile
- Follow the security best practices
- Build the smallest image possible
- Optimize the Docker build cache
- Define a tagging strategy (e.g. semantic versioning, git commit hash)
- Write and maintain build and publish scripts
To simplify this seel uses opinionated, but configurable, defaults based on the properties defined in the application
package.json (e.g. name, version, bin/main scripts, description, ...).
The following screencast shows the containerization of an application created from scratch with
npm (more examples are available here).
- Tree shaking, only the entry module dependencies are packaged
- Automatic image tagging with semantic versioning
- Automatic image labelling (description, maintainer, version)
- Secure private package registry configuration
- Optimized Docker build cache
seel is actively developed and at its early stages. If you want to test it, file bugs, request a feature or contribute some code, go to the GitHub repository and don't miss to give some 💚 and support with a ⭐.