在docker-entrypoint中阅读Docker机密

时间:2018-11-15 15:47:15

标签: docker dockerfile docker-swarm

我无法通过docker-entrypoint脚本读取Docker机密。我在docker service create命令中添加了所有秘密,并且每次服务崩溃告诉我/run/secrets/<secret_name>都不存在。

有人可以告诉我为什么?以及如何读取我的秘密?

我的docker_entrypoint:

#!/bin/bash

set -e

cp /run/secrets/configuration.py /opt/netbox/netbox/netbox/configuration.py
chmod +x /opt/netbox/netbox/netbox/configuration.py

DJANGO_USER="$(< /run/secrets/django_user)"
DJANGO_MAIL="$(< /run/secrets/django_mail)"
DJANGO_PASS="$(< /run/secrets/django_pass)"

cd /opt/netbox/netbox/
python3.6 manage.py migrate

echo "from django.contrib.auth import get_user_model; User = get_user_model(); User.objects.create_superuser('$DJANGO_USER', '$DJANGO_MAIL', '$DJANGO_PASS')" | python3.6 manage.py shell

python3.6 manage.py collectstatic --noinput

unset DJANGO_USER
unset DJANGO_MAIL
unset DJANGO_PASS

exec "$@"

错误:

/opt/netbox/entrypoint.sh: line 5: /run/secrets/configuration.py: No such file or directory

0 个答案:

没有答案