Как установить umask в Docker Alpine
Как установить значение umask с помощью точки входа Dockerfile? Я пробовал несколько разных способов, таких как написание внутри скрипта точки входа gosu root sh -c umask 0026
, Внутри Dockerfile ENTRYPOINT ["/bin/sh", "-i" "-c""/entrypoint.sh"]
, После поиска в Google я обнаружил, что мне нужна интерактивная оболочка. Но почему в моем случае не работает, так как я использую gosu или передаю параметр -i
, Да, поиск через /etc/profile.d/set_umask.sh работает, но мне всегда нужно отправить дополнительный параметр -l
в docker exec
или если установлено хотя ENV ENV=/etc/profile
Docker-контейнер начинается с подсказки хэш-значения, например a9b3d38e07c4:/var/www/
которого я хочу избежать. Мой второй вопрос: что это за 12-значное хеш-значение, отображаемое в приглашении после поиска профиля, и как мы можем его отключить?
#!/bin/sh
set -ex
umask 0026
gosu root sh -c "envsubst \
'\$DOMAIN_NAME \$PROJECT_NAME' \
< /vhost-templates/drupal-${DRUPAL_VERSION}.conf \
> /etc/nginx/conf.d/${DOMAIN_NAME}.conf" \
2>/dev/null || :
gosu root chmod o-rwx /usr/bin/gosu 2>/dev/null || :
exec "$@"