Can we override our project and network name inside docker-compose.yml, i.e. without using flag or environment variable?
This can be done in with a parameter of the docker-compose call:
$> docker-compose -p THISISMYPROJECT_AND_NWK_NAME up -d
Unfortunately there is no way to persist it at the moment. (see: https://github.com/docker/compose/issues/745)
That's why I personally prefer adding a bash alias for my projects in ~/.bash_aliases (Debian based Linux) for example:
# project PROJECT shortcuts alias dc_PROJECT_up='docker-compose -p PROJECT up -d' alias dc_PROJECT_down='docker-compose -p PROJECT down' # general docker compose shortcuts alias dc='docker-compose ' alias dc_up='docker-compose up -d' alias dc_down='docker-compose down'
So I can call dc_PROJECT_up to start my project with a project name PROJECT. The network name is PROJECT_default then.
Additionally you can setup additional networks with custom names in the docker-composer.yml like this (v. 2.1):
version: '2.1' ... networks: mynwk: driver: bridge name: mynwk ...
You can check this with the following command:
$> docker network ls
You should get a list of networks including yours and the default one.