Compose: Env_file рдХреЗ рд▓рд┐рдП рд╕рд╛рдкреЗрдХреНрд╖ рдкрде

рдХреЛ рдирд┐рд░реНрдорд┐рдд 26 рдЕрдкреНрд░реИрд▓ 2017  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: docker/compose

рдореЗрд░реЗ рдкрд╛рд╕ .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЬрдм рд╡рд╣ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдЬрдм рдореИрдВ рдЗрд╕реЗ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдмрд╕ рдХрд╣реЗрдЧрд╛ рдХрд┐ рдЪрд░ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВ рдФрд░ рд░рд┐рдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдВрдЧреЗред рдЬрдм рдореИрдВ .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реВрдБ рддреЛ рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ .env рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдвреВрдБрдв рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдвреВрдБрдврддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЬрдм рдореИрдВ .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ docker-compose рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рдкрде рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реВрдВ рдпрд╛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╕рд┐рдорд┐рд▓рд┐рдВрдХ рдмрдирд╛рддрд╛ рд╣реВрдВ, рддреЛ рд╕рднреА рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдЬрд╛рд╣рд┐рд░ рддреМрд░ рдкрд░ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рдореЗрдВ рд▓реЛрдбрд┐рдВрдЧ рдПрдирд╡реА рдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реИрдВ рдЬреЛ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рдлрд╛рдЗрд▓ рдХреЗ рд╕рдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореИрдВрдиреЗ .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд┐рдореНрдлрд╝рд▓рд┐рдВрдХ рдХрд░рдХреЗ рдЗрд╕реЗ "рдареАрдХ" рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓рд╛рд░рд╡реЗрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдореЗрд░рд╛ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ (рд╕рд░рд▓реАрдХреГрдд):

version: '3'

services:
  mysql:
    image: mariadb
    volumes:
      - mysql_data:/var/lib/mysql/data
    env_file:
      - ./api/.env
    environment:
      MYSQL_DATABASE: ${DB_DATABASE}
      MYSQL_USER: ${DB_USERNAME}
      MYSQL_PASSWORD: ${DB_PASSWORD}
      MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}

volumes:
  mysql_data:

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЕрд░реЗ @ рд╢рд┐рди-, рдореБрдЭреЗ рд╕рдЯреАрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред
рдореИрдВрдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдбреЙрдХ (https://docs.docker.com/compose/env-file/) рдкрдврд╝рд╛, рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рд╡рд┐рд╖рдп рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рдирд╣реАрдВ рджрд┐рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдУрдкреА рдиреЗ рдХрд╣рд╛, рдпрджрд┐ .env рдлрд╝рд╛рдЗрд▓ docker-compose.yml рдХреЗ рдкрде рд╕реЗ рднрд┐рдиреНрди рдкрде рдореЗрдВ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

version: '3.7'
services:
  postgres:
    image: postgres:alpine
    restart: always
    environment:
      POSTGRES_DB: ${DB_NAME}
      POSTGRES_USER: ${DB_USER}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
  php:
    build:
      context: .
      dockerfile: ./docker/php/Dockerfile
    restart: always
    env_file:
      - ./app/.env
    volumes:
      - ./app:/usr/src/app
  nginx:
    image: nginx:1.15.3-alpine
    restart: always
    volumes:
      - ./app:/usr/src/app
      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
    ports:
      - ${NGINX_PORT}:80
    depends_on:
      - php

рдЕрдВрджрд░ ./app/ рдореИрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╕рд┐рдореНрдлрдиреА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ .env рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ рдХрд┐ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ env var рд╕рдорд╛рди .env рдореЗрдВ, рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ 2 x .env рд╣реИ, рдЬреЛ docker рдореЗрдВ рдПрдХ рд╣реИред рдХрдореНрдкреЛрдЬрд╝ рдбреАрдЖрдИрдЖрд░ рдФрд░ рдПрдХ рдореЗрд░реА рдРрдк рдбреАрдЖрдИрдЖрд░ рдореЗрдВ

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рдкрд╣рд▓реЗ рджрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ:

4001

4618

рдЖрджрд┐ред

рд╡рд┐рд╕реНрдорд░рдг рдкреГрд╖реНрда рджреЗрдЦреЗрдВ: https://docs.docker.com/compose/environment-variables/

рдЕрд░реЗ @ рд╢рд┐рди-, рдореБрдЭреЗ рд╕рдЯреАрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред
рдореИрдВрдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдбреЙрдХ (https://docs.docker.com/compose/env-file/) рдкрдврд╝рд╛, рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рд╡рд┐рд╖рдп рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рдирд╣реАрдВ рджрд┐рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдУрдкреА рдиреЗ рдХрд╣рд╛, рдпрджрд┐ .env рдлрд╝рд╛рдЗрд▓ docker-compose.yml рдХреЗ рдкрде рд╕реЗ рднрд┐рдиреНрди рдкрде рдореЗрдВ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

version: '3.7'
services:
  postgres:
    image: postgres:alpine
    restart: always
    environment:
      POSTGRES_DB: ${DB_NAME}
      POSTGRES_USER: ${DB_USER}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
  php:
    build:
      context: .
      dockerfile: ./docker/php/Dockerfile
    restart: always
    env_file:
      - ./app/.env
    volumes:
      - ./app:/usr/src/app
  nginx:
    image: nginx:1.15.3-alpine
    restart: always
    volumes:
      - ./app:/usr/src/app
      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
    ports:
      - ${NGINX_PORT}:80
    depends_on:
      - php

рдЕрдВрджрд░ ./app/ рдореИрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╕рд┐рдореНрдлрдиреА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ .env рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ рдХрд┐ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ env var рд╕рдорд╛рди .env рдореЗрдВ, рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ 2 x .env рд╣реИ, рдЬреЛ docker рдореЗрдВ рдПрдХ рд╣реИред рдХрдореНрдкреЛрдЬрд╝ рдбреАрдЖрдИрдЖрд░ рдФрд░ рдПрдХ рдореЗрд░реА рдРрдк рдбреАрдЖрдИрдЖрд░ рдореЗрдВ

Afaik рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ docker-compose рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдЖрдкрдиреЗ NGINX_PORT рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдерд╛ред рдЙрд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИ рддреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реЗ рд▓реЛрдб рдХрд░реЗрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

giggio picture giggio  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

guycalledseven picture guycalledseven  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Hendrik-H picture Hendrik-H  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

saulshanabrook picture saulshanabrook  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

29e7e280-0d1c-4bba-98fe-f7cd3ca7500a picture 29e7e280-0d1c-4bba-98fe-f7cd3ca7500a  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ