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 Focus on your application, seel takes care of the containerization To simplify this seel uses opinionated, but configurable, defaults based on the properties defined in the application package.
Many tools use ignore files to exclude files from build, process or publish steps (e.g. .npmignore for npm, .gitignore for Git and .dockerignore for Docker). As your project grows, evolves, it can be hard to maintain the exclusion patterns and, as a side effect, you can expose unwanted or sensitive files. Using your .dockerignore as a whitelist can be an elegant option to avoid these mistakes and to reduce the effort to keep things up to date.
As said in the description, every journey has a beginning and here is a little write-up for the beginning of my blogging journey. In the past I’ve created many blogs but nothing was publicly available or updated because I was not satisfied by the result. As a therapy and to improve my writing skills, I will try to post articles on a regular basis on things I’ve learned or hacked during my developer journey, which have started 10 years ago, even if it’s not perfect in my point of view.