= docker-compose == related * [[tech:docker:docker-compose:casosuso]] == comandos * detached start docker-compose up -d [service] * docker-compose up -d --scale = * * == variables * maneras de definir variables para usar en el fichero **docker-compose.yml** * están ordenadas de menos prioritaria a más prioritaria: - se puede definir un fichero **.env** con variables para usar en el **docker-compose**: VARIABLE - se pueden usar variables definidas en el shell dentro del **docker-compose** : ''${VARIABLE}'' - se pueden pasar variables desde la línea de comandos: ''docker run -e ='' o ''docker run %%--%%e ='' - se pueden especificar otros archivos de variables y pasarlas desde la línea de comandos: ''docker run %%--%%env-file '' # variables de entorno preceden a estas # variables pasadas por línea de comando preceden a estas # docker run --env = # se pueden especificar otras variables en otros archivos # docker run --env-file MYSQL_ROOT_PASSWORD=toor MYSQL_DATABASE=xxxx MYSQL_USER=xxxx MYSQL_PASSWORD=xxxx MYSQL_STORAGE_PATH=/home/mate/Docker/.storage/mysql/xxxx * para pasar variables a los contenedores, se puede: * usar la sección **environment**, donde definimos la variable (y podemos setear o hace que recoga el valor del shell) * usar la sección **env_file**, donde carga los valores desde un fichero externo * pasarlo por línea de comando con el parámetro **-e [=]** y al igual que la seccción environment, podemos setearlo directamente o dejar que coja el valor que haya en el shell * para ver el resultado de aplicar varias configuraciones de variables y que se obtiene el resultado que se desea, podemos usar: ''docker-compose config'' y nos mostrará el fichero con el resultado final una vez hecha la conversión de las diferentes variables * [[https://docs.docker.com/compose/environment-variables/]]