basic setup for starting node apps to be deployed with docker
remember to create .env file after cloning, follow .env.example
docker-compose upto run with dockernpm run start_localto run on local env
- understand environment variables and best practices
- dockerize node + express app
- practice as a part of the 12factor methodology for building software as a service applications
- https://12factor.net/config
-
remove reading of env vars in app on runtime by
- moving dotenv package to dev dependancy in package.json
npm install dotenv --save-dev
- preloading env vars, via custom npm script
node -require dotenv/config server.js
- moving dotenv package to dev dependancy in package.json
-
importing env vars from .env file to docker-compose
- using
env_file:instead ofenvironment: - other parts of docker-compose that require env var use variable substitution
${ENV_VAR}
- using
dotenv - https://www.npmjs.com/package/dotenv
VScode npm ext - https://marketplace.visualstudio.com/items?itemName=eg2.vscode-npm-script&wt.mc_id=node-nodecollection-jopapa
docker compose env vars - https://docs.docker.com/compose/environment-variables/