Я испытываю очень странное поведение с docker -композицией. У меня есть репозиторий, настроенный для работы с docker swarm
для производства и docker-compose
для разработки. Swarm работает нормально на производстве, но docker-compose
ведет себя странно.
В частности, я определяю аргументы сборки с подстановкой параметров, как это
build:
context: .
args:
- APP_DIRECTORY=${APP_DIRECTORY:-/srv/app}
- APP_ENV=${APP_ENV:-dev}
Когда APP_ENV
не определено или пусто, должно принимать значение dev
. Это работало нормально, но теперь принимает значение prod
, когда переменная не определена. Я перезагрузил компьютер, очистил все переменные окружения, даже удалил docker-compose
и снова установил его, а APP_ENV
все еще получает prod
. Есть ли какое-то кеширование, выполняемое при помощи compose, о котором я не знаю?
Еще одно странное поведение заключается в том, что docker-compose
передает связанные с прокси переменные окружения в контейнер. Эти переменные не указаны в файле compose, и их даже нет на хосте. Опять же, происходит ли какое-то простое кэширование? И почему docker-compose
передает переменные env, которые я не просил, в контейнер?