Вам необходимо повторить все опции docker-compose
для каждой команды, которую нужно выполнить.
Есть два пути решения этой проблемы. Один из них - написать оболочку сценария оболочки, которая вызывает эту команду:
#!/bin/sh
# I am `docker-compose-erpnext.sh`
# Run me with any normal `docker-compose` options
exec docker-compose \
--project-name version-12 \
-f installation/docker-compose-common.yml \
-f installation/docker-compose-erpnext.yml \
--project-directory installation \
"$@"
Docker Compose также поддерживает переменные окружения для большинства своих настроек; многие из них, в свою очередь, также могут быть включены в .env
файл . Вы не можете указать --project-directory
таким образом, но задокументировано по умолчанию для каталога файла Compose.
export COMPOSE_PROJECT_NAME=version-12
export COMPOSE_FILE=installation/docker-compose-common.yml:installation/docker-compose-erpnext.yml
docker-compose up -d
docker-compose ps
Вы можете поместить эти две настройки в имя файла .env
в каталоге, из которого вы запускаете docker-compose
(не в подкаталоге installation
); но если у вас есть несколько развертываний, которыми вы пытаетесь управлять, вы не можете указать альтернативное имя для файла (для него нет ни параметра CLI, ни параметра переменной среды).