A drop in package when using Laravel in a Docker Swarm setup and wanting to expand docker secrets easily.
Write a blurb about why you would want to use this, and why the value isn't just replaced or cached....security yo!!!
Hey, we all like composer here right??
composer require bearcodi/docker-secrets
Its 2018, and Laravel is fun to dev packages for, is already setup!!!
Hmmmm, need to think about this for Code Igniter.
Within you .env
file, or from you docker-compose.yml
stack file using environment variables, define your secret prefixing it with dockersecrets://
DSN.
DB_PASSWORD=dockersecrets://db-password
IMPORTANT If you are using a docker secret in your code not in a string context (ie. array key lookup) either cast it to a string
(string) config("CONFIG_KEY")
or use theexpose()
method on the return value as it is an instance ofBearcodi\DockerSecrets\Secret
The secret is then parsed and replaced with the Secret handler, when evalutated in a string usage the secret file value is returned on demand without exposing it in your applications environment.
Key | Reason for exclusion |
---|---|
DB_CONNECTION |
The value is used in an array key lookup when establishing the database connection driver, see array key lookups |