Secrets from env vars and files

No, nothing has to be especially exposed to Node.js and also is totally unrelated to convict but maybe there is a misunderstanding where the environment variables have to be set.
If you run n8n within Docker it is like running on a totally different machine. So it has its own set of environment variables. So if you set an environment variable in your terminal and then start n8n via Docker it will not be able to see it.

So you have to tell Docker like in the bellow example with the environment variable ‘MY_SECRET’.

docker run -it --rm \
	--name n8n \
	-e MY_SECRET=asdf \
	-p 5678:5678 \
	-v ~/.n8n:/home/node/.n8n \
	n8nio/n8n