же для каждой команды враппер с загрузкой переменных среды.
Я в последнее время делаю так: В проекте создаю папку my и в ней .gitignore с содержимым * В неё кладу файл .env с содержимым вида DATABASE_URL=postgresql://bla:bla@bla:bla/bla SECRET_KEY_BASE=bla В неё же кладу файл mix с содержимым #!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" PROJECT_DIR="$( dirname "$SCRIPT_DIR" )" # Load up .env set -o allexport [[ -f $SCRIPT_DIR/.env ]] && source $SCRIPT_DIR/.env set +o allexport cd $PROJECT_DIR \mix $@ Потом в консоли делаю my/mix ecto.migrate, my/mix phx.server. Для некоторых команд типа mix deps.get использую оригинальный mix.
В докере - так там вообще можно задать свои переменные окружения при старте application-контейнера.
Обсуждают сегодня