Compose: рдкреНрд░рд╕реНрддрд╛рд╡: рдкрд░рд┐рдпреЛрдЬрдирд╛-рдирд╛рдо рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдмрдирд╛рдпреЗрдВред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рджрд┐рд╕ре░ 2014  ┬╖  274рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: docker/compose

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд▓рд┐рдЦреЗрдВ рдХрдВрдкреЛрдЬрд╝ рдХреЗ рдмреЗрд╕рдиреЗрдо рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд▓рд┐рдЦреЗрдВ
рд╕реЗ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдпрд╛ рддреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдкреНрд░рддреНрдпреЗрдХ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП -p / --project-name рд╡рд┐рдХрд▓реНрдк рдкрд╛рд╕ рдХрд░рдирд╛ рдпрд╛ рд╕реЗрдЯ рдХрд░рдирд╛
COMPOSE_PROJECT_NAME рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ред

_Each_ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП --project-name рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рддреНрд░реБрдЯрд┐-рдкреНрд░рд╡рдг рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП-
рдЬрдм (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) docker-compose up рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдорд┐рд▓реЗрдЧрд╛
_another_ рдПрдХ рдЕрд▓рдЧ рдирд╛рдо рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ
рдПрдХ рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рд╕реМрджрд╛ рдХрд░рддреЗ рд╕рдордп COMPOSE_PROJECT_NAME рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рд╣реИ
рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред

рдкреНрд░рд╕реНрддрд╛рд╡: рдкрд░рд┐рдпреЛрдЬрдирд╛-рдирд╛рдо рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдмрдирд╛рдпреЗрдВ

рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рдЪрдирд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдирд╛рдо рдХреЛ рдПрдХ рдлрд╛рдЗрд▓ рдореЗрдВ рд╕реЗрд╡ рдХрд░реЗрдЧреА
рдмрд┐рд▓реНрдб-рд╕рдВрджрд░реНрдн рдЬрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд╣рд▓реА рдмрд╛рд░ рд╢реБрд░реВ / рдирд┐рд░реНрдорд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдпрджрд┐ рдХреЛрдИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдлрд╝рд╛рдЗрд▓ рдкрд╛рдИ рдЬрд╛рддреА рд╣реИ, рддреЛ рдЙрд╕ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдлрд╝рд╛рдЗрд▓ рдХрд░реЗрдВ рдФрд░ рдлреЗрдВрдХ рджреЗрдВ
--project-name рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

рдлрд╛рдЗрд▓ рдХрд╛ рдкрддрд╛

рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЫрд┐рдкреА .docker-compose рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рддрд╛ рд╣реИ
рдмрд┐рд▓реНрдб-рд╕рдВрджрд░реНрдн рдХреЗ "рд░реВрдЯ" рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВред рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░, рдП
project-name рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реИ;

tree -a
.
тФЬтФАтФА .docker-compose
тФВ┬а┬а тФФтФАтФА project-name
тФФтФАтФА docker-compose.yml

рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз

рдХреБрдЫ рдмрд╛рддреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛрдиреА рдмрд╛рдХреА рд╣реИ;

  • рдХреНрдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди-рдлрд╝рд╛рдЗрд▓ _automatically_ рдмрдирд╛рдИ рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП рдпрд╛ рдпрд╣ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП
    рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╣реЛ рд╕рдХрддреА рд╣реИ (рдЬреИрд╕реЗ docker-compose init --project-name=foobar )
  • рдХреНрдпрд╛ рдХрдорд╛рдВрдб рдХреЛ _remove_ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
    docker-compose destroy )
  • рдХрдореНрдкреЛрдЬрд╝ рдХреЛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрдВрдкреЛрдЬрд╝-рдлрд╝рд╛рдЗрд▓ ( --file ) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
    рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдЙрди рдкрд░ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рд░рдЪрдирд╛-рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдирд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
    рд╡рд┐рдиреНрдпрд╛рд╕?

рдФрд░, рдПрдХ рд╡реНрдпрд╛рдкрдХ рджрд╛рдпрд░реЗ рдореЗрдВ;

  • рдкреНрд░реЛрдЬреЗрдХреНрдЯ-_name_ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд░рдЪрдирд╛ рдПрдХ _random_ рдмрдирд╛ рд╕рдХрддреА рд╣реИ
    рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдФрд░ рд╕реНрдЯреЛрд░ рдЬреЛ рдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЕрдВрджрд░ рд╣реИред рдпрд╣ рдмрд╣реБрдд рдХрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛
    рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рдЪрд▓ рд░рд╣реА рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рдирд╛рдореЛрдВ рдХрд╛ рдЬреЛрдЦрд┐рдоред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдирд╛рдо рдмрджрд▓рдХрд░ рд▓рд┐рдЦреЗрдВ

kinfeature statu0-triage

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

рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╕реАрдЖрдИ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рдФрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛред

рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЗрди рдЕрджреНрд╡рд┐рддреАрдп, рдФрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ (# 45) рдореЗрдВ рднреА рдЗрд╕реА рддрд░рд╣ рдХреА рдЪрд░реНрдЪрд╛ рд╣реБрдИред .fig/project-name рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реЛрдиреЗ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬрдиреНрдо рджреЗрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ fig.yml рдЦреБрдж рдореЗрдВ рдбрд╛рд▓рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ (рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ # 45 рдореЗрдВ рд╕реБрдЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ docker рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ)ред

рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рдХреНрдпрд╛ рдлрд╛рдпрджреЗ рд╣реИрдВ?

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

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░ - рдХреНрдпрд╛ рд╣рдо рдЕрдВрдЬреАрд░ рдХреЗ рд▓рд┐рдП рдкрде рдХрд╛ рдПрдХ рд╣реИрд╢ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╕реАрдЖрдИ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рдФрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛред

рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЗрди рдЕрджреНрд╡рд┐рддреАрдп, рдФрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ (# 45) рдореЗрдВ рднреА рдЗрд╕реА рддрд░рд╣ рдХреА рдЪрд░реНрдЪрд╛ рд╣реБрдИред .fig/project-name рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реЛрдиреЗ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬрдиреНрдо рджреЗрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ fig.yml рдЦреБрдж рдореЗрдВ рдбрд╛рд▓рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ (рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ # 45 рдореЗрдВ рд╕реБрдЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ docker рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ)ред

рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рдХреНрдпрд╛ рдлрд╛рдпрджреЗ рд╣реИрдВ?

рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ, рдореИрдВ рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдЕрдкрдиреА рд╕реЛрдЪ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛;

  • рдЙрд╕ рдирд╛рдо рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ _start_ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдпрд╛рдиреА, --project-name=foobar ), рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рд╕реЗ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
  • рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рдЪрд▓ рд░рд╣реЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рдпрд╛ _versions_ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдирдХреЗ рдмрд┐рдирд╛ рдПрдХ-рджреВрд╕рд░реЗ рдХрд╛ рд╡рд┐рд░реЛрдз рдХрд┐рдП рдмрд┐рдирд╛
  • рдпрд╛, рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, .fig/project-name рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ _that рдЙрджрд╛рд╣рд░рдг_ рдХрд╛ рдирд╛рдо рд░рдЦрддрд╛ рд╣реИред

рд╢рд╛рдпрдж рдлрд╝рд╛рдЗрд▓ рдХреЛ instance-name рдпрд╛ рд╕рдорд╛рди рдХрд╣рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИ

рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд╕рд╛рде _possible_ рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ( project-name рдлрд╝рд╛рдЗрд▓ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдХрд░), рдореЗрд░рд╛ рдкреНрд░рд╛рдердорд┐рдХ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ _fig_ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕ рдирд╛рдо рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрддреГрддреНрд╡ рдХрд░реЗрдВрдЧреЗред

рд╕рдЪ рд╣реИ, рд╡рд┐рдХрд▓реНрдк .fig рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЪреАрдЬреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝рд╛рдЗрд▓ (рдУрдВ) рдХреЛ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрдбрд╝ рдХреЛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Git рдЗрд╕реЗ рд╕рдорд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рд╛рдл рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдЕрдВрдЬреАрд░ рдореЗрдВ рдбрд╛рд▓ рджреЗрдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк рдкреВрд░рдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ; рдпрджрд┐ рдирд╛рдо рдлреНрд▓реИрдЧ рдпрд╛ env- рд╡реЗрд░рд┐рдПрдмрд▓ рджреНрд╡рд╛рд░рд╛ рдУрд╡рд░рд░рд╛рдЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ fig.yml рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЙрд╕ рдирд╛рдо рдХреЛ рд░рдЦреЗрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ .fig/project-name рдЕрдВрджрд░ _start_ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЗрди рдЕрджреНрд╡рд┐рддреАрдп, рдФрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЬрд┐рдЬреНрдЮрд╛рд╕реБ; рдЖрдк рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ? рдпрд╛рдиреА cd project-a && fig ps рддреЛ cd project-b fig <something> ?

рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдЬрд┐рдЬреНрдЮрд╛рд╕реБ; рдЖрдк рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?

рдореИрдВ рдЖрдорддреМрд░ рдкрд░ fig python-tox fig рд╕реЗ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдЬреЛ рдореБрдЭреЗ рдкрд░реНрдпрд╛рд╡рд░рдг рд╕реЗрдЯ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рд╢реЗрд▓ рдореЗрдВ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рднреА tmux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ рд╣рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╢реЗрд▓ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк рдкреВрд░рдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ

рдХреВрд▓, рдореИрдВ рд╕рд╣рдордд рд╣реВрдВред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЕрдЧрд░ рдореИрдВ .fig/instance-name рдмрдирд╛рдо .fig-instance.yml рдмреЗрдЪрд╛ рдЬрд╛рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рднреА рдЙрджрд╛рд╣рд░рдг рд╡рд┐рд╢рд┐рд╖реНрдЯ рдУрд╡рд░рд░рд╛рдЗрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдорд╛рдореВрд▓реА рдмрд╛рдд рд╣реИред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреА рд╕реЛрдЪ; рдЕрдЧрд░ рдореИрдВ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ _images_ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рдЬреИрд╕реЗ myapp:build12345 , рдпрд╛ _containers_ рдХреЗ рдирд╛рдо рднреА? рдмрд╕ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ "рдорд╣рд╕реВрд╕" рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред

"рдпрд╛рджреГрдЪреНрдЫрд┐рдХ" рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдореЛрдВ рдХреЗ рдкреАрдЫреЗ рдореЗрд░рд╛ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рдерд╛ рдХрд┐ рдЬрдм рддрдХ рдЕрдВрдЬреАрд░ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрддрд╛ рд╣реИ, рддрдм рддрдХ рдЕрдЪреНрдЫреЗ рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдпрджрд┐ рдореИрдВ, рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдкрдиреЗ рд╕реЗрд╡рд╛-рдирд╛рдо (рдЬреИрд╕реЗ fig stop web ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдХрдВрдЯреЗрдирд░ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реВрдВ, рддреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдирд╛рдо рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рднреА рд╕реЛрдЪрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЕрдВрдЬреАрд░ .fig рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ рдПрдХ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдореЗрдВ рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦ рд╕рдХрддрд╛ рд╣реИ (рдЬреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рд╕рд╛рде рдорд╢реАрдиреЛрдВ рдкрд░ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИред

fig init рдорд╛рдзреНрдпрдо рд╕реЗ "рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдиреЗрдо" рдлрд╝рд╛рдЗрд▓ рдпрд╛ "рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ" "рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ" рдмрдирд╛рдиреЗ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░? рд╢рд╛рдпрдж рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдиреЗ рд╡рд╛рд▓реА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рд╕рдордп рд╣реЛ рддреЛ рдореИрдВ рдереЛрдбрд╝рд╛ рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ (рдкрд╛рдпрдерди рдореЗрдВ рдХреБрдЫ рднреА рдХреЛрдбрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ _really_ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ :) рд╣реЛрдЧрд╛

рдирд┐рд░реНрдорд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЫрд╡рд┐рдпреЛрдВ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд░рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЬреИрд╕реЗ myapp: build12345 , рдпрд╛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдирд╛рдо рднреА?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЫрд╡рд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░ рдирд╛рдо рд╕рд╛рдЭрд╛ рд╕рдВрдШрд░реНрд╖ рдкрд░ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд╕ рдореБрджреНрджреЗ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред

рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорд╛рдирд┐рдд рдирд╛рдо рдЕрднреА рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред рдореИрдВ рдПрдХ рдпреБрдЧрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдмрд╛рд╣рд░реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ (рди рдХреЗрд╡рд▓ рдЕрдВрдЬреАрд░) рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдЯреЗрдирд░ рдХреЛ рдирд╛рдо рд╕реЗ рдкрд╣рдЪрд╛рдирдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ:

  • рдкреБрд░рд╛рдиреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯреЛрдВ рдХреА рд╕рдлрд╛рдИ рдХрд░реЗрдВ, рдпрд╣ рдкрд╣рдЪрд╛рдирдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВ рдХрд┐ рдХрд┐рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдиреЗ рдПрдХ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдпрд╛
  • рдбрд┐рдмрдЧрд┐рдВрдЧ / рдирд┐рд░реАрдХреНрд╖рдг рдХрдВрдЯреЗрдирд░

рдпреЗ рджреЛрдиреЛрдВ рдЕрднреА рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрддрд╛ рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реЛрдЧрд╛ред рдЕрдЧрд░ рдореБрдЭреЗ рдПрдХ рдирд╛рдо рдвреВрдВрдврдирд╛ рд╣реИ рддреЛ рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рд╢рд╛рдорд┐рд▓ рд╣реИред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЕрдВрдЬреАрд░ .fig рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ рдПрдХ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдореЗрдВ рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦ рд╕рдХрддрд╛ рд╣реИ

рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЧрд▓рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред рдЕрдВрдЬреАрд░ рдореЗрдВ рдХрд┐рд╕реА рднреА рд▓рдЧрд╛рддрд╛рд░ рд░рд╛рдЬреНрдп рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреАрдбрд╝реЗ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХрд╛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ (рдЬреЛ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдЖрддреЗ рд╣реИрдВ)ред рдореИрдВ рдмрд╣реБрдд рдХреБрдЫ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рдпрд╣ рдПрдХ рд▓реЗрдмрд▓рд┐рдВрдЧ рдкреНрд░рдгрд╛рд▓реА рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рдЕрдВрдЬреАрд░ рдХреЗрд╡рд▓ рдХрдВрдЯреЗрдирд░ рдХреЛ рд▓реЗрдмрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ рдФрд░ рдлрд┐рд░ рдЙрд╕ рд▓реЗрдмрд▓ рдХреЗ рд╕рд╛рде рд╕рднреА рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХреНрд╡реЗрд░реА рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рднреА рд░рд╛рдЬреНрдп рдХреЛ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рд░рдЦрддрд╛ рд╣реИ (dockerd)ред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдЗрд╕ рдкрд░ рдмрд╛рдд рд╣реБрдИ рдереА, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд░реЛрдбрдореИрдк рдкрд░ рд╣реИред

"рдЕрдиреБрдорд╛рдирд┐рдд рд░реВрдк рд╕реЗ" рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдиреЗрдо рдлрд╝рд╛рдЗрд▓ рдпрд╛ "рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ" рдЕрдВрдЬреАрд░ рдЗрдирд┐рдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрдирд╛рдиреЗ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рдкреАрдЫреЗ рд╕рдВрдЧрдд рд╣реЛрдЧрд╛ред рдореИрдВ рдПрдХ fig init рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдмрд┐рд▓реНрдХреБрд▓ рдЖрд╡рд╢реНрдпрдХ рди рд╣реЛред рдЖрдзрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рдЗрд╕реЗ <basename>-<4 digit random id> рдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдмрдирд╛рддреЗ рд╣реБрдП рджреЗрдЦ рд╕рдХрддрд╛ рдерд╛

рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдЧрд░ рдЕрдВрдЬреАрд░ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдирд╛рдо рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ рддреЛ рдореИрдВ рдЗрд╕рд╕реЗ рджреВрд░ рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдПрдХ рд╣реА рд╣реЛрд╕реНрдЯ рдкрд░ 1000+ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рдФрд░ рдЬрдм рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рдирд╛рдо рд╕реЗ рдкрд╣рдЪрд╛рдирддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред

@ рдлреНрд░реИрдВрдХ- dspeed рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рддреЛ рдЖрдк рдЕрдВрдЬреАрд░ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ _start_, рд▓реЗрдХрд┐рди _ "Docker рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реАрдзреЗ" рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ ", рдЙрд╕рдХреЗ рдмрд╛рдж рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬреЛ рдЕрдВрдЬреАрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ?

рд╢рд╛рдпрдж рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рд░реВрдЪрд┐рдХрд░ рд╣реИ: https://github.com/docker/docker/pull/9882 - рдореЗрдЯрд╛-рдбреЗрдЯрд╛ рд╣реЛрдиреЗ рд╕реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рдЕрдзрд┐рдХ рддрд░реАрдХреЗ рдорд┐рд▓реЗрдВрдЧреЗ, рди рдХреЗрд╡рд▓ рдЙрдирдХрд╛ рдирд╛рдоред

рдЖрд╣ рд╣рд╛рдБ, рдореИрдВрдиреЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдХреЛ рдмрд╣реБрдд рдХреБрдЫ рдХрд┐рдпрд╛ рд╣реИ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрд╕ рдирдИ рдЫрддреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдФрд░ рд▓реЗрдХрд┐рди рдореИрдВ рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд╕ рдПрдХ рдИрдПрдирд╡реА рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рдФрд░ рдлрд┐рд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╣реИ рдХрд┐ рдХреЙрд╕реНрдЯрдпреВрдо рдлрд╝рд┐рд▓реНрдб рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рдЗрд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ: рдбрд╛рд░реНрдЯ:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреА рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЕрдВрдЬреАрд░ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдЬрдм рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрд╛, рддреЛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдирд╛рдо рдХреА рдкреАрдврд╝реА FIG_PROJECT_VARIABLE рдФрд░ --project-name -рдкреЛрдЬрд╝рд┐рд╢рди рдХреЛ рдмреЗрдХрд╛рд░ рдХрд░ рджреЗрдЧреАред рдЬреЛ 'рдЕрд╕реНрдерд╛рдпреА' рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреА рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЕрдВрдЬреАрд░ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдмрд╣реБрдд рдЬрд╝реНрдпрд╛рджрд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ; рдЕрдВрдЬреАрд░ "рдЪреБрдкрдЪрд╛рдк" рдПрдХ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдЧрд░ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реБрдЖ рддреЛ рдХрднреА-рдХрднреА рдмреБрд░рд╛ рд╣реЛрддрд╛ рд╣реИред

рдЬрдм рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрд╛, рддреЛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдирд╛рдо рдХреА рдкреАрдврд╝реА FIG_PROJECT_VARIABLE рдФрд░ --project-name-option рдХреЛ рдмреЗрдХрд╛рд░ рдХрд░ рджреЗрдЧреАред рдЬреЛ 'рдЕрд╕реНрдерд╛рдпреА' рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдЙрдкрд░реЛрдХреНрдд рдЪрд░реНрдЪрд╛ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛

  • рдпрджрд┐ --project-name рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдФрд░ .project-name рд▓рд┐рдЦреЗрдВ / рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ? рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ?)
  • рдХреЛрдИ --project-name рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди FIG_PROJECT_NAME рд╣реИ, FIG_PROJECT_NAME (рдФрд░ .project-name рд▓рд┐рдЦрдиреЗ / рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ?)
  • рдЙрдкрд░реЛрдХреНрдд рдореЗрдВ рд╕реЗ рдХреЛрдИ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди .project-name рд╕реЗрдЯ рд╣реИ, .project-name
  • рдЗрдирдореЗ рд╕реЗ рдХреЛрдИ рднреА рдирд╣реАрдВ; рдПрдХ _random_ рдирд╛рдо рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕реЗ .project-name рд▓рд┐рдЦреЗрдВ

рдХрд┐рд╕реА рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЬреЛ рдЙрди рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рдЕрдВрдЬреАрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдирд╛рдо рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдВрдЬреАрд░ рдореЗрдВ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдирд╛рдо рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИ рд▓реЗрдХрд┐рди рдЯреЗрдореНрдкрд▓реЗрдЯ рдирд╣реАрдВ рд╣реИ) рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдФрд░ рдлрд┐рд░ рднреА, рдореБрдЭреЗ рдпрд╣ рдмрд╣реБрдд рд╕рд╣рдЬ рд▓рдЧрд╛ рдХрд┐ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░рд┐рдгрд╛рдореА рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдирд╛рдо рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдореИрдВ рд╕рд┐рд░реНрдл fig up рднрд╛рдЧрддрд╛ рдерд╛ред
рдФрд░ рдХрд╣рддреЗ рд╣реИрдВ, рдЖрдк docker ps -a , рдпрд╣ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдпрджрд┐ рдпрд╣ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдирд╛рдореЛрдВ рд╕реЗ рднрд░рд╛ рд╣реЛред

рдПрдХ рд╡рд┐рдХрд▓реНрдк --random-name рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛?
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдирд╛рдорд╕реНрдерд╛рди рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП [a-zA-Z0-9_].* рдкреНрд░реАрдкреЗрдиреНрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╡реНрдпрд╛рдкрдХ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред

рдРрд╕реЗ informations рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fig.yml рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ?

schema-version: 1.1
project_name: foo
containers:
  web:
    build: .
   command: python app.py
    links:
     - db
    ports:
     - "8000:8000"
  db:
    image: postgres

рдФрд░ BC рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рд┐рдЦреЗрдВ / project.py :: from_config

<strong i="9">@classmethod</strong>
    def from_config(cls, name, config, client):
        if 'schema-version' not in config:
            config = {
                'schema-version': '1.0',
                'containers': config
            }
        dicts = []
        for service_name, service in list(config.containers.items()):
            if not isinstance(service, dict):
                raise ConfigurationError('Service "%s" doesn\'t have any configuration options. All top level keys in your docker-compose.yml must map to a dictionary of configuration options.' % service_name)
            service['name'] = service_name
            dicts.append(service)
        return cls.from_dicts(name, dicts, client)

@jderusse рдореИрдВ рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реВрдБ рдЬреИрд╕рд╛ рдЖрдкрдиреЗ рд╕реБрдЭрд╛рдпрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ # рекрел рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмреЗрд╣рддрд░ рдЬрдЧрд╣ рд╣реИ?

рд╡реИрд╕реЗ рднреА рдЗрд╕ рдЯрд┐рдХрдЯ рдкрд░ рд╕рдВрдХрд▓реНрдк рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд # 1233 рдЖрдкрдХреЛ рджреЛрдиреЛрдВ рджреБрдирд┐рдпрд╛ рдХрд╛ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд┐рд╕реА рднреА рдкрд╢реНрдЪрдЧрд╛рдореА рд╕рдВрдЧрддрддрд╛ рдХреЛ рди рддреЛрдбрд╝рддреЗ рд╣реБрдП рдЗрдЪреНрдЫрд┐рдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддрд╛ рд╣реИред

рдореВрд▓ рд░реВрдк рд╕реЗ рдореИрдВ docker-compose.yml рдореЗрдВ рдирд╛рдо рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред

рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдЖрдкрдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдмрд╛рд╣рд░ рд░рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрддреА рд╣реИ (рдЙрди рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдЕрд▓рдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд░рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ)ред

рдирдП рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рд╣реИ (рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдкрд░ рдЪреВрдХ рдХрд░рддрд╛ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╣рдо рдбрд┐рдлреЙрд▓реНрдЯ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдирд╛рдо, рдбрд┐рдлреЙрд▓реНрдЯ рд╕реНрдХреЗрд▓ рдЖрджрд┐ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рднреА рдореЗрдЯрд╛-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдВрдкреЛрдЬреАрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред

рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ dnephin рдиреЗ рдХреНрдпрд╛ рдХрд╣рд╛ред рдХреИрд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ .docker-compose ? рд╣рдо рд╡рд╣рд╛рдВ рд╕рднреА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рддрд░реНрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рдХрд▓реНрдк рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@dnephin sgtm

@mikehaertl рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ .docker-compose рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдлрд╝рд╛рдЗрд▓ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИ, рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рддрдиреА рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

@thaJeztah рдУрд╣, рдареАрдХ рд╣реИ, рдХреНрд╖рдорд╛ рдХрд░реЗрдВред рдореИрдВрдиреЗ рдпрд╣ рдЦреЛ рджрд┐рдпрд╛ред

@mikehaertl рдиреЗ рд╕рд┐рд░реНрдл .fig рд╕реЗ .docker-compose ;-) рддрдХ рдЙрдирдХрд╛ рдирд╛рдо рдмрджрд▓рд╛;

рд╕рд╣реА :)

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд╝рд╛рдЗрд▓ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдХреИрд╕реЗ ini рд╢реИрд▓реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ? рд╢реАрд░реНрд╖ рдкрд░ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд┐рдХрд▓реНрдк, рдПрдХ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреЗрдВ:

project-name = blabla

[build]
no-cache

рдЕрд░реНрдз-рд╕рдВрдмрдВрдзрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╣рдо рдпрд╛ рддреЛ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдпрд╛ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛:

  • рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗ рднрд┐рдиреНрди рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЕрдиреБрд░реЛрдз рд╣реИред)
  • рдЧреНрд░рд╛рд╣рдХ рдПрдкреАрдЖрдИ рд╕рдВрд╕реНрдХрд░рдг
  • рдореЗрдЬрдмрд╛рди рдореЗрдЬрдмрд╛рди
  • рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди

рдЕрдм рдЬрдм рд╣рдо рдХрдИ рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдкрдереЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЧреНрд░рд╛рд╣рдХ рдПрдкреАрдЖрдИ рд╕рдВрд╕реНрдХрд░рдг

рд╕рдВрднрд╡рддрдГ docker_host ?

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ (рдЬреЛрдбрд╝рд╛)

рдореИрдВ рдмрд╕ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ред

рдореИрдВ рдПрдХ рдРрд╕реЗ рдмрд┐рдВрджреБ рдкрд░ рд╣реВрдВ рдЬрд╣рд╛рдВ рд╣рдорд╛рд░реЗ docker рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдореВрд▓ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдирд┐рдкрдЯрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдм рдореИрдВ рдЗрд╕реЗ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рджреЛрд╣рд░рд╛ рд░рд╣рд╛ рд╣реВрдВред рдЪреВрдВрдХрд┐ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╕рдорд╛рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рд╕рднреА рдПрдХ рд╣реА рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (рдФрд░ рдЗрд╕рд▓рд┐рдП, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдореИрдВ рдПрдХ рд╣реА рд╣реЛрд╕реНрдЯ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ 2 рд╕реЗрд╡рд╛рдПрдВ рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ред

рдореБрдЭреЗ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдирд╛рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдиреЗ рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ 100% рд╕рдХрд╛рд░рд╛рддреНрдордХ рдирд╣реАрдВ рд╣реВрдВ рдЬреЛ рдЫрд╡рд┐ рдирд┐рд░реНрдорд╛рдг рд╕рдордп рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд░рддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рднреА, рдореИрдВрдиреЗ Makefile рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХреАред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдЬрдм рдЖрдк рдХрд╕реНрдЯрдо рдкрд░ рдЕрдорд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ docker-compose рдЖрджреЗрд╢, рдЖрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ -p customname ред

рдЕрднреА рдореИрдВ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдкрд░ рдХрджрдо рд░рдЦрдиреЗ рд╕реЗ /home/alice/myproject рдФрд░ /home/bob/myproject рдореЗрдВ docker-compose setups рдХреЛ рд░реЛрдХрдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдХреНрдпрд╛ рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХреЗ рдмрдЬрд╛рдп рдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓ рдкрде рд╕реЗ рдХрдВрдЯреЗрдирд░ рдирд╛рдореЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ?

@ рдХреНрд░рд┐рд╕-рдорд╛рд░реНрдЯрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ ...

alias docker-compose="docker-compose -p ${PWD}"

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдореЛрдВ рдореЗрдВ рд╕реЗ / рд╕реНрдЯреНрд░рд┐рдкреНрд╕-рд░рдЪрдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐?

рдХреНрдпрд╛ рдпрд╣ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдореЛрдВ рдореЗрдВ рдХрд┐рди рд╡рд░реНрдгреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ?

рдореИрдВрдиреЗ рдЕрдкрдиреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ docker-compose.yml рдбрд╛рд▓рдиреЗ рдХрд╛ рдХрд╛рдо рдХрд┐рдпрд╛, рдЬреЛ рдХрд┐ рдПрдХ рдкрд░реНрдпрд╛рдкреНрдд рдкрд░реНрдпрд╛рдкреНрдд рдмрджрд▓рд╛рд╡ рд╣реИ

рдпрд╣ рдХреБрдЫ рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рднреА git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдПрдХ рд╣реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА (рдЬреИрд╕реЗ, $ HOME, рдпрд╛ $ HOME / рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕) рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрд░рдЪрдирд╛ (рдЬреИрд╕реЗ, рдПрдХ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдкреНрд░рддрд┐ рд╕рдВрдЧрдарди) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдкрд░реЗрд╢рд╛рдиреА рдореЗрдВ рдкрдбрд╝ рдЬрд╛рддрд╛ рд╣реИред рдЕрдХреНрд╕рд░ рдХрд░рддреЗ рд╣реИрдВ), рдпрд╛ рдпрджрд┐ рдЖрдкрдХреА рдорд╢реАрди boot2docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдЬреЛ рдПрдХ рд╣реА рдмреЙрдХреНрд╕ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд▓реАрдХ рдХрд░рдиреЗ рдХреА рдкреНрд░рд╡реГрддреНрддрд┐ рд░рдЦрддреА рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд╡рдзрд╛рди рди рд╣реЛрдВ рдХрд┐ docker- рдорд╢реАрди рдЖрдкрдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ VM рджреЗрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ # 2294 рдпрд╛ рд╕рд┐рд░реНрдл рдбреЙрдХрдЯрд░-рдорд╢реАрди рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рд╕реНрд╡рдЪреНрдЫ рд░рд╣рдиреЗ рд╕реЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рднреА рдареАрдХ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред

рдореИрдВ рдЗрд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреА рднреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЗрд╕рдХрд╛ рдПрдХ рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рд╣реЛрдЧрд╛ред

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ AWS рдкрд░ рдПрдХ рд╕рд╛рдЭрд╛ рдорд╢реАрди рд╣реИ рдФрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ docker-compose.yml рд╣реИ рдЬреЛ рд░реВрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдПрдХ рдЕрд▓рдЧ рдирд╛рдо рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреНрд▓реЛрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рддреЛ рд╡реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ / рд░реЛрдХрдиреЗ рдХреЗ рдореБрджреНрджреЛрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрддреЗ рд╣реИрдВред

рдирдП v2 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдЗрд╕ рддрд░рд╣ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ https://github.com/docker/compose/issues/745#issuecomment -74028861 рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╣реИ

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ container_name_prefix , рд╣реИ рдирд╛?

@ schmunk42

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рдХрдВрдЯреЗрдирд░_рдирд╛рдо_рдкреНрд░реВрдл рд╣реИ, рд╣реИ рдирд╛?

рдЗрд╕реЗ volume_name_prefix , image_name_prefix рдФрд░ network_name_prefix рд░реВрдк рдореЗрдВ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ project_name рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╢рдмреНрдж рд╣реИред

.docker-compose docker-compose.override.yml ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдПрдХ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рд╛рд░реВрдк (рдЬреИрд╕реЗ ini) рдХреНрдпреЛрдВ рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ, рдЬрдм рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА YAML рдорд┐рд▓рд╛ рд╣реИ?
рдЗрд╕рд▓рд┐рдП рдореИрдВ @JoseusEarl рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП # 745 (рдЯрд┐рдкреНрдкрдгреА) рдореЗрдВ @jderusse рдХреЗ рд╕реБрдЭрд╛рд╡ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ project_name рдХреБрдВрдЬреА docker-compose.yml рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реВрдВред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА docker-compose.override.yml рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ .gitignore рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рдЫреЛрдбрд╝рдХрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдХреЛрдИ рддреАрд╕рд░рд╛ рд╕реНрдкрд╖реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдУрд╡рд░рд░рд╛рдЗрдб рдлрд╝рд╛рдЗрд▓ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдореИрдВ .docker-compose.local-override.yml рд╕реБрдЭрд╛рд╡

YAML рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореИрдВ рдПрдХ рдирдИ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдХреБрдВрдЬреА рдмрдирд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо project , рдЬрд┐рд╕рдореЗрдВ project_name , рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЕрдиреНрдп рдЪрд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдирд╛рдо рд╕реНрдерд╛рди рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рджреЗрдХрд░ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

project:
  project_name: "your-project"
  network_prefix: "abc"

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ network_prefix рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рд╕реАрдзреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рд╕реАрдзреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖ рд╕рдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рджреЛ рдорд╛рдорд▓реЗ рд╣реИрдВ:

  • рдкрд╣рд▓рд╛ рдорд╛рдорд▓рд╛ рд╣реИ "рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдЕрдиреВрдард╛ рдирд╛рдо рджреЗрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИ"ред рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, project_name рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
  • рдЕрдиреНрдп рдорд╛рдорд▓реЗ рдиреЗрдЯрд╡рд░реНрдХ рд╣реИрдВ рдЬреЛ рдмрд╛рд╣рд░реА рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдореЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡рддрдГ рд╡реИрд╕реЗ рднреА рдмреЗрд╣рддрд░ рд╣реИред

рдКрдкрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕реБрдЭрд╛рд╡ рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ, рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдкрд░ +1
рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп docker-compose.yml рдореЗрдВ рдПрдХ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рднреА +1ред

рдкрд╣рд▓реЗ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╕рдореНтАНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд▓реБрдХрдЕрдк рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реЛрдЧрд╛; рдкрд╣рд▓реЗ рдХреА рд╡рд╕реНрддреБрдПрдВ рдмрд╛рдж рдХреЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рдкреВрд░реНрд╡рддрд╛ рд▓реЗрддреА рд╣реИрдВ:

  1. рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛ рддреЛ --project-name рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
  2. рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдкрд░ COMPOSE_PROJECT_NAME рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
  3. рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ project_name рд╕реЗ рдХреБрдВрдЬреА docker-compose.yml (рдпрд╛ рдЬрд╣рд╛рдБ рднреА рдЙрд╕ рд╕реЗрдЯрд┐рдВрдЧ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред
  4. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЗ basename рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдореИрдВ 2 рдмрдирд╛рдо 3 рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╣реВрдВ:

  • --project-name рд╕рд╛рде рд╕рдВрдЧрддрд┐ рдХреЗ рд▓рд┐рдП, COMPOSE_PROJECT_NAME рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ project_name: рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рд▓реЗрдХрд┐рди: COMPOSE_PROJECT_NAME project_name: рд╕реЗ рдЕрдзрд┐рдХ рдкреВрд░реНрд╡рддрд╛ рд▓реЗрдирд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдХрд╛рд░рдг рдЧрд▓рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХрд╛ рдЧрд▓рддреА рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ; рдпрд╣ рдбреАрдмрдЧ рдХрд░рдирд╛ рдХрдард┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ?

рдмреАрд╕реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореВрд▓реНрдп %(project_name)s_%(service_name)s_%(instance_number)s рд╕рд╛рде рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ container_name_pattern рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ
рдпрд╣ рдкреИрд░рд╛рдореАрдЯрд░ рд╣рдореЗрдВ рдЗрд╕реЗ hardcodedproject_%(service_name)s_%(instance_number)s рдмрджрд▓рдиреЗ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдХрд░рддрд╛ рд╣реИ

рдореИрдВ 10 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рд╕рд┐рд░реНрдл рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЖрдпрд╛ рд╣реВрдВред

рдкрд╣рд▓реА рдЪреАрдЬрд╝ рдЬреЛ рдореИрдВрдиреЗ рд▓рд┐рдЦреА рдереА рд╡рд╣ рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рд╕рдВрджрд░реНрдн рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╕рд╣реА рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рд░рд╣рд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП project_name 1 рдХреЗ рд▓рд┐рдП +1 docker-compose.yml рдореЗрдВ рдХреБрдВрдЬреА

: +1: @ cr7pt0gr4ph7 рд░рдгрдиреАрддрд┐ рдХреЗ рд▓рд┐рдП

@ Cr7pt0gr4ph7 рд░рдгрдиреАрддрд┐ рдХреЗ рд▓рд┐рдП +1

рд░рдЪрдирд╛ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд╢рд╛рдпрдж рд▓реЛрдЧ рдЗрд╕рдХреА рджреЗрдЦрднрд╛рд▓ рд╕реНрд╡рдпрдВ рдХрд░рддреЗ рд╣реИрдВ?

рджреВрд╕рд░реА рдУрд░, docker рдорд╢реАрди рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ рдХрд┐ рдХрд┐рд╕ рдорд╢реАрди рдкрд░ рдПрдХ рдХрдореНрдкреЛрдЬрд╝ рдмрд┐рд▓реНрдб рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдФрд░ рд▓рдХреНрд╖реНрдп рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░реЗрдВред рд╣рдореНрдо, рдпрд╣ рдПрдХ рдХрдард┐рди рд╣реИред

https://github.com/docker/compose/issues/745#issuecomment -182296139 рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИред рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдорд╛рди рдкрд░ рдкреВрд░реНрд╡рд╡рд░реНрддреАрддрд╛ рд▓реЗрдЧрд╛, рдЬреЛ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ (рдпрд╣ рдорд╛рдирдХрд░ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ)ред

рдХреБрдЫ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХрд╛рдзрд┐рдХ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ "рдкреНрд░рд╛рдердорд┐рдХ" рдпрд╛ "рдПрдХреНрд╕реНрдЯреНрд░рд╛" рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░реЗрдЧреА, рдЬреЛ рдЕрднреА рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИред рдХрд┐рд╕реА рднреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрд▓рдЧрд╛рд╡ рдореЗрдВ рдпрд╛ рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдЙрдЪрд┐рдд рд╣реЛ, рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрдВ (рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рд╡рд┐рдХрд▓реНрдк рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ рдорд╛рди рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред

рдХреБрдЫ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХрд╛рдзрд┐рдХ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ?

рдпрджрд┐ рдЖрдк docker-compose -f compose1.yml -f compose2.yml up рдЬреИрд╕рд╛ рдХреБрдЫ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рджреЛрдиреЛрдВ рдлрд╛рдЗрд▓реЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИрдВ, рддреЛ рдкреНрд░рдпреБрдХреНрдд рдирд╛рдо compose2.yml рд╕реЗ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рдПрдХ рд╕рдорд╛рдзрд╛рди рдкрд░ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рдкрд╕рдВрдж рд╣реИ: -) I do project_name -

HTTP 500 рдЖрдВрддрд░рд┐рдХ рд╕рд░реНрд╡рд░ рддреНрд░реБрдЯрд┐ рдкреГрд╖реНрдареЛрдВ рдореЗрдВ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдореИрдВ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдП рдпрд╛ рдЙрд╕рдХрд╛ рдирд┐рд╡рд╛рд░рдг рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореИрдВ рдЙрд╕реЗ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд╣ / рд╡рд╣ zcat database-dump.tgz | docker exec -i projectname_db_1 psql рдпрджрд┐ рд╕рд░реНрд╡рд░ рдиреЗ рдиреЛрдЯ рдХрд┐рдпрд╛ рдХрд┐ рдХреЛрдИ PostgreSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдирд╣реАрдВ рд╣реИ; рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдФрд░ рдлрд┐рд░ рдореИрдВ рд╕реНрд╡рдпрдВ projectname рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЕрдиреНрдпрдерд╛ рдорджрдж рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реЛрдВ рдХрд┐ COMPOSE_PROJECT_NAME рдХрдВрдкреЛрдЬрд╝ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдкрд░ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдореМрдЬреВрджрд╛ рдбреЙрдХрд░ рдХрдорд╛рдВрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддрд╛рд░реНрдХрд┐рдХ рдпрд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред

@ Cr7pt0gr4ph7 рд░рдгрдиреАрддрд┐ рдХреЗ рд▓рд┐рдП +1

рдХрд┐рд╕реА рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред
+1 project_name рдХреЗ рд▓рд┐рдП docker.compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВред V2 рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реЛрдВ рдХрд┐ COMPOSE_PROJECT_NAME рдХрдВрдкреЛрдЬрд╝ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдкрд░ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдореМрдЬреВрджрд╛ рдбреЙрдХрд░ рдХрдорд╛рдВрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддрд╛рд░реНрдХрд┐рдХ рдпрд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рдорд╛рдиреНрдп рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред
рдХреНрдпрд╛ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ? рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рдЧрд▓рддреА рд╕реЗ COMPOSE_PROJECT_NAME рдирд╛рдордХ рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдмрдирд╛ рд▓реЗрдЧрд╛ред

рдХреНрдпрд╛ рдРрд╕рд╛ рдкреАрдЖрд░ рдмрдирд╛рдирд╛ рдареАрдХ рд░рд╣реЗрдЧрд╛ рдЬреЛ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП project_name docker-compose.yml рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ? рдпрд╛ рдХреНрдпрд╛ рд╣рдо project_name рдореВрд▓реНрдп рдХреЛ рдкрд┐рдЫрд▓реЗ yml рдлрд╝рд╛рдЗрд▓ рд╕реЗ рддреБрд░рдВрдд рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬреИрд╕рд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдорд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ?

version: "2"
project:
    default_name: "app"

рдореИрдВ рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (https://github.com/docker/compose/pull/3118) рдмрджрд▓ рджреВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ project рдЕрдиреБрднрд╛рдЧ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ...ред

+1 рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд░рд╣реЗрдВ

@timgriffiths , рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдирд╡реАрдирддрдо RC рдореЗрдВ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝рдХрд░ рд╕рдВрднрд╡ рд╣реИ:

@deizel рддреЛ рдореИрдВрдиреЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдлрд╝рд╛рдЗрд▓ рдХреЛ рджреЗрдЦрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐

рд╣рдорд╛рд░реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ Prod, Staging, UAT, Dev рдХрдВрдкреЛрдЬрд╝ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдЯреИрдХ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдг рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдХрднреА-рдХрднреА рд╣рдо рдПрдХ рд╣реА рдЭреБрдВрдб рдкрд░ рдПрдХ рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдФрд░ UAT рд╡рд╛рддрд╛рд╡рд░рдг рдЦрдбрд╝реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рд╡реИрд░рд┐рдПрдмрд▓ рдпрд╛ рдХреНрдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓ рдореЗрдВ рдерд╛ рддреЛ рд╕рдм рдХреБрдЫ рд░реЗрдкреЛ рдореЗрдВ рдЪреЗрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╣рдо рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдЗрдирд▓рд╛рдЗрди рдФрд░ рд╕рд░рд▓ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

+1 рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдорд╛рд░реА рд░рдЪрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдкреВрд░реНрд╡-рдирд┐рд░реНрдорд┐рдд рджреВрд░рд╕реНрде рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рд╣реИрдВред рдХрдВрдкреЛрдЬрд╝ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрди рд╡реЙрд▓реНрдпреВрдо рдирд╛рдореЛрдВ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдЬреЛ рддрдм рдмреЗрдореЗрд▓ рдирд╛рдореЛрдВ рдХреЗ рдХрд╛рд░рдг рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛрддреЗ рд╣реИрдВред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рд┐рдЦреЗрдВ yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рди рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкрд░реНрдпрд╛рд╡рд░рдг рдореЗрдВ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ @edevenport рдЖрдк рдирд╛рдорд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмрд╛рд╣рд░реА рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

# docker-compose.prod.yml
volumes
  dbdata:
    external:
      name: my-project-db-data

рдзрдиреНрдпрд╡рд╛рдж @fesor - рдореБрдЭреЗ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрдордХрддрд╛ рд╣реБрдЖ рд╡реЙрд▓реНрдпреВрдо рдмрдврд╝рд╛ рд░рд╣рд╛ рд╣реВрдВ:

    ...
    volumes:
      - media:/data/media:ro

volumes:
  media:
    driver: glusterfs

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣реЛрд╕реНрдЯ рдкрд░ media projectname_media media рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рддрдм рддрдХ рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ glusterfs рд╡реЙрд▓реНрдпреВрдо рдирд╣реАрдВ рдмрдирддрд╛ рд╣реИред рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдореЗрдЬрдмрд╛рди рдкрд░ glusterfs рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдврд╝рддреЗ рд╣реБрдП рдФрд░ docker-compose рдлрд╝рд╛рдЗрд▓ рдореЗрдВ external рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рдиреЛрдбреНрд╕ рдкрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

@ рд╕рд╛рднрд╛рд░ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдБ рдХрд┐ред рд▓реЗрдХрд┐рди рдЖрдк рдХреЗрд╡рд▓ docker volume create рд╕рд╛рде рдЗрд╕ рд╡реЙрд▓реНрдпреВрдо рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

    volumes:
      - media:/data/media:ro

volumes:
  media:
    external:
      name: my-glusterfs-media

рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдХрд┐рд╕реА рднреА рдЙрдкрд╕рд░реНрдЧ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдПрдВред

@timgriffiths рдХрд╛ рдорд╛рдорд▓рд╛ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдирд╣реАрдВ рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ docker-compose рдЖрд╕рдкрд╛рд╕ рд╕рд╛рдзрд╛рд░рдг рд░реИрдкрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдпрд╛рдж рди рд░рд╣реЗрдВред

@fesor рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рд╡рд░реНрдгрдирд╛рддреНрдордХ рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдореЛрдВ рдореЗрдВ

@timgriffiths рдореИрдВрдиреЗ рдПрдХ PR (https://github.com/docker/compose/pull/3118) рдмрдирд╛рдпрд╛ - рд╢рд╛рдпрдж рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреАред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХрд╛рдзрд┐рдХ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рддреЛ рдпрд╣ рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рд╕рдВрднрд╛рд▓рддреА рдирд╣реАрдВ рд╣реИред

@fesor рдХрд┐ рдкреАрдЖрд░ рд╕рд╣реА рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рд▓рдп рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ?

рдЕрдм рдХрдореНрдкреЛрдЬрд╝ рдкрд░реНрдпрд╛рд╡рд░рдг рдлрд╝рд╛рдЗрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╡рд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

@mkuzmin рдпрд╣ рджреБрдЦрдж рд╣реИ рдХрд┐ COMPOSE_FILE рд▓реЗрдХрд┐рди COMPOSE_OVERRIDE_FILE ред

@fesor AFAIK рдЖрдк рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

@ schmunk42 рдореИрдВ рдпрд╛ рддреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдореИрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ:

docker-compose up -d

рдХреЗ рдмрдЬрд╛рдп

docker-compose -f $COMPOSE_FILE -f $COMPOSE_OVERRIDE_FILE \
            up -d

COMPOSE_PROJECT_NAME рдКрдкрд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ CI рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдФрд░ .env рдлрд╝рд╛рдЗрд▓ рдЬреИрд╕реА рд╕реБрд╡рд┐рдзрд╛ рд╢рд╛рдВрдд рд╣реИ рд▓реЗрдХрд┐рди ... рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рджреГрдврд╝рддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдмреЗрдХрд╛рд░ рд╣реИред

рдореИрдВ .env DRY env рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ (рдФрд░ docker- рд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП <1.7 рдореЗрд░реЗ рдкрд╛рд╕ рд╕рд░рд▓ рдЖрд╡рд░рдг рд╣реИ), рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред @timgriffiths рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЭреБрдВрдб рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде рдорд╛рдорд▓реЗ рдкрд░ рдмрддрд╛рдпрд╛ред

COMPOSE_FILE=one.yml:two.yml рдПрдХрд╛рдзрд┐рдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИред рддреЛ рдмрд╕ $COMPOSE_FILE рдореЗрдВ рдУрд╡рд░рд░рд╛рдЗрдб рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ

@dnephin рдиреЗ рдЙрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛, рдЕрдЪреНрдЫрд╛ред

рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ ... рдЭреБрдВрдб рдХреА рддреИрдирд╛рддреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрднрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рдЬреЗрдирдХрд┐рди рдХреА рдиреМрдХрд░реА рдИрдПрдирд╡реА рдореЗрдВ COMPOSE_PROJECT_NAME рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЗрд╡рд▓ рдореИрдиреБрдЕрд▓ рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рдФрд░ рдореЗрд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ ...

рдпрд╣ рдореБрджреНрджрд╛ рд▓рдЧрднрдЧ 2 рд╕рд╛рд▓ рдкреБрд░рд╛рдирд╛ рд╣реИ рдФрд░ рдЕрднреА рднреА рдЕрдирд╕реБрд▓рдЭрд╛ рд╣реИред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЖрдЦрд┐рд░рдХрд╛рд░ docker рдХреА рдЯреАрдо рдореЗрдВ рдХреНрдпрд╛ рдмрд╛рдзрд╛ рдЖ рд░рд╣реА рд╣реИ рдЖрдЦрд┐рд░рдХрд╛рд░ рдПрдХ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рдЬреЛрдбрд╝реЗрдВред рдХреНрдпрд╛ docker-compose.yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдирдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдХрдард┐рди рд╣реИ?

рдЬрдмрдХрд┐ .env рд╕рд╛рде рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЕрдЪреНрдЫрд╛ рд╣реИ, рдпрд╣ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ ( .env рдлрд╝рд╛рдЗрд▓ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ)ред рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИред

рдФрд░ рдореИрдВрдиреЗ рдЕрдиреНрдп рдирдП рдореБрджреНрджреЛрдВ рдХреЛ рднреА рджреЗрдЦрд╛ рд╣реИ рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг (# 3966)ред

рддреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ?

рдХреНрдпрд╛ docker-compose.yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдирдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдХрдард┐рди рд╣реИ?

рдирд╣реАрдВ! рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдХрднреА рдХрдард┐рдирд╛рдИ рдирд╣реАрдВ рд╣реБрдИред

рдЬрдмрдХрд┐ .env рд╕рд╛рде рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЕрдЪреНрдЫрд╛ рд╣реИ, рдпрд╣ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ ( .env рдлрд╝рд╛рдЗрд▓ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ)ред рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИред

рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ! .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХрдореНрдкреЛрдЬрд╝ рджреНрд╡рд╛рд░рд╛ рдкрдврд╝рд╛ рдЬрд╛рдирд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдкрдврд╝реЗ рдЬрд╛рдиреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓реЗрдВ ( app.env ) рдФрд░ env_file рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рд╕рдВрджрд░реНрдн рджреЗрдВред

рддреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ?

docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдХрдо рдкреЛрд░реНрдЯреЗрдмрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХреБрдЫ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЕрдм (рдХреЗ рд╕рд╛рде рдПрдХ рддрд░рд╣ рд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ .env ) рд▓рдЧрд╛рддрд╛рд░ рдХреА рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдХрд╛ рддреНрдпрд╛рдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП docker-compose.yml рдореЗрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рд╡рд┐рдХрд▓реНрдк рдХрдордЬреЛрд░ рд╣реИ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдорд╛рдорд▓рд╛ред рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝реА рд╣реИред

рдПрдХ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝.рдорд╛рдЗрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдХрдо рдкреЛрд░реНрдЯреЗрдмрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ,

рдХреНрдпрд╛ рдпрд╣ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рдЕрдкрдиреЗ docker-compose.yml рдореЗрдВ рдХрднреА рднреА рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рд░реЗрдкреЛ рдореЗрдВ docker-compose-example.yml рдЖрдкреВрд░реНрддрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЯреНрд╡рд┐рдХ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдореИрдВ рдЕрдкрдиреЗ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд env var рдпрд╛ рдореИрдк рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВред рд╣рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рднреА рдХреНрдпреЛрдВ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рдП?

рдЕрдкрдиреЗ рддрд░реНрдХ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд╕рднреА network рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ .env рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдкреЛрд░реНрдЯреЗрдмрд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рд╣реЛрд╕реНрдЯ рдорд╢реАрди рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрдЯрдЕрдк рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред

рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд░рдЦреЛ: рдХреНрдпрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдЗрддрдирд╛ рдЦрд╛рд╕ рдмрдирд╛рддрд╛ рд╣реИ? рдкрд╣рд▓реЗ рд╕реЗ рд╣реА docker-compose.yml рдореЗрдВ рдХрдИ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд▓ рдирд╣реАрдВ рд╣реИрдВред рдХреНрдпреЛрдВ рдирд╣реАрдВ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЪреБрдирдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджрд┐рдпрд╛ рдЬрд╛рдП?

рдореБрдЭреЗ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдХрд▓реНрдк рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреИрд╕рд╛ рдХрд┐ рдбреЙрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЙрдирдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рднреАрддрд░ рдХрдВрдЯреЗрдирд░реАрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЗрд╡рд▓ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдЙрди рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╕реНрдерд┐рд░ рд╣реЛрдирд╛ рдареАрдХ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рд▓рдЪреАрд▓реЗрдкрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╡рд╛рд▓реА рдПрдХ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рдЙрдирдХреЗ Vagrantfile рд╕рд╛рде рдпреЛрдирд┐ рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рдмрдбрд╝реА рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдлрд┐рд░ рд▓реЛрди рд╡реБрд▓реНрдл рдбреЗрд╡рд▓рдкрд░ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рднреА рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВред

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

рдПрдХ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝.рдЖрдИрдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдХрдо рдкреЛрд░реНрдЯреЗрдмрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдРрд╕реА рдХреЛрдИ рдЪреАрдЬ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЕрдм рдЬрдм рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝рд┐рдЯ.рдореИрдПрд▓ рдХреЗ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдХрд╛ рддреНрдпрд╛рдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ (.env) рд╣реИ, рддреЛ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рдХрдордЬреЛрд░ рд╣реИред рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝реА рд╣реИред

docker-compose.yml рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдХрдо рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреИрд╕реЗ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ?

IMHO рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд┐рдкрд░реАрдд рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ # 3966 @mikehaertl рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рддреА рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо docker-compose.yml рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рд╣реЛрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдХрдо рдкреЛрд░реНрдЯреЗрдмрд▓ рдмрдирд╛рддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐: рдПрдХ рд╣реА рдорд╢реАрди рд╕реЗ рд╢реБрд░реВ рдХреА рдЧрдИ рдЕрдиреНрдп рд░рдЪрдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЯрдХрд░рд╛рд╡ рдХреА рдПрдХ рдмрдбрд╝реА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ) рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдПрдХ рд╕рдореНрдореЗрд▓рди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрдВрдЯреЗрдирд░ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рдЬреЛ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ, рдХрдо рд╕реЗ рдХрдо рд╢реБрд░реВ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реЛрдВрдЧреЗред

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

рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝.рдЖрдИрдПрдордПрд▓ рдореЗрдВ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╣реВрдБред .Env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЕрдиреНрдп рдЪреМрдЦрдЯреЗ рдореЗрдВ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд░реЗрдкреЛ рд╕реЗ рджреВрд░ рд░рд╣реЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореЗрд░реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реНрдерд╛рдиреАрдпрдХреГрдд рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд╡реЗ рдЬрд┐рддрдирд╛ рдХрдо рдбреЙрдХрдЯрд░ (рдкрд╣рд▓реЗ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдЙрддрдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдореИрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рд╕реЗ рдирд╣реАрдВ рдЯрдХрд░рд╛рдПрдЧрд╛ред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдЪреАрдЬреЗрдВ рдХрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣реИрдВред рдмрд╕ рдПрдХ рд╕рд░рд▓

рдХреНрд▓реЛрди рд░реЗрдкреЛ
docker- рд░рдЪрдирд╛ рдХрд░рдирд╛

рдореЗрд░рд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЕрднреА рднреА рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдирд╛рдирд╛ рд╣реИ рдЬреЛ @ schmunk42 рдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рдХрдВрдЯреЗрдирд░ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдореЗрдЬрдмрд╛рди рдХреА рджреЗрдЦрднрд╛рд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдореИрдВ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рджреЗрдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдпрджрд┐ рдХрд┐рд╕реА рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ .env рдлрд╝рд╛рдЗрд▓ (рдпрджрд┐ рд╣реЛрд╕реНрдЯ рдкрд░ рд╕реАрдзреЗ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХреЗ рднреАрддрд░ рдФрд░ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ рдирд╛рдорд┐рдд рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИ рддреЛ рдирд╛рдорд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЕрдиреБрдорддрд┐ рдХреНрдпреЛрдВ рдирд╣реАрдВ рджреА рдЬрд╛рдПрдЧреА?

рдЙрдкрдпреЛрдЧ рдХреА рд╕реНрдерд┐рддрд┐, рдЬрд╣рд╛рдБ .yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реЛрдЧреА, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реЗрдмрд╕рд░реНрд╡рд░реНрд╕ (рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛-рд╡реЙрд▓реНрдпреВрдо, рд▓реЛрдЧреЛ рдЬреИрд╕реЗ рдХреБрдЫ рдЫреЛрдЯреЗ рдЕрдВрддрд░ рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдбреЙрдХ-рдХрдореНрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓ рд╣реИред рдкреНрд░рддрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди 3 рд╕реЗрд╡рд╛рдПрдВ рдЪрд▓ рд░рд╣реА рд╣реИрдВ, рдФрд░ рд╡реЗ рдПрдХ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЬрдм рдХрдИ рд╕рд░реНрд╡рд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдЪрд▓рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА рд╕реЗрд╡рд╛ рдХрд┐рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

рдХрдВрдЯреЗрдирд░ рдирд╛рдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд╛рдо рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ $ COMPOSE_PROJECT_NAME рд╣реИред рд╡реИрд╕реЗ рдореИрдВ .env- рдлрд╝рд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ (CI) рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЗрд╕реЗ "рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдЕрдиреБрдХреВрд▓" рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред

рдПрдХ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЙрдХ-рдХрдВрдкреЛрдЬ рдХреЗ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд┐рдЯ рдХрд┐рд▓ рдХрдВрдЯреЗрдирд░ рд╣реЛрдиреЗ рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ-рдкреА рдпрд╛ рдПрдирд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕реЗрдЯ рдирд╣реАрдВ рдерд╛ рдФрд░ рдЖрдкрдиреЗ "рдбреЙрдХрдЯрд░" рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдмрдирд╛рдпрд╛, рдпрд╣ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрдЧ рд╣реИред

рдЧрдВрднреАрд░ рддреИрдирд╛рддреА рдореЗрдВ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рдмрд╕ рдмрд╣реБрдд рдЬрдЧрд╣ рд╣реИред рдмрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ, рдЪрд╛рд╣реЗ рд╡рд╣ -p, .env рдпрд╛ рдХрд╣реАрдВ рдФрд░ рд╣реЛ: рдЖрдк рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдСрдлрд╝рд▓рд╛рдЗрди рдЬрд╛рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдЖрдк рдиреЛрдЯрд┐рд╕ рдирд╣реАрдВ рдХрд░рддреЗ рдХрд┐ рдХреНрдпрд╛ рд╣реБрдЖред рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░: рдЯрдХрд░рд╛рд╡ рд╕реЗрд╡рд╛ рдСрдлрд╝рд▓рд╛рдЗрди рд╣реЛ рдЬрд╛рддреА рд╣реИ, рди рдХрд┐ рдЖрдк рдЬрд┐рд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХрд╛ рджрд┐рди рд╢реБрдн рд╣реЛрдЧрд╛ :(

@dnephin рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдЦрд┐рд░рдХрд╛рд░ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рдХреЗрд╡рд▓ рд╡рд╣реА рд╣реВрдВ, рдЬрд┐рд╕реЗ рдЗрд╕рд╕реЗ рдХреБрдЫ рдЪрд┐рдВрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреАред
рд╣рдорд╛рд░реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ, рд╣рдо рдХреЗрд╡рд▓ .env рдФрд░ app.env рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╣реЛрдиреЗ рдФрд░ yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рдпрд╣ рд▓рд╛рдЧреВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдмреАрд╕реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВред

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

@ schmunk42 рд╣рдо рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣реЗ рд╣реИрдВ, рдХрд┐ .env рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк .env рдореЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рдЗрд╕реЗ docker-compose.yml рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рди рдХрд░реЗрдВред

рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд▓реЛрдЧ рдЗрд╕реЗ рдЕрдкрдиреЗ docker-compose.yml рдореЗрдВ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред рд╡реЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдЧрд░ рд╡реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред рдпрджрд┐ рджреЛрдиреЛрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рддреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рдореНрдореЗрд▓рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рдХреНрдпрд╛ рд╣реИред

рдХреГрдкрдпрд╛, рдирд╛рдо рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВред рдЙрджрд╛рд╣рд░рдг:
рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛:
docker-compose up --build --remove-orphans

  • nginx
  • рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА
    рдкрд░рд┐рдпреЛрдЬрдирд╛ рджреЛ:
    docker-compose up --build --remove-orphans
  • nginx
  • рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА

рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рджреЛ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ, рддреЛ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ 137 (рдХреЛрдб 128 + рд╕реНрддрд░ 9) рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд╕рд╛рде рдорд╛рд░ рджреЗрддреА рд╣реИред

рдЕрдм рдореБрдЭреЗ рджрд░реНрдЬрдиреЛрдВ рдбреЗрдб рдХрдВрдЯреЗрдирд░ рд░рдЦрдиреЗ рд╕реЗ рдЦреБрдж рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП docker system prune рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╣рд░ рджрд┐рди рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

export COMPOSE_PROJECT_NAME=somethingnew

рдХреНрдпрд╛ рдХреЛрд░ рдЯреАрдо рдХрд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рд╢рд╛рдпрдж рд╕рдордЭрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдХреНрдпрд╛ рд╣реИ? рдпрд╣ рдмрд╣реБрдд рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИ, рдХреИрд╕реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рдХреЗ рдЕрд╡рд░реБрджреНрдз рд╣реИрдВред

рдЕрдм рддрдХ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реНрдХ docker-compose.yml рдкреЛрд░реНрдЯреЗрдмрд▓ рд░рдЦрдиреЗ рдХрд╛ рдерд╛ред рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐

  • рдХрдВрдкреЛрдЬрд╝рд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдкреЛрд░реНрдЯреЗрдмрд▓ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ
  • рд╕рднреА рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рднреА рдирд╣реАрдВ рд╣реИ

    • рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рдЬреЛ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдХреЛ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рд╕реАрдорд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: networks , port , ...

рдпрд╣ рд╕рднреА рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдЙрдирдХреА рд░рд╛рдп рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП!

@mikehaertl рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╣реИрдВред рдмрд╕ .env рдлрд╝рд╛рдЗрд▓ рд░рдЦреЛ рдФрд░ рд╡рд╣рд╛рдБ COMPOSE_PROJECT_NAME рдЪрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рдореБрдЭреЗ рдЕрдм рдХрдВрдкреЛрдЬ рдлрд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдирд╛рдо рдХрд╛ рдХреЛрдИ рдлрд╛рдпрджрд╛ рдирдЬрд░ рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИред

@fesor I рдЖрдо рддреМрд░ рдкрд░ рди рд╣реА .env рдлрд╝рд╛рдЗрд▓ рд╕рдВрд╕реНрдХрд░рдг-рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╣реЛрддреА рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рдорд╢реАрди / рдкрд░реНрдпрд╛рд╡рд░рдг-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрддреА рд╣реИрдВ - рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрдмрд▓ рд╣реЛрддреЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ ред

@fesor : рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @thasmo рдЗрд╕ рдкрд░ рд╕рд╣реА рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рддреЛ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@fesor рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрд░реНрдХ рд╣реИред рдЕрд╕рд▓реА рд╕рд╡рд╛рд▓ рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо .env рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рд╣реИ: рдЗрд╕реЗ рдЙрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЧрдпрд╛, рдЬрд╣рд╛рдВ рдпрд╣ рд╣реИ?

рд▓рдЧрднрдЧ рд╕рднреА рд╡рд┐рдХрд▓реНрдк рдЬреЛ рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ docker рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреБрдЫ рд░рд╣рд╕реНрдпрдордп рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рддрд░реНрдХреЛрдВ рдХреЗ рдмреАрдЪ рд░рдВрдЧрднреЗрдж рдХрд╛ рд░реВрдк рд╣реИ? : PI рдЙрди рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдЕрдзрд┐рдХрд╛рд░ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддрд╛ рд╣реИ! рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рджреЗрдВ рдФрд░ рдЙрди рдкрд░ рдХреГрддреНрд░рд┐рдо рдмрд╛рдзрд╛рдПрдВ рди рдбрд╛рд▓реЗрдВред

рдФрд░ рдлрд┐рд░ рд╕реЗ: рдХреЛрдИ рднреА рдЖрдкрд╕реЗ рдкреБрд░рд╛рдиреЗ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд╣реАрдВ рдЫреАрди рд░рд╣рд╛ рд╣реИ - рд╣рдо рдХреЗрд╡рд▓ рдЕрдВрддрддрдГ рдЗрд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╡рд╣ рдХреЗрд╡рд▓ рдЙрдЪрд┐рдд рд╣реИред

@dnephin : рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдЖрдк рдФрд░ рдмрд╛рдХреА рд╕рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ cr7pt0gr4ph7 рдХреЗ рд╢реЛрдзрди рдореЗрдВ рдмрддрд╛рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рд╕реЗ рдЦреБрд╢ рд╣реИрдВред

рдХреНрдпрд╛ рдЖрдк рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдВрдЧреЗ рдЬреЛ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рд╡рд╛рд▓реЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЛ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

@ cr7pt0gr4ph7

@dnephin @fesor * compose.yml рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдПрдХ рдПрдХреАрдХреГрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреАрдорд╛ рдХреА рд╕реБрд╡рд┐рдзрд╛ рджреЗрддрд╛ рд╣реИ

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреНрдпреЛрдВ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдХреЛрдИ рднреА рднрд╛рдЧ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдг рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рддрд░реНрдХ рд╣реИред рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдЕрдХреНрд╕рд░ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрдХреНрд╕рд░ рд╕рд╣реА рд╣реЛрддрд╛ рд╣реИред

рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╣реА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ ( -p , рдпрд╛ COMPOSE_PROJECT_NAME ), рдЬреЛ рдпрд╛ рддреЛ рдЙрдкрдирд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

рдореИрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл рдирд╣реАрдВ рд╣реВрдБ рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдЧрд╛, рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдЗрддрдиреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрдпреЛрдВ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд┐рд╕реЗ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП,

рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ 1 рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ 4 рдХрдореНрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реНрд╕ рд╣реЛрдВред рдпрд╣рд╛рдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдЧрд▓рдд рд╣реИред рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рдореЗрд░реЗ рдкрд╛рд╕ рд╣реИ .env рдЬреЛ рдХреЗрд╡рд▓ 1 рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ 1 рдХрдВрдкреЛрдЬ рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

_ рддрдм рдореИрдВрдиреЗ COMPOSE_PROJECT_NAME рдФрд░ -p: _ рдХреЛ рдирд┐рдпрдордмрджреНрдз рдХрд┐рдпрд╛
COMPOSE_PROJECT_NAME рдФрд░ -p рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдирд╣реАрдВ рдмрдЪрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╕реЗрдЯ рдХрд░рдирд╛ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реИред рдпрд╛ рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рд╕реАрдзреЗ рдбреЙрдХ рдХрдВрдкреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рдЬрдм рд╡реНрдпрдХреНрддрд┐ A рдЗрд╕ рддрдВрддреНрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡реНрдпрдХреНрддрд┐ B рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд┐рдлрд▓рддрд╛ рд╣реИред
(рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕реЗ рдКрдкрд░ рд╡рд┐рд╕реНрддреГрдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ)

рдореБрдЭреЗ рдФрд░ рдореЗрд░реА рдЯреАрдо рдХреЗ рд▓рд┐рдП @dnephin, рдЖрд╡реЗрджрди рддрд░реНрдХ рдЖрдо рддреМрд░ рдкрд░ рдПрдХ htdocs рдореЗрдВ рдлрд╝реЛрд▓реНрдбрд░ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣рд┐рдд рд╣реИред рдпрд╣ рд╣рдореЗрдВ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрдиреНрдп рд╕рдВрдмрдВрдзрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ / рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рджреВрд░рджрд░рд╛рдЬ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рджреЗрд╡ рдХреЗ рд░реВрдк рдореЗрдВред рдЕрдЧрд░ рдореБрдЭреЗ рдЙрдирдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдЧреНрд░рд╣рдг рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ, рддреЛ рдЙрдирдХреЗ рд▓рд┐рдП рдбреЙрдХрдЯрд░ рдХреЛ рдЕрдкрдирд╛рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдЖрд╕рд╛рди рд╣реИред рдореИрдВрдиреЗ рдЕрддреАрдд рдореЗрдВ рдпрд╣ рдХрд╣рд╛ рд╣реИ, .env рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рд░реЗрдкреЛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд╕рднреА рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреНрдпреЛрдВ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдХреЛрдИ рднреА рднрд╛рдЧ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╣реБрдЖ, рдХрд┐ рдореИрдВрдиреЗ рдПрдХ рдореЗрдЬрдмрд╛рди рдкрд░ рдПрдХ 'рдбреЙрдХ-рдХрдВрдкреЛрдЬрд╝ рдбрд╛рдЙрди' рдХрд┐рдпрд╛ рдерд╛ - рдФрд░ рдПрдХ рдЕрд▓рдЧ рдХрдВрдЯреЗрдирд░ рдиреАрдЪреЗ рдЪрд▓рд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕реЗ рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛! рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рдерд╛, рдХрд┐ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдерд╛ред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдг рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рддрд░реНрдХ рд╣реИред рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдЕрдХреНрд╕рд░ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрдХреНрд╕рд░ рд╕рд╣реА рд╣реЛрддрд╛ рд╣реИред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдЪ myapp/app/docker-compose.yml рдЬреИрд╕реА рд╣реИред рддреЛ рдореЗрд░реЗ рд╕рднреА рдРрдк рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдирд╛рдо app рд╢реЗрдпрд░ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реЛрд╕реНрдЯ рдкрд░ 1 рд╕реЗ рдЕрдзрд┐рдХ рдХрдВрдЯреЗрдирд░ рд╣реИрдВред

рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╣реА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ (-p, рдпрд╛ COMPOSE_PROJECT_NAME) рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдпрд╛ рддреЛ рдЙрдкрдирд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рд╣рдореЗрдВ рдмрд╛рд░-рдмрд╛рд░ рдкреВрдЫрдиреЗ рдФрд░ рд╣рдорд╛рд░реЗ рдЬрд╡рд╛рдмреЛрдВ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдХреЛрдИ рдЖрдЦрд┐рд░ рдкреНрд░рддрд┐рд░реЛрдз рдХрд╛ рдФрдЪрд┐рддреНрдп рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдФрд░ рдирд╣реАрдВ: "... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ" рдПрдХ рд╡реИрдз рддрд░реНрдХ рдирд╣реАрдВ рд╣реИ!

@dnephin рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЧрд┐рдЯ docker рдирд╛рдордХ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд╛рд▓ рджреЗрддрд╛ рд╣реВрдВ (рдмрд┐рд▓реНрдб рд╕рдВрджрд░реНрдн рд╕рд┐рд░реНрдл .. рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ , рд╕рднреА рд╕реБрдВрджрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)ред

рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рдХрдИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд░реЗрдкреЛ рдореЗрдВ docker/.env.dist рдФрд░ cp docker/.env.dist docker/.env рдмрд╛рдж git clone ред рдЕрдиреНрдпрдерд╛, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╕рд┐рд░реНрдл docker , рдЬреЛ рдореБрдЭреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ .env рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдЖрджрд┐ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП .env.dist рдирдХрд▓ рдХрд░рдирд╛ рд╡реИрд╕реЗ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ .env рдореМрдЬреВрдж рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ COMPOSE_PROJECT_NAME рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред docker-compose.yml ред

рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдореЗрдВ рдЧрдбрд╝рдмрдбрд╝рд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдпрджрд┐ рдЙрд╕реА COMPOSE_PROJECT_NAME рдХрд╛ рдЙрдкрдпреЛрдЧ docker-compose.yml рдЕрдВрджрд░ рджреЛ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЕрдЧрд░ рдореИрдВ .env.dist рдХреЛ рдХреЙрдкреА рдХрд░рдирд╛ рднреВрд▓ .env рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХ рд╣реА рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реВрдВред рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореИрдВ default_compose_project_name docker-compose.yml рдореЗрдВ default_compose_project_name рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХреВрдВ рдФрд░ рдлрд┐рд░ .env рдореЗрдВ рдорд╛рди рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рджреВрдВ, рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореИрдВ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдХреЙрдкреА рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ ред рдпрд╣ 100% рдИрд╕рд╛ рдкреВрд░реНрд╡ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ред

рдореИрдВрдиреЗ рдЕрддреАрдд рдореЗрдВ рдпрд╣ рдХрд╣рд╛ рд╣реИ, .env рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рд░реЗрдкреЛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд╕рднреА рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдореВрд▓ рдХрд╛рд░рдг рдпрд╣ рд╣реЛ, рдореИрдВрдиреЗ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкрд╣рд▓реЗ docker-compose "рдЕрдкрд╣реГрдд" рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рд╣рдореЗрдВ рдЕрдкрдирд╛ рд╕рд╛рдорд╛рди app.env рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╢рд╛рдпрдж docker-compose.env рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛ред

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ: рд╣рдо рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХреЗрд╡рд▓ .env рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрджрд▓ рд░рд╣реЗ рд╣реИрдВ, yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬрд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ docker-compose.override.yml рд╕рд╛рде рдорд┐рд▓рд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдХ рд╕рдорд╛рдзрд╛рди рдпрд╣ рднреА рд╣реИ рдХрд┐ рдЖрдкрдХреА yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рддрд░рд╣ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рддрд╛рдХрд┐ рд╡реЗ .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд┐рдирд╛ рд╢реБрд░реВ рди рд╣реЛрдВ, рдЙрджрд╛ред рдПрдХ рдЪрд░ image: $IMAGE ред

рдпрд╣ рдореЗрд░реЗ 4 docker рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИ- @ schmunk42 рдХреЗ рдКрдкрд░ 1 рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЗрд╕ рдореЗрдВ рдлрд╛рдЗрд▓ рддреИрдпрд╛рд░ рдХрд░реЗрдВ? рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ?

@RobIsHere рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ -f рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╣реИ рдирд╛?

рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ @dnephin рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ:

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреНрдпреЛрдВ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред

рдпрд╣ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдирд╛рдо рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ docker-compose рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ docker-compose ps рдХреЛ рдЙрди рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ рдЬреЛ рдЖрдкрдиреЗ docker-compose --project-name <project_name> up -d <container_name> рд╕рд╛рде рдмрдирд╛рдП рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рдЖрдк рд╡реИрд╢реНрд╡рд┐рдХ рдХрдорд╛рдВрдб docker ps рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЙрди рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ рдЬреЛ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдХрд╣рд╛рдБ рд╕реЗ рдЖрдП рдереЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдПрдХ рдмрд╛рд░ рдореЗрдВ рдХрдИ рдХреЛрдб рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╕рднреА MySQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдкрд╛рд╕ mysql рдХрдВрдЯреЗрдирд░ рд╣реИ, рддреЛ docker ps рдХрдВрдЯреЗрдирд░ рдХреА рдЕрд╕реНрдкрд╖реНрдЯ рд╕реВрдЪреА рджрд┐рдЦрд╛рдПрдВрдЧреЗред рддреЛ, рдПрдХ рд╣реА рдорд╢реАрди рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдХрдИ рдбреЙрдХрд░реЛрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдХреЛрдИ рднреА рднрд╛рдЧ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдбреЙрдХрд░ рдХрдВрдкреЛрдЬрд╝ рдкреНрд░реЛрдЬреЗрдХреНрдЯ_ рд╕реЗ рдЬреБрдбрд╝реЗ рдЕрдиреНрдп рд╡реЗрд░рд┐рдПрдмрд▓ _every рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЕрд▓рдЧ рдЬрдЧрд╣ рдкрд░ рд░рдЦрдиреЗ рд╕реЗ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдг рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рддрд░реНрдХ рд╣реИред

рдореЗрд░реЗ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдореЗрдВ рдмрддрд╛рдП рдЧрдП рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ _ "рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХрд╛ рдХреЗрд╡рд▓ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдг" _ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдкрдпреЛрдЧ рдФрд░ рд╕рдордЭ рдХреЗ рд▓рд┐рдП рд╣реИред

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

рдиреЙрди-рдбрд┐рдлреЙрд▓реНрдЯ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд╣рд╛рдВ рдПрдХ рдбреЗрд╡рд▓рдкрд░ docker рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ _all_ рд╕рдВрдмрдВрдзрд┐рдд рдбреЙрдХрд░ рдлрд╛рдЗрд▓реЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдбреЙрдХрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдЪрд┐рдд рддрд░реАрдХрд╛ рд╣реИ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЬрд╛рджреВ рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рддреЛ рд╡рд╣реА рд╕рдВрдШрд░реНрд╖ рдЬреЛ рдЖрдк рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдиреЗрдо рдЯрдХрд░рд╛рд╡ рдХреЗ рдЦрд┐рд▓рд╛рдл рдбреЗрд╡рд▓рдкрд░ рдХреА рд░рдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬрдм рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡реИрд╕реЗ рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд░рд╣реЗ рд╣реЛрдВред

рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╣реА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ (-p, рдпрд╛ COMPOSE_PROJECT_NAME) рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдпрд╛ рддреЛ рдЙрдкрдирд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрд░ рд╣реИ рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдЬрдм рдЖрдк рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд╕рд╛рде рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмреАрдЪ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХреЗрд╡рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдЖрд╣реНрд╡рд╛рди рдХреЗ рд╕рд╛рде рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдкрд░рдо рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдердХрд╛рдК рдФрд░ рддреНрд░реБрдЯрд┐-рдкреНрд░рд╡рдг рд╣реИред рдФрд░ .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ _user-specific_ рдЪрд░ рд╕рдореНтАНрдорд┐рд▓рд┐рдд рд╣реИрдВ, рди рдХрд┐ _project-specific_ рд╡рд╛рд▓реЗред рдЗрд╕рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдореМрдЬреВрджрд╛ рддрд░реАрдХреЗ рдЕрдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВред

рдореИрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл рдирд╣реАрдВ рд╣реВрдБ рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдЧрд╛, рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдЗрддрдиреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрдпреЛрдВ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд┐рд╕реЗ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП,

рд╕рднреА рдЪрд░ рдЬреЛ docker-compose рдХреЗ рдХрд╛рдордХрд╛рдЬ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕реА рд╕реНрдерд╛рди рдкрд░ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВред

рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╕рджрд╕реНрдпрддрд╛ рд▓рд┐рдП рдЧрдП рд╕рднреА рд▓реЛрдЧ рдЗрди рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рд╕рд╣рдордд рд╣реИрдВред

docker-config.yml рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдХрд┐рд╕реА рднреА рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рднреА рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред

@ schmunk42 рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рдЬрд╛рдБрдЪ рдХреА рдереА,

рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЬрдм рдбреЙрдХрд░ рдХреЛ рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рддреЛ рдпрд╣ рдПрдХ рдЕрд╕рд▓реА рд╕реНрдЯрдмрд▓рд┐рдВрдЧ рдмреНрд▓реЙрдХ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ @RobIsHere рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдореЗрд░реА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ myapp/htdocs/docker-compose.yml рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реИрдВред рдбреЙрдХрдЯрд░ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЗ рд╢реБрд░реБрдЖрддреА рджрд┐рдиреЛрдВ рдореЗрдВ рдореИрдВрдиреЗ рдЧрд▓рддреА рд╕реЗ рдЕрдиреНрдп рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рдирдХрд╛ рдореИрдВ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред рдпрд╣ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рдЕрдЧрд░ рдбреЙрдХрдЯрд░ рдирд╛рдо рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рдЕрдиреНрдп рджреВрд░рд╕реНрде рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реИрдВ рдЬреЛ рдбреЙрдХрд░ рдХреЛ рдЕрдкрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдПрдХ рдЯреАрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЗрди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╣рдореЗрд╢рд╛ / рдХреЗрд╡рд▓ docker-compose up рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджреЗрдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред рдбреЙрдХрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдо рд╢реБрд░реБрдЖрддреА рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИред рдПрдХ рдмрд╛рд░ рдЬрдм рд╡реЗ рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдХреА рд╢рдХреНрддрд┐ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╡реЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЙрдард╛ рд▓реЗрдВрдЧреЗред

рдЗрд╕рд▓рд┐рдП рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рддрдм рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рддрд░реАрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рддреНрд░реБрдЯрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рд╢реБрд░реБрдЖрддреА рдЕрдкрдирд╛рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред

рдРрд╕реЗ рдорд╛рдорд▓реЗ рдЬрд╣рд╛рдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИрдВ:

  • рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХрдИ рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВ (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрдкрдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП -f рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)
  • рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ -f рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ)ред

@dnephin рдореИрдВ рджрддреНрддрдХ рдЧреНрд░рд╣рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдо рд╕рдВрднрд╡ рдареЛрдХрд░ред

@dnephin рдЖрдкрдХреЛ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдпреЗ рдЪрд┐рдВрддрд╛рдПрдБ рднреА рдереАрдВ:

рдореВрд▓ рд░реВрдк рд╕реЗ рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬ рдореЗрдВ рдирд╛рдо рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рдЖрдпрд╛ред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдЖрдкрдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдмрд╛рд╣рд░ рд░рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрддреА рд╣реИ (рдЙрди рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдЕрд▓рдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд░рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ)ред

рдЗрд╕ рддрд░рд╣ рдХреА рдкреВрд░реНрд╡рд╡рд░реНрддреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдСрд░реНрдбрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ (рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдЫреЛрдЯреА рд╣реЛ рдЧрдИ рд╣реИ)

  1. docker-compose.yml
  2. COMPOSE_PROJECT_NAME рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░
  3. --project-name рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк

рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рдЬрд╛рдБрдЪ рдХреА рдереА, рддреЛ рд╣рдореЗрдВ рд╣рдорд╛рд░реЗ .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдЪреБрдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рдереАред

@fiveanddone AFAIK рдЖрдк рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рднреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЖрдЧреЗ

Phd5 рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдордиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдРрдк) рдХреЛ src/ рдФрд░ .env рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдХреЗрд╡рд▓ "рдирд┐рдпрдВрддреНрд░рдг-рдкрд░реНрдпрд╛рд╡рд░рдг-рдлрд╝рд╛рдЗрд▓" рд╣реИ, рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред
рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ docker-compose.yml рдХреЗ рд╕рдорд╛рди рд╕реНрддрд░ рдкрд░ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ .env рд╣реЛрдиреЗ рд╕реЗ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ a) рдЖрдкрдХреЛ рдЕрдкрдиреЗ "рдХрдВрдЯреНрд░реЛрд▓-рдПрдирд╡рд╛рдпрд░рдирдореЗрдВрдЯ" рдореЗрдВ рд╡реИрд░рд┐рдПрдмрд▓ рдорд┐рд▓рддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд╣рд╛рдВ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ b) рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдЗрди рдЪрд░реЛрдВ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЕрдЧрд░ рдЖрдкрдХреЛ рд╡рд╣рд╛рдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЧ) рдЖрдк рдЕрдкрдиреЗ app.env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдУрд╡рд░рд░рд╛рдЗрдб / рдмрджрд▓ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВред

@dnephin рдкрд╕рдВрджреАрджрд╛ env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ docker-compose.env рдкрд░рд┐рдЪрдп рджреЗрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдФрд░ .env рдЙрдкрдпреЛрдЧ рдПрдХ рдХрдордмреИрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВред рдЖрдкрдиреЗ fig.yml рдПрдХ рдмрд╛рд░ рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рд╣реА рдХрд┐рдпрд╛ред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдордХрд░рдг рдореБрдЭреЗ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджреЗ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреА рдЬрдбрд╝ рдпрд╣ рд╣реИ:

docker-compose up рдХрд╛ рдореВрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди рдПрдХ рдПрдХрд▓ (рд╕рдВрдХреНрд╖рд┐рдкреНрдд) рдХрдорд╛рдВрдб рд╣реЛрдирд╛ рдерд╛ рдЬрд┐рд╕реЗ рдЖрдк рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдпрд╣реА рдЙрдореНрдореАрдж рдХреА рдЬрд╛рддреА рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ ( рдЗрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ ) рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рддрд░реАрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╕рднреА рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реЛред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реАрдпрддрд╛ рдХрд╛ рдХреНрд░рдо (рдЙрдЪреНрдЪрддрдо рд╕реЗ рдирд┐рдореНрдирддрдо рддрдХ) рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

  1. --project-name (рд╣рдореЗрд╢рд╛ рдУрд╡рд░рд░рд╛рдЗрдб)
  2. COMPOSE_PROJECT_NAME рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░
  3. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ, рдХрд┐рд╕реА рднреА рд╕рдВрд╕реНрдХрд░рдг рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдЕрд▓рдЧ
  4. рдкрд░рд┐рдпреЛрдЬрдирд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ, рдЬрд┐рд╕реЗ рдЕрдВрджрд░ рдЪреЗрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
  5. рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЬрдм рдХреБрдЫ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ)

(3) .docker/project-name рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рдУрдкреА рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИ)
(4) docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдпрд╣ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

3 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ @dnephin , рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ env vars рдХреЗ рд▓рд┐рдП рд╣реИ, рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ

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

рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг:

# ~/projects/sketches/sketch-42/docker/docker-compose.yml
version: "2"
default_environment:
  - SUBDOMAIN=sketch-42
  - ROOT_HOST=example.com
  - COMPOSE_PROJECT_NAME=sketch-42
services:
  web:
    build:
      context: ../
      dockerfile: docker/Dockerfile
    environment:
      - VIRTUAL_HOST=${SUBDOMAIN}.${ROOT_HOST},www.${SUBDOMAIN}.${ROOT_HOST}
      - VIRTUAL_PORT=80
      - VIRTUAL_NETWORK=proxy
      - LETSENCRYPT_HOST=${SUBDOMAIN}.${ROOT_HOST},www.${SUBDOMAIN}.${ROOT_HOST}
      - LETSENCRYPT_EMAIL=admin@${ROOT_HOST}
    restart: always
    networks:
      - proxy

networks:
  proxy:
    external:
      name: proxy

рдпрд╣ рдпрдо рдмрд╣реБрдд рд╣рдж рддрдХ рдореЗрд░реЗ рд╕рдорд╛рди рд╣реИ - рдпрд╣ рдПрдХ рд╡рд┐рдЬрд╝ рд╕реНрдХреЗрдЪ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрд╢рд╛ web рдирд╛рдордХ рдПрдХ рд╕реЗрд╡рд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдорд┐рдиреА рдПрдкреАрдЖрдИ рд╕рд░реНрд╡рд░ рдФрд░ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдХрдВрдЯреЗрдирд░ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ https://github.com/jwilder/nginx-proxy рд╕рдм рдХреБрдЫ рдХреЗ рд╕рд╛рдордиреЗ рдмреИрдарддрд╛ рд╣реИ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреЛрд░реНрдЯреНрд╕ 80 рдФрд░ 443 рдХреЛ рд╕реБрдирддрд╛ рд╣реИред

рдлрд┐рд▓рд╣рд╛рд▓, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВ рдХрд┐рд╕реА рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░ рд╣реВрдВ рдпрд╛ рдХрд┐рд╕реА рджреВрд░рд╕реНрде рд╕рд░реНрд╡рд░ рдкрд░, рдореБрдЭреЗ .env рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рднреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ _all_ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╡рд╣рд╛рдВ рд╕реЗрдЯ рд╣реИрдВред рдпрджрд┐, рдорд╛рди рд▓реЗрдВ, рдореИрдВ SUBDOMAIN рднреВрд▓ рдЧрдпрд╛ рд╣реВрдВ, рддреЛ рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдЯреВрдЯрд╛ рд░рд╣рддрд╛ рд╣реИред

рдореЗрд░реЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ default_environment рдЕрдиреБрднрд╛рдЧ рдХреЗ рд╕рд╛рде, рдореИрдВ рдЕрдкрдиреЗ рд╕рднреА рдЙрддреНрдкрд╛рджрди рдЪрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦ рд╕рдХрддрд╛ рдерд╛ рдФрд░ рдореБрдЭреЗ рд╕рд░реНрд╡рд░ рдкрд░ .env.dist рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдирд╣реАрдВ рдмрдирд╛рдиреА рдкрдбрд╝реЗрдЧреАред рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░, рдКрдкрд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдореИрдВ рд╕рд┐рд░реНрдл .env рдореЗрдВ рдПрдХ рдПрдХрд▓ рдЪрд░ рдбрд╛рд▓реВрдБрдЧрд╛, рдЬреЛ ROOT_HOST=example.com.dev (рдпрд╛ рд╢рд╛рдпрдж рдореИрдВ export ROOT_HOST=example.com.dev bash рдкреНрд░реЛрдлрд╛рдЗрд▓ рдореЗрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдБ? )

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, default_environment рдЕрдиреБрднрд╛рдЧ docker-compose.yml рди рдХреЗрд╡рд▓ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕ рдкрд░ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдЪреНрдЫреА рдЪрд╛рд▓ рдХреЛ рднреА рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ 100% BC рдФрд░ рд╕рдордЭрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ!

WDYT?

рдпрд╣ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣ рдХреБрдЫ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдореЗрд░реЗ рдХрд╛рдо рдЖ рд╕рдХрддрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд (рдЧрд░реНрдо) рдЪрд░реНрдЪрд╛ рдХреЗ рдкреНрд░рдХрд╛рд╢ рдореЗрдВ, рдЖрдкрдХреА
рд╕рдорд╛рдзрд╛рди рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЗрд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ: тАЬрдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдирдИ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП
yml, рдХреИрд╕реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рдПрдХ рдирдпрд╛ рдЦрдВрдб рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ? тАЭ :)

Tue рдкрд░, 28 рдлрд░рд╡рд░реА, 2017, 00:02 рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдХрдЪрдХреЗрд╡ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

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

рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг:

~ / рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ / рдирдореВрдиреЗ / рд╕реНрдХреЗрдЪ-42 / рдбреЛрдХрд░ / рдбреЛрдХрд░-compose.yml

рд╕рдВрд╕реНрдХрд░рдг 2"
default_env:
SUBDOMAIN = рд╕реНрдХреЗрдЪ-42
ROOT_HOST = example.com
COMPOSE_PROJECT_NAME = рд╕реНрдХреЗрдЪ-42
рд╕реЗрд╡рд╛рдПрдВ:
рд╡реЗрдм:
рдирд┐рд░реНрдорд╛рдг:
рд╕рдВрджрд░реНрдн: ../
dockerfile: docker / Dockerfile
рд╡рд╛рддрд╛рд╡рд░рдг:
- VIRTUAL_HOST = $ {SUBDOMAIN}ред $ {ROOT_HOST}, wwwред $ {SUBDOMAIN}ред $ {ROOT_HOST
- VIRTUAL_PORT = 80
- VIRTUAL_NETWORK = рдкреНрд░реЙрдХреНрд╕реА
- LETSENCRYPT_HOST = $ {SUBDOMAIN}ред $ {ROOT_HOST}}, wwwред $ {SUBDOMAIN}ред $ {ROOT_HOST}
- LETSENCRYPT_EMAIL = рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди @ $ {ROOT_HOST}
рдкреБрдирд░рд╛рд░рдВрдн: рд╣рдореЗрд╢рд╛
рдиреЗрдЯрд╡рд░реНрдХ:
- рдкреНрд░реЙрдХреНрд╕реА

рдиреЗрдЯрд╡рд░реНрдХ:
рдкреНрд░реЙрдХреНрд╕реА:
рдмрд╛рд╣рд░реА:
рдирд╛рдо: рдкреНрд░реЙрдХреНрд╕реА

рдпрд╣ рдпрд╛рдореНрд▓ рдмрд╣реБрдд рд╣реА рд╕рдорд╛рди рд╣реИ рдЬреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдмрд╣реБрдд рдмрд╛рд░ рд╣реИ - рдпрд╣ рдПрдХ рд╡рд┐рдЬрд╝ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ
рд╕реНрдХреЗрдЪ, рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕реЗрд╡рд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рд╡реЗрдм рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдмреИрдХрдЕрдк рднреА рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдПрдХ рдорд┐рдиреА рдПрдкреАрдЖрдИ рд╕рд░реНрд╡рд░ рдФрд░ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд╢рд╛рдпрдж рдПрдХ рдХрдВрдЯреЗрдирд░ рджреНрд╡рд╛рд░рд╛ред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
рд╡рд╣ https://github.com/jwilder/nginx-proxy рд╕рд╛рдордиреЗ рдмреИрдардХрд░ рд╕реБрдирддрд╛ рд╣реИ
рдЕрд╕рд▓реА рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЗ рд▓рд┐рдП 80 рдФрд░ 443ред

рдлрд┐рд▓рд╣рд╛рд▓, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВ рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░ рд╣реВрдВ рдпрд╛ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдкрд░,
рдореБрдЭреЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред Iv рдФрд░ рдпрд╣ рднреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рднреА
рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╡рд╣рд╛рдБ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЕрдЧрд░, рд╣рдо рдХрд╣рддреЗ рд╣реИрдВ, рдореИрдВ рднреВрд▓ рдЧрдпрд╛ рд╣реВрдБ
SUBDOMAIN, рдХрдВрдЯреЗрдирд░ рдкреНрд░рд╛рд░рдВрдн рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдЯреВрдЯрд╛ рд░рд╣рддрд╛ рд╣реИред

рдореЗрд░реЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ default_env рдЕрдиреБрднрд╛рдЧ рдХреЗ рд╕рд╛рде, рдореИрдВ рдЕрдкрдирд╛ рд╕рд╛рд░рд╛ рдЙрддреНрдкрд╛рджрди рдХрд░ рд╕рдХрддрд╛ рдерд╛
рдЬрдЧрд╣ рдореЗрдВ рдЪрд░ рдФрд░ рдореБрдЭреЗ рд╕рд░реНрд╡рд░ рдкрд░ .env.dist рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдирд╣реАрдВ рдмрдирд╛рдиреА рд╣реЛрдЧреАред
рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░ рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ рдЪрд░ .env рдореЗрдВ рдбрд╛рд▓реВрдВрдЧрд╛, рдЬреЛ рд╣реЛрдЧрд╛
ROOT_HOST = example.com.dev (рдпрд╛ рд╢рд╛рдпрдж рдореИрдВ рдирд┐рд░реНрдпрд╛рдд рднреА рдХрд░ рд╕рдХрддрд╛ рдерд╛
ROOT_HOST = example.com.dev рдЗрди рдмреИрд╢ рдкреНрд░реЛрдлрд╛рдЗрд▓?)

рд╕рдВрдХреНрд╖реЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, docker-compose.yml рдореЗрдВ default_env рд╕реЗрдХреНрд╢рди рд╣реА рдирд╣реАрдВ
рдЕрдм рд╣рдо рдЬрд┐рд╕ рд╕рдорд╕реНрдпрд╛ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕реЗ рд╣рд▓ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдФрд░ рдЕрдЪреНрдЫреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рднреА рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ!

WDYT?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рдзрд╛рдЧреЗ рдХреА рд╕рджрд╕реНрдпрддрд╛ рджреА рдЧрдИ рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/docker/compose/issues/745#issuecomment-282885661 , рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AAQJJZumr10j3i17gPxrSyA-n8CwvsXTks5rg1X_gaJpZM4DLBNs
ред

Docker-compose.yml рдХреЗ рдЕрдВрджрд░ "project_name" рд╣реЛрдиреЗ рд╕реЗ рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧреАред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рдорд╛рдирдХреАрдХреГрдд рдкреЗрдбрд╝ рдХреЗ рд╕рд╛рде рдПрдХ рдореЛрдиреЛрд▓рд┐рде рд░реЗрдкреЛ рд╣реИ, рдЬреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рджрд┐рдЦрддрд╛ рд╣реИ:

projectA/infrastructure/docker-compose.yml
projectB/infrastructure/docker-compose.yml
...

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕рд┐рд░реНрдл "рдкреНрд░реЛрдЬреЗрдХреНрдЯрд╛ / рдкреНрд░реЛрдЬреЗрдХреНрдЯрдмреА" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбреЙрдХ-рдХрдВрдкреЛрдЬ.рдЖрдИрдПрдордПрд▓ рдлрд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ CLI рд╣реИ рдЬреЛ рд░реВрдЯ рд╕реЗ рдкреВрдЫрддреА рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдмреВрдЯ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реАрдзреЗ docker_compose.yml рдХреЗ рдкреИрд░реЗрдВрдЯ рдлреЛрд▓реНрдбрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рд╣рдо рд╕рдВрдШрд░реНрд╖реЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдЕрдкрдиреЗ рдЖрдк рдХреЛ docker-compose рдХрдорд╛рдВрдб рдирд╣реАрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ (рд╣рдорд╛рд░реЗ CLI рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрдВрджрд░ рд▓рд┐рдкрдЯреЗ рд╣реБрдП), рд╣рдо рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрдорд╛рдВрдб рдореЗрдВ "-p" arg рдирд╣реАрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣рдореЗрд╢рд╛ CLI рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрдВрджрд░ рдПрдХ project_name рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╣рдореЗрд╢рд╛ рдПрдХ "-p" рдХрд░рддреЗ рд╣реИрдВ, рдЬрдм рдирд┐рд░рдкреЗрдХреНрд╖_рдкрде рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХрд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдХрд╣рд╛ "рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдкрд░ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, docker-compose.yml рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдлреЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ рд╕реНрдерд┐рдд рд╣реИ, рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рд╣реИ, рд╕рдВрдШрд░реНрд╖реЛрдВ рд╕реЗ рдмрдЪрдирд╛", рдореИрдВ рд╕рд┐рд░реНрдл рдЗрд╕ рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рдпрд╣ред рдпрд╣ рд╣рдореЗрд╢рд╛ рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП docker-compose.yml рдлрд╝рд╛рдЗрд▓ (рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛) рдореЗрдВ "container_name" рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдХреНрдпреЛрдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП "project_name" рдХреЛ рдЙрд╕реА рд╕реНрддрд░ рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ "рд╕рдВрд╕реНрдХрд░рдг" / "рд╕реЗрд╡рд╛рдПрдВ" / "рдиреЗрдЯрд╡рд░реНрдХ" / "рд╡реЙрд▓реНрдпреВрдо"?

рдпрд╣ scale рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдЖрд╡рд╢реНрдпрдХ рд▓рдЧрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдХрдВрдЯреЗрдирд░ рдХреЗ рдирд╛рдо рд╕реНрдкрд╖реНрдЯ рд╣реЛрдВред (рдЙрджрд╛ <project_name>_<container_name>_1 )ред

рдпрд╣ рдбреАрдПрдирдПрд╕ рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдорджрдж рдХрд░реЗрдЧрд╛ред

рдпрд╣рд╛рдБ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдирд┐рд░рд╛рд╢ рд╣реЛрдХрд░ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред 3 рд╕рд╛рд▓ +

рд╣рд╛рдБ, рдпрд╣ рдбреЙрдХрд░ рдХреА рд╕рдмрд╕реЗ рдмреЗрд╡рдХреВрдл рдкреНрд░рдпреЛрдЬреНрдп рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдФрд░ рдпрд╣ рдЕрдирдлрд╝рд┐рд▓реНрдЯрд░реНрдб рд╣реЛ рдЬрд╛рддреА рд╣реИред

рд╣рдордиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдмрд╣рд╕ рдХрд░рдиреЗ рдореЗрдВ рдЗрддрдирд╛ рд╕рдордп рдмрд┐рддрд╛рдпрд╛, рдФрд░ рднрд▓реЗ рд╣реА рд╕рд░реНрд╡рд╕рдореНрдорддрд┐ рдереА, рдлрд┐рд░ рднреА рдХреЛрдИ рдкреНрд░рд╡реЗрд╢ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдпрд╣ рдПрдХ рдмреБрд░рд╛ рдбрд┐рдЬрд╛рдЗрди рд╣реИред

рдЗрд╕рдХреА рдирд┐рд░рд╛рд╢рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдорд░реНрдерди рд╣реИ, рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд╕рд╛рде рдлрд┐рдЯ рдирд╣реАрдВ рд╣реИ - рд╣рдо рдЗрд╕ рд╡рд░реНрд╖ рдХреЗ рдмрд╛рдж рд╡рд░реНрд╖ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рдЫреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВред

рдЕрдЧрд░ рд╣рдо cli рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ docker- рд░рдЪрдирд╛ рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ?
рдирд╛рдордХрд░рдг рдпреЛрдЬрдирд╛ рдХреА рдмрджреМрд▓рдд рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдХрдВрдЯреЗрдирд░ рдереЗред

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

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдмрд╛рд╣реНрдп рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдпрд╛ рдЪрд░ рджреНрд╡рд╛рд░рд╛) рд▓реЗрдХрд┐рди docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг - рд╡рд╣ рдлрд╝рд╛рдЗрд▓ рдЬреЛ рдмрд┐рд▓реНрдХреБрд▓ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреА рд╣реИ - рдмрд╕ рдирд╛рд╕рдордЭ рд╣реИред рдРрд╕реЗ рдмрд╣реБрдд рд╕реЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо, рд╢реЗрд▓ рдкрд░реНрдпрд╛рд╡рд░рдг рдпрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ .env рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрдВрдХреНрддрд┐ рдХреА рдореМрдЬреВрджрдЧреА рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдвреЗрд░ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред .env рдлрд╝рд╛рдЗрд▓ред рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдореЗрд░реЗ CI рдЬреЙрдмреНрд╕ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ "рдлрд┐рдЧрд░ рдЖрдЙрдЯ" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ docker-compose.yml рдореЗрдВ рдмрддрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдореЗрд░реА рдЬреЙрдмреНрд╕ рдЗрд╕реЗ рдирд┐рдХрд╛рд▓ рд╕рдХреЗрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рд╕рдордп рдФрд░ рд╕рдордп рдлрд┐рд░ рд╕реЗ рд╣реЛрдЧрд╛ред рдбреЙрдХрд░ рдПрдХ рдЕрджреНрднреБрдд рддрдХрдиреАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рд╡реЗ рд╕рднреА рд╕рд┐рд░реНрдл 18 рд╡рд░реНрд╖реАрдп рд╣реИрдХрд░ рд╣реИрдВ рдЬреЛ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ? рд▓реЛрдЧ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕рд╛рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рди рдХрд┐ рдЕрдкрдирд╛ рд╕рдордп рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред

рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдЯреАрдо рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдЕрдирджреЗрдЦреА рдХрд░ рд░рд╣реА рд╣реИред рдбреЙрдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЗрд╕реЗ рд╣рд▓реНрдХрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджрд░реНрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╕реНрдкрд╖реНрдЯ рддрд░реНрдХ рдХреБрдЫ рдЕрдЬреАрдм рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЧрд┐рдиреЗ рдЬрд╛рддреЗ рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред рдЕрд╕рд▓реА рджреБрдирд┐рдпрд╛ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд░рд╛рдп рд╣реИ рдХрд┐ рд╕рднреА рдПрдХ рд╣реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдБ рдЖрддреЗ рд╣реИрдВред рдпрд╣ рд╢рд░реНрдордирд╛рдХ рд╣реИред

рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдореЗрд░реЗ CI рдЬреЙрдмреНрд╕ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ "рдлрд┐рдЧрд░ рдЖрдЙрдЯ" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ docker-compose.yml рдореЗрдВ рдмрддрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдореЗрд░реА рдЬреЙрдмреНрд╕ рдЗрд╕реЗ рдирд┐рдХрд╛рд▓ рд╕рдХреЗрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВред

рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд╕реНрдЯреИрдХ рдХреЛ "build1234" рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ / рдпрд╛ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реНрдерд╛рди рдкрд░ рд╕реНрдЯреИрдХ рдХреЗ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдЬреИрд╕реЗ docker exec build1234_myservice script.sh ?


рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╣рд╛ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП ...

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

рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рднреА рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдирд╛рд░рд╛рдЬрд╝ рдерд╛ред
рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ, рд╣рдо docker-compose.yml рдХреЛ рд╕реНрд░реЛрдд-рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рддрд░рд╣ рдорд╛рдирддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ .env рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рднреА рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ docker-compose.yml рдореЗрдВ рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдЬреИрд╕реЗ network рдЬреЛ рдХрд┐ рдЕрддреНрдпрдзрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИрдВред рд╡рд╛рдкрд╕ рдКрдкрд░ рдЖ рд░рд╣рд╛ рд╣реИ; рдореИрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП .env рдЪрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реВрдВрдЧрд╛ред ЁЯдР

рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рднреА рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдирд╛рд░рд╛рдЬрд╝ рдерд╛ред

рдореИрдВрдиреЗ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рд╕реЛрдЪрд╛ред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ -p <project_name> рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рд╕реЗ рд╕реАрдЖрдИ рдореЗрдВ рд╕реНрдЯреИрдХ рдХреЗ рдЕрдиреВрдареЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдФрд░ рд╕рдорд╡рд░реНрддреА рд░реВрдк рд╕реЗ рдХрдИ рдвреЗрд░ рдЪрд▓рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╝рд░реВрд░реАред рдХреЗрд╡рд▓ рдЙрд╕ CI рдЪреЗрди рдХреЛ рдЙрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╡рд╣ рдСрдЯреЛ-рдЬреЗрдирд░реЗрдЯ рдпрд╛ рд░реИрдВрдбрдо (рд▓реЗрдХрд┐рди рдЬреНрдЮрд╛рдд) рд╣реЛ рд╕рдХреЗ, рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВред рдореБрдЭреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рднреА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ .env рдЯреНрд░рд┐рдХ рдЧреИрд░-рд╕реНрдкрд╖реНрдЯ рд▓рдЧрддреА рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐ рдРрд╕реА рдЕрдиреНрдп рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд╣рд╛рдБ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ _default name_ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред рддреЛ рдпрд╣ рдореВрд▓ рдирд╛рдо рдХреЛ рдЗрд╕ рдирд╛рдо рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпреЛрдВ рд▓реЗрддрд╛ рд╣реИ? рдпрд╣, рдореЗрд░реЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдХрдордЬреЛрд░ рдмрд┐рдВрджреБ рд╣реИред рдЗрд╕реЗ рдХрд╣реАрдВ рд╕реЗ рднреА рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдПрдХ рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдЪреБрдирд╛рд╡ рдмрд╕ рдордирдорд╛рдирд╛ рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рдЧрддрд╛ рд╣реИ (рдЬреИрд╕реЗ рд▓рдЧрднрдЧ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдПрдХ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ docker рдХрд╣рд▓рд╛рддреА рд╣реИ)ред рддреЛ рдЕрдЧрд░ рдпрд╣ рдордирдорд╛рдирд╛ рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХрд╣реАрдВ рдФрд░ рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдВ, рдЬреИрд╕реЗ рдХрд┐ yml рдлрд╝рд╛рдЗрд▓, рдмрд╛рд╣рд░реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛-рдкреНрд░рднрд╛рд╡ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдореЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдХреЗ, рдЬреЛ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕рд╛рдордЧреНрд░реА рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рд╡рд░реНрд╖реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрднрд╡)ред

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

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

рдХреНрдпрд╛ рдЖрдк рд▓реЛрдЧ рдпрд╛ рддреЛ рд╕рд┐рд░реНрдл рдЗрд╕ рдмрдЧ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдВрдЧреЗ, рдЬрд┐рд╕рдХреА рдЖрдк рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддреЗ рдпрд╛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рд╕рд░рд▓ рдЪреАрдЬрд╝ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдпрд╣ 2.86 рд╕рд╛рд▓ рдмрд╛рдж рд╣реИред рдмрд░реНрддрди рд╕реЗ рдЙрддрд░ рдЬрд╛рдУред рдЕрдкрдиреЗ рдлреИрд╕рд▓реЗ рдЦреБрдж рдХрд░реЗрдВ рдпрд╛ рдЕрдкрдиреА рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдк рдЗрд╕реЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЬреНрдпрд╛рджрд╛ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рди рдХрд░реЗрдВред

@ рдорддрдорди рдФрд░ рдЙрдирдХреА рдЯрд┐рдкреНрдкрдгреА рджреЗрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд▓реЛрдЧ рдЕрдВрдЧреВрдард╛-рдЕрдк:

рдХреНрдпрд╛ рдЖрдк рд▓реЛрдЧ рдпрд╛ рддреЛ рд╕рд┐рд░реНрдл рдЗрд╕ рдмрдЧ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдВрдЧреЗ, рдЬрд┐рд╕рдХреА рдЖрдк рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддреЗ рдпрд╛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рд╕рд░рд▓ рдЪреАрдЬрд╝ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдпрд╣ 2.86 рд╕рд╛рд▓ рдмрд╛рдж рд╣реИред рдмрд░реНрддрди рд╕реЗ рдЙрддрд░ рдЬрд╛рдУред рдЕрдкрдиреЗ рдлреИрд╕рд▓реЗ рдЦреБрдж рдХрд░реЗрдВ рдпрд╛ рдЕрдкрдиреА рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдк рдЗрд╕реЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЬреНрдпрд╛рджрд╛ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рди рдХрд░реЗрдВред

"рдЖрдк рд▓реЛрдЧ" рдХреМрди рд╣реИрдВ? рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдореЗрдВ, рд╕рдореБрджрд╛рдп рдирд┐рд░реНрдгрдпреЛрдВ рдХрд╛ рдорд╛рд▓рд┐рдХ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░реЛрдВ рдХреА рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдбреЙрдХрдЯрд░ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╣реИред рд░реЛрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

рдореИрдВ рднреА рджреБрдЦреА рд╣реВрдВ рдХрд┐ рдпрд╣ рдЕрднреА рддрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рд▓реЗрдХрд┐рди, рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдореЗрдВ рд╣рдо рдпрд╛ рддреЛ рдпреЛрдЧрджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛ рдзреИрд░реНрдпрдкреВрд░реНрд╡рдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред

CLI arg:

$ cd foo
$ docker-compose up
$ docker-compose -p bar up
... some time later wanting to take down bar forgetting '-p'
$ docker-compose down
Stopping foo_nginx_1 ... done
Stopping foo_mysql_1 ... done
Removing foo_nginx_1 ... done
Removing foo_mysql_1 ... done
$ FU@$_!@*#%$(!_*@
-bash: FU@!@*#%$: command not found

рдЕрд╕рдлрд▓ред

Env рдлрд╝рд╛рдЗрд▓:

$ cd foo
$ source foo.env
$ docker-compose up
$ source bar.env
$ docker-compose up
... some time later wanting to take down foo forgetting to `source .foo.env`
$ docker-compose down
Stopping bar_nginx_1 ... done
Stopping bar_mysql_1 ... done
Removing bar_nginx_1 ... done
Removing bar_mysql_1 ... done
$ FU@$_!@*#%$(!_*@
-bash: FU@!@*#%$: command not found

рдЕрд╕рдлрд▓ред

Yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди:

$ cd foo
$ docker-compose -f foo.yml up
$ docker-compose -f bar.yml up
... some time later
$ docker-compose down
ERROR:
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?

        Supported filenames: docker-compose.yml, docker-compose.yaml

рд╡рд╛рд╣!

$ COMPOSE_PROJECT_NAME=foo docker-compose up -d
$ COMPOSE_PROJECT_NAME=bar docker-compose up -d
... some time later
$ docker-compose down -v
Removing network project_default
WARNING: Network project_default not found.

рдУ /

"рдЖрдк рд▓реЛрдЧ" рдХреМрди рд╣реИрдВ?

@benjaminwood рдпрд╣ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд░рдХреНрд╖рдХ рд╣реИред рдЖрдкрдХрд╛ рддрд░реНрдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЕрдЧрд░ рд╣рдо рдПрдХ рдЬрдЯрд┐рд▓ рдмрджрд▓рд╛рд╡ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдХрд┐рд╕реА рдХреЛ рднреА рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред

рдпрд╣ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ: рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╢рд╛рдпрдж рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдЬреЛ рдХреЛрдбрдмреЗрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ рдФрд░ рдмрд╛рд╣рд░ рд╕реЗ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдард┐рди рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдиреБрдЪрд░ рдЗрд╕реЗ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдФрд░ рдпрд╣реА рд╡рд╣ рд╣реИ рдЬреЛ рдпрд╣рд╛рдВ рдХреЗ рд╕рдорд░реНрдердХреЛрдВ рдХреЛ рдмреЗрд╣рдж рдкрд░реЗрд╢рд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рдЦреБрд▓рд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдХрд╛ рджреНрд░рд╡реНрдпрдорд╛рди: +1: рд╣реИред

рдпрд╣рд╛рдВ рдмрд╛рд░-рдмрд╛рд░ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╕рднреА рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬреНрдЮрд╛рдд рд╣реИрдВ рд▓реЗрдХрд┐рди рд╕рднреА рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдФрд░ рдореБрдЭреЗ рдЕрднреА рднреА рдПрдХ рдЬрд╡рд╛рдм рдирд╣реАрдВ рдорд┐рд▓рд╛ рдХрд┐ рд╕рднреА рдЪреАрдЬреЛрдВ рдореЗрдВ рд╕реЗ рд▓рдЧрднрдЧ docker-compose.yml рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд▓рдЧрднрдЧ рдХреЗрд╡рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреНрдпреЛрдВ рдмрдЪрд╛ рдерд╛ред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣ рд╡рд╣рд╛рдБ рдирд╣реАрдВ рд╣реИ рддреЛ рдмрд╕ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рди рдХрд░реЗрдВ! рд▓реЗрдХрд┐рди рджреВрд╕рд░реЛрдВ рдкрд░ рдЕрдкрдиреА рд░рд╛рдп рдХрд╛ рд╡рд┐рд░реЛрдз рди рдХрд░реЗрдВ рдЕрдЧрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдорд╛рдВрдЧ рдЗрддрдиреА рд╕реНрдкрд╖реНрдЯ рд╣реИред

рдЖрдЗрдП рдЗрд╕реЗ рдЕрдиреНрдп рдмрд┐рдВрджреБ рд╕реЗ рджреЗрдЦреЗрдВред

рдпрджрд┐ рдореИрдВ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдпрд╣ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдореЗрд░реЗ рд╕реНрдЯреИрдХ рдХрд╛ рдХреМрди рд╕рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╣реИ?
рдпрд╣ рдПрдХ рдХрд╛рдлреА рдмреБрдирд┐рдпрд╛рджреА рд╕рд╡рд╛рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдХреЛрдИ рдЖрд╕рд╛рди рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рд╣реИ:

  • -p
  • рдЖрдкрдХреЗ рдкрд░реНрдпрд╛рд╡рд░рдг рд╕реЗ COMPOSE_PROJECT_NAME рдХрд╛ рдореВрд▓реНрдп
  • рдЖрдкрдХреЗ .env рдлрд╝рд╛рдЗрд▓ рд╕реЗ COMPOSE_PROJECT_NAME рдХрд╛ рдореВрд▓реНрдп
  • рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо

рд╢реИрддрд╛рди рдХрд╛ рд╡рдХреАрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ 5 рд╡реЗрдВ рдХреЛ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП?

рдЙрд╕ рдХреЗ рдирд┐рд░реНрдгрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╡рд░реНрддрдорд╛рди рдирд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ "рд╕реВрдЦрд╛-рдЪрд▓" рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рд╕реНрдЯреИрдХ рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рди рддреЛ docker-compose config , рдФрд░ рди рд╣реА docker-compose ps рд╣реИред
рд╢рд╛рдпрдж docker-compose create рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрд▓рдмреНрдз рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХрджрдо рд╕рд╣реА рд╣реИред

docker-compose config --project-name рддрд░рд╣ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореБрдЭреЗ рдЙрдкрд░реЛрдХреНрдд рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЬрд╛рдирдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЕрдЧрд░ рдореИрдВ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдореЗрд░реЗ рд╕реНрдЯреИрдХ рдореЗрдВ рдХрд┐рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реИ?

рдЕрднреА рддрдХ рдлрд┐рд░ рд╕реЗ: рдпрджрд┐ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ! рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рд╕реЗ рдЦреБрд╢ рд╣реИрдВ - рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ !! рдЖрдкрдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдк рдмрд┐рд▓реНрдХреБрд▓ рднреА рднреНрд░рдорд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ!

рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХрд┐ рджреВрд╕рд░реЗ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ? рд╣рдо рдХреЗрд╡рд▓ рдЗрддрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ рд▓рд╛рдкрддрд╛ рдЯреБрдХрдбрд╝рд╛ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред

рд╢реИрддрд╛рди рдХрд╛ рд╡рдХреАрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ 5 рд╡реЗрдВ рдХреЛ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП?

рдХреЗрд╡рд▓ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рднреНрд░рд╛рдордХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ docker-compose.yml рдерд╛ред рдЕрдиреНрдп рд╕рдм рдХреБрдЫ рдЕрдм рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реЛрдЧрд╛ред рд╣рдо рд╡рд░реАрдпрддрд╛ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореБрдЭреЗ рдЙрдкрд░реЛрдХреНрдд рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЬрд╛рдирдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЖрдк рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдбреЙрдХрдЯрд░ рдирд╛рдо рдХреНрдпреЛрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдХреНрдпреЛрдВ рд╣реИ? рдФрд░ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдЗрддрдирд╛ рднреНрд░рдорд┐рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЕрдкрдиреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдПрдХ рд╣реА рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?

рдЕрднреА рддрдХ рдлрд┐рд░ рд╕реЗ: рдпрджрд┐ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ! рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рд╕реЗ рдЦреБрд╢ рд╣реИрдВ - рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ !! рдЖрдкрдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдк рдмрд┐рд▓реНрдХреБрд▓ рднреА рднреНрд░рдорд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ!

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

рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХрд┐ рджреВрд╕рд░реЗ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ? рд╣рдо рдХреЗрд╡рд▓ рдЗрддрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ рд▓рд╛рдкрддрд╛ рдЯреБрдХрдбрд╝рд╛ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рддреЛ рд▓реЛрдЧ рдЧрд▓рдд рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдорд╛рд░рдиреЗ рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдЯреИрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ред

рдХреЗрд╡рд▓ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рднреНрд░рд╛рдордХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ docker-compose.yml рд╕реЗ рдмрдЪрд╛ рд╣реБрдЖ рдерд╛ред рдЕрдиреНрдп рд╕рдм рдХреБрдЫ рдЕрдм рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реЛрдЧрд╛ред рд╣рдо рд╡рд░реАрдпрддрд╛ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдк рдЗрд╕реЗ рдмреАрд╕реА-рддрд░реАрдХреЗ рд╕реЗ рдирд╣реАрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдХрдо рдкреВрд░реНрд╡рддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдЗрд╕реЗ рдмреЗрдХрд╛рд░ рдХрд░ рджреЗрдЧрд╛ред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рдерд╛ "рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ"ред

рдЖрдк рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдбреЙрдХрдЯрд░ рдирд╛рдо рдХреНрдпреЛрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдХреНрдпреЛрдВ рд╣реИ?

рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА .env рдореЗрдВ рдПрдХ рдХрд╕реНрдЯрдо рдореВрд▓реНрдп - рдпрд╣ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдЙрди рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рди рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛рддреА рд╣реИред

cd /some/path/test
docker-compose up -d
cd /a-completely-different-path
docker-compose -p test down -v --remove-orphans

рдпрд╣ рдЖрдкрдХреЗ рдкрд╣рд▓реЗ рд╕реНрдЯреИрдХ рдХреЛ рдорд╛рд░ рджреЗрдЧрд╛, yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рд╣реЛрдЧрд╛ред

рдФрд░ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдЗрддрдирд╛ рднреНрд░рдорд┐рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЕрдкрдиреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдПрдХ рд╣реА рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?

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

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рддреЛ рд▓реЛрдЧ рдЧрд▓рдд рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдорд╛рд░рдиреЗ рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдЯреИрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ред

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

рдФрд░ рдЕрдЧрд░ рд╡реЗ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рднреА рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдореБрдЭреЗ рдпрд╣ рдирд╣реАрдВ рд╕реВрдЭ рд░рд╣рд╛ рдХрд┐ рдЖрдк рдпрд╣рд╛рдБ рдХреМрди рд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдЖрдк рдЪреАрдЬреЛрдВ рдХреЛ рдУрд╡рд░рдХреЙрдореНрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдк рдЙрди рд╕рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЖрдкрдХреЛ рдРрд╕рд╛ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдЯреНрд░реА рдореЗрдВ 4 рдореЗрдВ рд╕реЗ 3 рд╡рд┐рдХрд▓реНрдк рдмреЗрдХрд╛рд░ рд╣реИрдВ, рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдХрдИ рдирд╛рдо рдХреА рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрддреА рд╣реИрдВред рдореБрдЭреЗ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рдХрд╣реЛ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЕрднреА рднреА рдЙрдирдХреЗ рдмреАрдЪ рдПрдХ .env рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реВрдВред

рдореБрдЭреЗ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рдХрд╣реЛ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЕрднреА рднреА рдЙрдирдХреЗ рдмреАрдЪ рдПрдХ .env рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реВрдВред

рдЖрдк рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВ .env рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдлрд╝рд╛рдЗрд▓ env_file ?
рдпрд╛ рдПрдХ docker-compose рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ?
рдпрд╛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛рддреЗ рд╣реИрдВ?

рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо docker-compose.ym рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рддреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред

рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдЗрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рднрд╛рд░реА рдмрджрд▓рд╛рд╡ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред

рдЬрдм рд╣рдо рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдЙрджрд╛рд╣рд░рдг (рдпрд╛рдиреА рдЕрдкрдЧреНрд░реЗрдб рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП) рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдЯреИрдХ рдХреА рдирдХрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ docker-compose.yml рдХреЛ рдЫреВрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рд╕реНрдЯреИрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдЗрд╕реЗ .env рд╕рд╛рде рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдХреНрдпрд╛ рд╣рдо рдЗрд╕реЗ docker-compose.yml рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред

рд╣рд╛рдБ, рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдиреЗ рд╕реЗ рдЪреАрдЬреЗрдВ рдЖрд╕рд╛рди рдФрд░ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рднреА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдПрдХрд▓ .env рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрд┐рд╕реЗ 4 рдХрдореНрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реНрд╕ (рдЙрд╕реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ) рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреЛрдИ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ред рдХреЛрдИ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╣реАрдВред рдореИрдВ рд╕рд┐рд░реНрдл рдХрдВрдкреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред

рдореИрдВ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛

docker-compose -f service1.yml up -d

рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ

docker-compose -f service1.yml up -d
# F#&$, forgot the -p flag.   Curse the compose devs for 3 years of c#*$blocking
docker-compose -f service1.yml down
docker-compose -f service1.yml -p service1 up -d

@ schmunk42 рдЖрдк рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ 'doOSE_PROJECT_NAME = ...' рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ рдкреНрд░рддреНрдпреЗрдХ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд╕рдВрднрд╡рддрдГ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд? рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдЬрд╛рдирдирд╛ рдФрд░ рдпрд╛рдж рд░рдЦрдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрдк рдмрд╕ рдПрдХ рдпреБрдЧрд▓ yml рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЙрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдореЛрдВ рдХреЛ рдпрд╛рдж рдХрд░реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдиреЗ рдорд╣реАрдиреЛрдВ рдкрд╣рд▓реЗ рдЪреБрдирд╛ рдерд╛ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рдХрд┐рдП рдмрд┐рдирд╛ред

рдХреНрдпрд╛ рдЖрдк рдкреНрд░рддрд┐ рд╕реЗрд╡рд╛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрднреА рднреА рд╢реАрд░реНрд╖ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рд╣реИ?

docker-compose -f service1/docker-compose.yml up -d
docker-compose -f service2/docker-compose.yml up -d

рдмрд╕ рдлрд╝рд╛рдЗрд▓ (-path) рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рд▓рд┐рдЦреЗрдВ name

рдореИрдВ рд╣рд╛рд░ рдорд╛рдирддрд╛ рд╣реВрдВред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЧреНрд░рд╛рд╣рдХ-рдЖрдзрд╛рд░ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИред

рд╢реБрд░реБрдЖрдд рдореЗрдВ рдореЗрд░реА рднреА рдпрд╣реА рдЪрд┐рдВрддрд╛ рдереА, рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдЕрдкрдиреА рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЛ рдЙрдкрд▓рдмреНрдз рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред

рдореБрдЭреЗ рдЧрд▓рддреА рд╕реЗ рдкрд┐рдЫрд▓реЗ 2 рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╣рдорд╛рд░реА рдЯреАрдо рдХреЗ рдХрд┐рд╕реА рдПрдХ рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рд╕реНрдЯреИрдХ рдХреЛ рдорд╛рд░рдирд╛ рдпрд╛рдж рдирд╣реАрдВ рд╣реИред рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рдЧрднрдЧ 1.000 рдХрдВрдЯреЗрдирд░реЛрдВ рдФрд░ 1.000 рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдпрд╛ рдореИрдиреБрдЕрд▓ рд░рд┐рдбреЗрдкрд▓реНрдореЗрдВрдЯреНрд╕ рдХреЗ рд╕рд╛рде 200 рд╕реНрдЯреИрдХреНрд╕ рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣рд╛рдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ ... рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдПрдХ "рд╕рдорд╛рдзрд╛рди" рдХреЗ рдмреАрдЪ рдПрдХ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░ рд╣реИ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЪреАрдЬреЗрдВ рдЕрдм рд╣реИрдВ, рдФрд░ "рд╕рд╣реА" рд╕рдорд╛рдзрд╛рди рдиреЗ рдореМрдЬреВрдж рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рджрд┐рдпрд╛ред рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЬрд┐рд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдпрд╛

@ schmunk42 & @mikehaertl

рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ 2 рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╣рдорд╛рд░реА рдЯреАрдо рдХреЗ рдХрд┐рд╕реА рдПрдХ рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдЧрд▓рддреА рд╕реЗ рдвреЗрд░ рдХреЛ рдорд╛рд░ рджрд┐рдпрд╛

рдореБрдЭреЗ рдкреВрдЫрдирд╛ рд╣реИред рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рдЖрдк рджреЛрдиреЛрдВ рдХреЛрдбрдореЗрдХреНрд╕ org рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВ ред рдХреНрдпрд╛ рдЖрдк рд╕рд╣рдХрд░реНрдореА рд╣реИрдВ? рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк рджреЛ рдкрд░реНрджреЗ рдХреЗ рдкреАрдЫреЗ рдШреВрдо рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрдЧрд╛ред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рд╣реИ:

  1. -p рдХрд╛ рдорд╛рди
  2. рдЖрдкрдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реЗ COMPOSE_PROJECT_NAME рдХрд╛ рдорд╛рди
  3. рдЖрдкрдХреА .env рдлрд╝рд╛рдЗрд▓ рд╕реЗ COMPOSE_PROJECT_NAME рдХрд╛ рдорд╛рди
  4. рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо

рд╢реИрддрд╛рди рдХрд╛ рд╡рдХреАрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ 5 рд╡реЗрдВ рдХреЛ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП?

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рд╕рдорд╕реНрдпрд╛ _every рдПрдХрд▓ рдореВрд▓реНрдп_ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИ _environment-specific_ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

1 + 2ред рдЖрджреЗрд╢ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

  1. _Could_ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ .env рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред (рдореИрдВ .env.example рд╕рд╛рдЭрд╛ рдХрд░рдХреЗ рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдореИрдиреБрдЕрд▓ рдХрджрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред)
  2. рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдкрд░реНрдпрд╛рд╡рд░рдг-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред (рдореИрдВ рдЗрд╕реЗ рдПрдХ рдХрдордмреИрдХ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рджреЗрдЦрддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ _needs_ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╣реИред рдпрд╣ рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЧрд┐рд░рд╛рд╡рдЯ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рдирдХрд╛ рдирд╛рдо рд╕рдВрдШрд░реНрд╖ рд╣реЛрдЧрд╛ред)

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдФрд░ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рд╕реЗ рдХрдИ, рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ 3 рдФрд░ 4 рдХреЗ рдмреАрдЪ рд░рд╣рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо _can_ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЬреЛ рднреА рдбреЙрдХ-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЙрд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкрд╣рд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдореИрджрд╛рди рдЫреЛрдбрд╝рдирд╛ред рдпрд╣ рдорд╛рди рддрдм рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╡рд┐рдХрд▓реНрдк 1-3 рдЙрд╕ рдореВрд▓реНрдп рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдЧрд╛, рдФрд░ рд╡рд┐рдХрд▓реНрдк 4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рддрднреА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрдм рдпрд╣ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

@benjaminwood рдореИрдВ рдЖрдкрдХреЛ рдЖрд╢реНрд╡рд╕реНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХреЛрдИ рднреА рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдирд╣реАрдВ рд╣рдВрд╕ рд░рд╣рд╛ рд╣реИред рд╣рд╛рдВ, рд╣рдо рдПрдХ-рджреВрд╕рд░реЗ рдХреЛ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдирд╣реАрдВ рд╣реИ рдЬрдм рд╣рдо рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕рд╣рдордд рд╣реИрдВред рдореИрдВ рдпрд╣рд╛рдВ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░рд╛ рдЙрджреНрджреЗрд╢реНрдп рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдЕрдиреБрднрд╡ рд╣реИред рдпрджрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХреА рдЬрд╛рдПрдЧреА, рддреЛ рдпрд╣ рд╣рдорд╛рд░реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реНрд░реЛрдд рд╣реЛрдЧрд╛ред

@joshuajabbour

  1. рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ .env рдХреЛ рдЕрдирджреЗрдЦрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

  1. рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдкрд░реНрдпрд╛рд╡рд░рдг-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред

рдпрд╣ docker-compose.yml рдореЗрдВ рдПрдХ рдореВрд▓реНрдп рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдЯреИрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпрд╛ рддреЛ .env рдпрд╛ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рдореЗрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред


рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдк рд╕рднреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдВрддрд┐рдо рд╡рд┐рдХрд▓реНрдк рд╣реИ:

docker stack deploy -c docker-compose.yml the-project-name

(*) рдХреЗрд╡рд▓ рдЭреБрдВрдб рдореЛрдб рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ

рдореИрдВ рдпрд╣ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рд╕реНрдЯреИрдХ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдЦрдВрдбрди рдХрд░реЗрдЧрд╛ред

рдзрдиреНрдпрд╡рд╛рдж @ schmunk42 рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╕рднреА рдордЬрдмреВрдд рд░рд╛рдпреЛрдВ рдХреЗ рдмреАрдЪ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рд╣реИред

рдпрд╣ рд╣рдорд╛рд░реЗ рд╕реЗрдЯрдЕрдк рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реНрд░реЛрдд рдкреЗрд╢ рдХрд░реЗрдЧрд╛ред

рд╡рд╣рд╛рдБ рд░рдЧрдбрд╝ рд╣реИред рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░реЗрдВред

рдпрд╣ рдЖрдкрдХреЗ рд╕реЗрдЯрдЕрдк рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рд╣рдордиреЗ рдЕрдкрдиреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рд╣рдорд╛рд░реЗ рдордВрдЪрди рдФрд░ рдЙрддреНрдкрд╛рджрди рд╕реНрдЯреИрдХ-рдХреЗрд╡рд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЕрдирджреЗрдЦрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рддреЛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд╣рд░ рдХреЛрдИ рдЪрд╛рд╣рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдкреЗрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреА рдЕрд╕рд╛рдорд╛рдиреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛?

рдЖрдк рдирд╛рдо рдкрд░ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВрдЧреЗ рддреЛ docker-compose.yml рдЖрдк рднреА рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ .env (рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗрд╡рд▓ рдбреЛрдХрд░-рд▓рд┐рдЦреЗрдВ рдЖрджреЗрд╢ рдХреЗ рд▓рд┐рдП рд╣реИ - рдФрд░ рдХреБрдЫ рдирд╣реАрдВ)ред

рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореЗрд░реЗ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рдЪреАрдЬрд╝ COMPOSE_PROJECT_NAME , рддреЛ рд╣рд╛рдБред рд▓реЗрдХрд┐рди рдпрд╣ рдХрдИ рдЕрдиреНрдп _secure_ рдЪрд░ рдХреЗ рд╕рд╛рде рдЖрдмрд╛рдж рд╣реИ рдЬреЛ рдореБрдЭреЗ рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдореИрдВ environment рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдиреНрд╣реЗрдВ docker-compose рдореЗрдВ рдЖрдпрд╛рдд рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ .env рдлрд╛рдЗрд▓реЗрдВ рдЖрдо рддреМрд░ рдкрд░ ...

рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рд╕реЗрдЯрдЕрдк рдХреЛ рдХреИрд╕реЗ рддреЛрдбрд╝ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдпрд╣ рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд▓рд┐рдП рдЧрдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ, рддреЛ _into_ рдЖрдкрдХрд╛ рд░реЗрдкреЛ рдЙрд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИ, рдЬрд╣рд╛рдВ рдЖрдкрдХрд╛ рд░реЗрдкреЛ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рддреЛ рдпрд╣ рдХрднреА рднреА docker-compose.yml рд╕реЗрдЯрд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдУрд╡рд░рд░рд╛рдЗрдб рд╣реЛ рдЬрд╛рдПрдЧрд╛ (рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣ рднреА рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИ рдЕрдкрдиреЗ рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП? рдЖрдк рдЕрдкрдиреЗ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рджреЛрдиреЛрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ)?

@ schmunk42 рдЖрдк рдЬреЛ рдХрд╣рддреЗ рд╣реИрдВ, "рдореБрдЭреЗ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рджреВрд╕рд░реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЕрдкрдирд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗрдЯрдЕрдк рдЕрдм рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рд╣реИ"ред

рдЧрдВрднреАрд░рддрд╛ рд╕реЗ? рдпрд╣ рдЖрдкрдХрд╛ рддрд░реНрдХ рд╣реИ рдХрд┐ рдЖрдк рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреНрдпреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдмрд╕ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП: рдореИрдВ рдпрд╣рд╛рдБ рднреА рд╣реВрдБред рдмреЗрдЭрд┐рдЭрдХ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░реЗрдВред рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдирд┐рд░рд░реНрдердХ рд╣реЛ рдЧрдИ рд╣реИред

рддреЛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд╣рд░ рдХреЛрдИ рдЪрд╛рд╣рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдкреЗрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреА рдЕрд╕рд╛рдорд╛рдиреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛?

рдореИрдВ рдЕрдкрдиреА рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореЗрд░реА .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рдЪреАрдЬ COMPOSE_PROJECT_NAME рд╣реИ, рддреЛ рд╣рд╛рдБред рд▓реЗрдХрд┐рди рдпрд╣ рдХрдИ рдЕрдиреНрдп рд╕реБрд░рдХреНрд╖рд┐рдд рдЪрд░ рдХреЗ рд╕рд╛рде рдЖрдмрд╛рдж рд╣реИ рдЬреЛ рдореБрдЭреЗ рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ docker- рд░рдЪрдирд╛ рдореЗрдВ рдЖрдпрд╛рдд рдХрд░рддрд╛ рд╣реВрдВред

рдПрдХ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ secrets.env рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рдЖрдпрд╛рдд env_file ред
рдпрд╣ рдЖрдкрдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛?

рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ .env рдлрд╛рдЗрд▓реЗрдВ рдЖрдо рддреМрд░ рдкрд░ ...

рд╕рдЪ ... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ docker-compose hijacks .env рдлрд╝рд╛рдЗрд▓ рд╣реИред

рдпрджрд┐ рдЖрдк docker-compose.yml рдЬреИрд╕реЗ IMAGE_VERSION docker-compose.yml рдХреЗ рд╢реАрд░реНрд╖ рд╕реНрддрд░реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЗрди рдЪрд░реЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ docker-compose.env рдХреИрд╕реЗ рд╣реЛрдЧрд╛?

рдореИрдВрдиреЗ рдХрднреА рднреА COMPOSE_COMMAND_ENV_FILENAME=.env рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреЗрдиреЗ рдХреА рд╣рд┐рдореНрдордд рдирд╣реАрдВ рдХреА - рдЕрдм рддрдХ :)

рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдордЭ рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рд╕реЗрдЯрдЕрдк рдХреЛ рдХреИрд╕реЗ рддреЛрдбрд╝ рджреЗрдЧрд╛ ...

рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рдпрд╣ рддреБрд░рдВрдд рдирд╣реАрдВ рдЯреВрдЯрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдореЗрд░реЗ рдкрд╣рд▓реЗ рдмрд┐рдВрджреБ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ - рдФрд░ рднреА рдЕрдзрд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдирд╛ред

рдХрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ -f docker-compose.A.yml -f docker-compose.B.yml , рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ рдФрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛-рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ (рд╣рдо рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ!), рдЬрдмрдХрд┐ рдмреА рдПрдХ рд╣реИ! project_name: extra рд╕рд╛рде рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕реЗрдЯ, рдЧрд▓рддреА рд╕реЗ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рдереА, рдЬрд┐рд╕рдиреЗ COMPOSE_PROJECT_NAME=testing рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ рдУрд╡рд░рд╡реЛрдЯ рдХрд┐рдпрд╛ред

рд▓реЗрдХрд┐рди рдЕрдм рдХреЛрдИ рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛, рдЬрд┐рд╕реЗ .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд┐рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрд╛ рдирд╛рдо extra ред ЁЯТе

рд╣рдо рдХрдИ рд╕реНрддрд░реЛрдВ рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╡рд┐рд▓рдп рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдХрдИ *.env рдлрд╛рдЗрд▓реЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рд╣реИред

рдЧрдВрднреАрд░рддрд╛ рд╕реЗ? рдпрд╣ рдЖрдкрдХрд╛ рддрд░реНрдХ рд╣реИ рдХрд┐ рдЖрдк рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреНрдпреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдЪреЗрддрд╛рд╡рдиреА: рдереЛрдбрд╝рд╛ рдСрдл-рдЯреЙрдкрд┐рдХ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА docker рд╕рдВрдмрдВрдзрд┐рдд ...

@ рдордЗрдХреЗрд╣рд░реНрдЯрд▓ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ;)

рджреЛрд╕реНрддреЛрдВ,

рд╣рдордиреЗ рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдЬреЛрд╢реАрд▓реА рдЪрд░реНрдЪрд╛ рдкрд░ рдЙрдард╛рдпрд╛ рд╣реИ (рдЖрдк рдореЗрдВ рд╕реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕реЗ рдирд╛рдЧрд░рд┐рдХ рдФрд░ рд╕реМрд╣рд╛рд░реНрджрдкреВрд░реНрдг рд░рдЦрд╛ рд╣реИ!) рдФрд░ рдЬрдмрдХрд┐ рд╣рдо рдЕрднреА рднреА рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХрд┐рд╕реА рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдирд╣реАрдВ рд╣реИ, рд╣рдо рд╕рд╛рде рдЖрдП рдереЗред рд╣рдо рдирд┐рдореНрди рдкреАрдЖрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдЪрд┐рдд рдордзреНрдп-рдореИрджрд╛рди рдорд╛рдирддреЗ рд╣реИрдВ: # 5378ред рдЗрд╕рдиреЗ рдХрд╣рд╛, рд╣рдо рдЗрд╕ рдкрд░ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рд╣реИ рдЬрд┐рд╕реНрдЯ:

  • рдЖрдк рдЕрдкрдиреА рд░рдЪрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ x-project-name рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдХреБрдВрдЬреА рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдЬрдм рдЖрдкрдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ COMPOSE_X_PROJECT_NAME (рдпрд╛ .env рдлрд╝рд╛рдЗрд▓) рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ Compose рдЖрдкрдХреА Compose рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ x-project-name рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ред
  • рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ COMPOSE_PROJECT_NAME рдФрд░ --project-name рд╕реЗ рдХрдо рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИ

рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рд╢реНрди рдпрд╛ рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реАред

@ shin- рддреЛ COMPOSE_X_PROJECT_NAME рдХреЛ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 1 рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛?

рдпрджрд┐ рд╣рд╛рдВ, рддреЛ COMPOSE_ENABLE_X_PROJECT_NAME рднреА рд╕реЛрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╛рдордХрд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпреЗ рд╕рд┐рд░реНрдл рдореЗрд░реЗ 2 рд╕реЗрдВрдЯ рд╣реИрдВ - рдореИрдВ рдЗрд╕реЗ рд╡реИрд╕реЗ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ $

@ schmunk42 рдХреЛрдИ рднреА "рд╕рддреНрдп-рд╡рд╛рдИ" рдореВрд▓реНрдп рдХрд╛рдо рдХрд░реЗрдЧрд╛ , рд▓реЗрдХрд┐рди рд╣рд╛рдВ, рдпрд╣ рд╡рд┐рдЪрд╛рд░ рд╣реИред

@ рдордЯрд╕рдореИрди рдХреВрд▓, рдЙрдкрдпреЛрдЧреА, рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЖрдк рд╣рдореЗрдВ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдПрдХ рдкрд░рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЖрдк рд╣рдореЗрдВ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЕрдВрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдПрдХ рдкрд░рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛ред

рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХрд┐ рдЖрдкрдиреЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдорд╛рдирд╛ рд╣реИред

@ рд╢рд┐рди- рдореИрдВ рдмрддрд╛рддрд╛ рд╣реВрдБ рдХрд┐ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдХреИрд╕реЗ рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рдЕрдВрддрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:

рдкреНрд░реЙрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛

рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрдкреВрд░реНрдг рдмрд┐рдВрджреБ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдЖрдк рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдкрд░рд┐рд╡реЗрд╢ рдЪрд░ рдХреЗ рдкреВрд░реНрд╡рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдИ.рдкреВ. рдирд╣реАрдВ рддреЛрдбрд╝реЗрдЧрд╛ рдФрд░ рдпрд╣ рд╡рд┐рд▓рдп рдХреЗ рджреМрд░рд╛рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ рдЬреИрд╕реЗ рдореИрдВрдиреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рдкреНрд░реЙрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛

рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдЖрдк рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдПрдХ рдмрд╛рд░, рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдЕрдкрдиреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЖрдкрдХреЛ рд╣рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдЖрдк рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдПрдХ рдмрд╛рд░, рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдЕрдкрдиреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЖрдкрдХреЛ рд╣рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рднреА рдЧреЛрд▓реЗ рдореЗрдВ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рджреЗрдЦрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЕрд╡рд╛рдВрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рддрдм рднреА рднреНрд░рдо рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ рдЬрдм рдПрдХ рдбреЗрд╡рд▓рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЦреАрдВрдЪрддрд╛ рд╣реИ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИред

рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд░рдЦрдиреЗ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рдХреНрд╖реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реИ рдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

@ рдпреЛрд╣реЗрдп
рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреА рдорджрдж рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ, рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХрдИ рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП .env рдлрд╝рд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдЗрд╕реЗ рдЖрдкрдХреЗ .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реЗрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЖрдкрдХреА .profile , рдпрд╛ рдХрд╣реАрдВ рдФрд░ рдЬреЛ x-project-name рдХрд░реЗрдЧреА рд╣рдореЗрд╢рд╛ рд▓реА рдЬрд╛рдПрдЧреА рдЦрд╛рддреЗ рдореЗрдВред

рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЖрдк рд╣рдореЗрдВ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдПрдХ рдкрд░рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЖрдк рд╣рдореЗрдВ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЕрдВрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдПрдХ рдкрд░рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛ред

рдЗрд╕рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реА рдореБрдЦреНрдп рдЪрд┐рдВрддрд╛ рд╣рдореЗрд╢рд╛ рдпрд╣ рд░рд╣реА рд╣реИ рдХрд┐ "рдПрдВрдб-рдпреВрдЬрд╝рд░" рдХреА рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рд╣реИрдВ рдФрд░ рд╡реЗ рд╣рд░ рдХреАрдордд рдкрд░ рдирд╛рдо рдХреЗ рдЯрдХрд░рд╛рд╡ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рд╡рд┐рддрд░рдХ рдХрд╛ред рдпрджрд┐ рдЖрдк рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ "рдЯрд░реНрдирдХреА" рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреА рд╢рд┐рдкрд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЗрд╕реА рддрд░рд╣ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд .env рдлрд╝рд╛рдЗрд▓ рдореЗрдВ COMPOSE_X_PROJECT_NAME рд╕реЗрдЯ рдХрд░рдирд╛ рдмрд╣реБрдд рд╣реА рдорд╛рдореВрд▓реА рд╣реИ - рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдВ рдХрд┐ рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреМрди рд╕рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЕрд╡рд╛рдВрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЖрдк рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗ рд╕рдХрддреЗ рд╣реИрдВ? рдореИрдВ рдЕрдкрдиреЗ рд╢реЗрд▓ рдореЗрдВ COMPOSE_X_PROJECT_NAME рд╕реЗрдЯ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рдЕрд╡рд╛рдВрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ред

рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд░рдЦрдиреЗ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рдХреНрд╖реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реИ рдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдк рдЙрд╕рдХреЗ рд▓рд┐рдП .env рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ? рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ .env рдХрд╛ рднрдВрдбрд╛рд░рдг рдХрд░рдиреЗ рд╕реЗ рдХрд┐рд╕реА рдХреЛ рдордирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ (рд╣рд╛рдБ, рдпрд╣ рдЖрдо рдирд╣реАрдВ рд╣реИ)ред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╢реБрд░реВ рдореЗрдВ .env рдереЗред рдЖрдкрдиреЗ рдкреВрд░реА рдмрд╛рддрдЪреАрдд рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИред

@ рдорддреНрд╕рдорд╛рди рдЖрдкрдХреЛ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдЕрдкрдирд╛ рд░рд╡реИрдпрд╛

рдХреБрдЫ рднреНрд░рдо рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рдереЗ

рдкрд╣рд▓реЗ рдЖрдк рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рдереЗред рдирдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдПрдХ рдирд╛рдо рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдЯреЙрдЧрд▓ рд╣реИ рдЬрд┐рд╕рдиреЗ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рднреА рдЧреЛрд▓реЗ рдореЗрдВ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рджреЗрдЦрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЕрд╡рд╛рдВрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдк "рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕" рдХреЛ рдЗрди-рдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ "рдРрд╕рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЗрд╕реЗ рд▓рд┐рдЦреЗрдВ рдФрд░ рдЗрд╕реЗ рддреЛрдбрд╝ рд╕рдХреЗ" рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдпрдерд╛рд░реНрдерд╡рд╛рджреА рдирд╣реАрдВ рд╣реИред рд╣рд░ рд╢реЗрд▓ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВред рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ "COMPOSE_X_" рдХреЗ рд░реВрдк рдореЗрдВ рдареАрдХ рд╕реЗ рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдпрджрд┐ рдЖрдк "рдЕрдиреНрдп рд░рдЪрдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ" рдХрд╛ рдорддрд▓рдм рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рджреЗ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЪрд░ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрджрд┐ рд╕реБрд╡рд┐рдзрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛрддреА рд╣реИ, рддреЛ рд╡рд░реНрддрдорд╛рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХреЛрдИ рднреА рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред

рдпрджрд┐ рдпрд╣ рдЙрдирдореЗрдВ рд╕реЗ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдВред

рдпрд╣ рддрдм рднреА рднреНрд░рдо рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ рдЬрдм рдПрдХ рдбреЗрд╡рд▓рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЦреАрдВрдЪрддрд╛ рд╣реИ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИред

рдпрджрд┐ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рдХрднреА рднреА рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИред

рдореИрдВ рдЗрд╕реЗ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреНрдп рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВред рдпрджрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ, рддреЛ рдХреЛрдИ рднреА рджреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рд╣реА рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рд░реЛрдз рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рджреЛрдиреЛрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред рдирд╛рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдЕрд╡рдЧрдд рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреНрдп рдирд╛рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИрдВред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдпрд╛ рддреЛ рдЙрди рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдорджрдж рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдЬреЛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред

рдПрдХ рд╕рдорд╛рдзрд╛рди рдЬрд┐рд╕рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдгреАрдп рдЪрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдпрд╣ рдЬрд╛рдирдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░рдирд╛ рдХрдард┐рди рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рд░ рдХреЛрдИ рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рдЕрдВрджрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рджреЛрдмрд╛рд░рд╛, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ .env рдбрд╛рд▓рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

рдбреЛрдХрд░-рд░рдЪрдирд╛ рдХреА рд╕реБрдВрджрд░рддрд╛ up ред рдЙрд╕ рдХреЙрд▓ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢ рдирд╣реАрдВред

@fiveanddone

рджреЛрдмрд╛рд░рд╛, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ .env рдбрд╛рд▓рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рдЖрдк рдЙрд╕ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдореИрдВ рдЖрдкрдХреЛ рдХрдо рддрдХрдиреАрдХреА рдЬреНрдЮрд╛рди рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реБрдирддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗ рдХреЛрдб рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде .env рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХрд╛ рдореБрджреНрджрд╛ рдХреНрдпреЛрдВ рд╣реИ?

@ рдкрд┐рдВрдбрд▓реА- рд╣рд╛рдБ, рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВред

рдореИрдВрдиреЗ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рд░ рд╕рдордп рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЬреНрдпрд╛рджрд╛рддрд░ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд╣рд╛рдВ рдПрдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рддрдХрдиреАрдХреА рдЬреНрдЮрд╛рди рдХрд╛рдлреА рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

.env рдШрд░реЛрдВ рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛ рдЕрдиреНрдп рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдореЗрд░реЗ .env рдЕрдВрджрд░ рдХреБрдЫ рдЪрд░ SMTP рдЬреИрд╕реА рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд╣реИрдВред рдореЗрд░реА рдЯреАрдо рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЙрди рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд░ .env рдирд╣реАрдВ рд╣реИ, рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдЪреВрдХ рд╣реИред

рдХрдо рддрдХрдиреАрдХреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╢рд╛рдпрдж рдмрд╕ рдХреБрдЫ рд╕реАрдПрд╕рдПрд╕ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд┐рдирд╛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╡реЗ рд╣рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рд╕рдорд╛рди рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред :)

рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдк рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рджреЗрд╢ рднрд░ рдореЗрдВ рд╣реИрдВ - рдмреЗрд╣рддрд░ рд╕рд░рд▓ред

рдбреЙрдХрд░ рдиреЗ рдореЗрд░реЗ рдЬреАрд╡рди рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реБрдкрд░ рдЖрднрд╛рд░реА рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреА рдирд┐рд░рд╛рд╢рд╛рдУрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред

@fiveanddone рдЕрдВрддрд░реНрджреГрд╖реНрдЯрд┐ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдЗрд╕рд▓рд┐рдП рдЕрдЧрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп .env рдлрд╝рд╛рдЗрд▓ рдХреЛ docker-compose.env (рдпрд╛ рд╕рдорд╛рди) рдХрд╣рд╛ рдЬрд╛рддрд╛, рддреЛ рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдЖрдкрдХреА рдЪрд┐рдВрддрд╛ рдХрдо рд╣реЛрддреА?

@ рдирд▓реА

рд╣рд╛рдВ, рдпрд╣ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ Env рдлрд╛рдЗрд▓ рдбреЛрдХрд░ рдХрдореНрдкреЛрдЬ рджреНрд╡рд╛рд░рд╛ рдЕрдкрдиреЗ рдЖрдк рд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИ?

рдпрджрд┐ рдирд╣реАрдВ, рддреЛ docker-compose.env рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

@nhooey env рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рднрд░реА рд╣реБрдИ рд╣реИ рдпрджрд┐ рдЗрд╕реЗ .env рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдЖрдк рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП env рдлрд╝рд╛рдЗрд▓ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдбреЙрдХреНрд╕ рджреЗрдЦреЗрдВред

рдЕрдЧрд░ рдпрд╣ рдирд╛рдо рд╣реИред env рдлрд╝рд╛рдЗрд▓ рдЕрдкрдиреЗ рдЖрдк рд▓реЛрдб рд╣реЛ рдЬрд╛рддреА рд╣реИред рдФрд░ рдЖрдк рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП env рдлрд╝рд╛рдЗрд▓ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдбреЙрдХреНрд╕ рджреЗрдЦреЗрдВред

рдпрд╣рд╛рдБ рдирд╛рдЗрдЯрдкрд┐рдХрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред рдФрд░ IMHO рдкреВрд░реЗ рд╡рд┐рд╖рдп рдХреА рдЧрд▓рддрдлрд╣рдореА рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рд╕реНрд░реЛрдд рд╣реИред

рдХреЛрдИ рднреА .env рдЪрд░ рдХреЗ рдХрд┐рд╕реА рднреА рдХрдВрдЯреЗрдирд░ / рд╕реЗрд╡рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдЧреЗ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ , рддреЛ рдпрд╛ рддреЛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ

env_file: 
  - .env

рдпрд╛

environment:
  - VAR_FROM_DOTENV
  - FOO=${ANOTHER_VAR_FROM_DOTENV}

.env рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рднрд░реА рд╣реБрдИ рд╣реИ, рд╣рд╛рдБ, рд▓реЗрдХрд┐рди рдЖрдЧреЗ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдмрд┐рдирд╛ рдпрд╣ рдХреЗрд╡рд▓ рдЗрди рдХрдВрдкреЛрдЬрд╝ CLI рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред

рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдирд╛рдо рдмрджрд▓рдиреЗ рдХрд╛ docker-compose.env рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдФрд░ рдЙрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░ рд╣реИ , рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ BC- рддрд░реАрдХреЗ рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ ENV-var рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

(рдЖрдк рдореЗрдВ рд╕реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕реЗ рджреАрд╡рд╛рдиреА рдФрд░ рд╕реМрд╣рд╛рд░реНрджрдкреВрд░реНрдг рд░рдЦрд╛!)

рдореИрдВ рдЖрдкрдХреЛ рд╕реБрдирддрд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рджреЛрд╖реА рд╣реВрдВ рдХрд┐ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рдХрдВрдкрдЯреАрд╢рди рдХреЛ рдмрд░рдХрд░рд╛рд░ рдирд╣реАрдВ рд░рдЦреВрдВрдЧрд╛ред рдЙрд╕рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдХрднреА-рдХрднреА рдореБрдЭреЗ рд╢реБрд░реВ рдХрд░ рджреЗрддреА рд╣реИрдВ ... рдЙрд╕ рдкрд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ, рддреЛ рдХреЛрдИ рднреА рджреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рд╣реА рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рд░реЛрдз рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рджреЛрдиреЛрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред

рдЗрд╕рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реА рдореБрдЦреНрдп рдЪрд┐рдВрддрд╛ рд╣рдореЗрд╢рд╛ рдпрд╣ рд░рд╣реА рд╣реИ рдХрд┐ "рдПрдВрдб-рдпреВрдЬрд╝рд░" рдХреА рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рд╣реИрдВ рдФрд░ рд╡реЗ рд╣рд░ рдХреАрдордд рдкрд░ рдирд╛рдо рдХреЗ рдЯрдХрд░рд╛рд╡ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рд╡рд┐рддрд░рдХ рдХрд╛ред

@ рдкрд┐рдВрдбрд▓реА- рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рд╕рд╣рдордд рд╣реЛрдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ, рдХрд┐ docker-compose.yml рд╣рдореЗрд╢рд╛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рднрдВрдбрд╛рд░ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИред рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рд╣рдо рдореЗрдВ рд╕реЗ рдХреБрдЫ docker-compose.yml рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реНрдерд╛рдиреАрдп рдЕрдиреБрдХреВрд▓рди (рдЬреИрд╕реЗ рд╡рд┐рдХрд╛рд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рдкреНрд░рдпрд╛рд╕, рдЖрджрд┐) рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдФрд░ "рдирд╛рдо рд╕рдВрдШрд░реНрд╖ рд╕реЗ рдмрдЪреЗрдВ" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдирд╛рдо рд╕рдВрдШрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ (IMO) рдлрд╛рдЗрд▓рд╕рд┐рд╕реНрдЯрдо рд╕реНрддрд░ рдкрд░ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╛рдо рд╕рдВрдШрд░реНрд╖ рд╣реИ: .env рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдирд╛рдо рд╣реИ рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред рдЬрдм рддрдХ рдХреЛрдИ рдбреЗрд╡рд▓рдкрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рддрдм рддрдХ рдЙрд╕реЗ рдбреЙрдХ рд╕реЗрдЯрд┐рдВрдЧ рд╕реЗ рдкреНрд░рджреВрд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд░реНрдгрдп рдбреЗрд╡рд▓рдкрд░ рдкрд░ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣рд╛рдБ рдПрдХ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЗ рд▓рд┐рдП рджреЛ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ .env V4 рдореЗрдВ docker-compose.yml рдХреИрд╕реЗ? рдПрдХ project_name docker-compose.yml , рджреВрд╕рд░рд╛ рдПрдХ рдлрд╝рд╛рдЗрд▓ .dockerproject рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИ рдФрд░ рдХрднреА рднреА рднрдВрдбрд╛рд░ рдХреЛ рдкреНрд░рд╕реНрддреБрдд

рдпрд╣рд╛рдБ рдкреВрд░реНрд╡рддрд╛ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ (рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ):

  • -p CLI рддрд░реНрдХ
  • .dockerproject рдлрд╝рд╛рдЗрд▓
  • project_name docker-compose.yml (рдпрджрд┐ docker-compose.yml рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдмрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)
  • COMPOSE_PROJECT_NAME рдкрд░реНрдпрд╛рд╡рд░рдг рд╕реЗ
  • COMPOSE_PROJECT_NAME .env (рдкрджрд╛рд╡рдирдд)
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдирд╛рдо

рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдВрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдореЗрд╢рд╛ .dockerproject рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдХрд┐рд╕реА рдиреЗ рдЗрд╕реЗ рд╡рд┐рддрд░рд┐рдд docker-compose.yml рдореЗрдВ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рд╣реЛред

рдЕрджреНрдпрддрди: рдореИрдВ .dockerenv рдпрд╛ docker.env рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп .dockerproject рд╕рд╛рде рднреА рд░рд╣ рд╕рдХрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдХрд┐ рдХреБрдЫ рдХреЛ docker-compose.yml рдореЗрдВ рд╣рд╛рд░реНрдбрдХреЛрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдореЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдирдорд╕реНрддреЗ,

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП @dnephin рдФрд░ @

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ PR 5378 рдХреЛ рдорд╛рдиреНрдп рдХрд┐рдпрд╛ рд╣реИ: A default project name defined by the project, that can be checked in (https://github.com/docker/compose/issues/745#issuecomment-282858900)ред рдЗрд╕рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реБрдП рдПрдХ git рд░реЗрдкреЛ рдмрдирд╛рдпрд╛: https://github.com/estarter/compose_745

рдореИрдВрдиреЗ PR # 5378 рдХреЛ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рдХреЛ рдХрд╡рд░ рдХрд░рддреЗ рд╣реБрдП рдкрд╛рдпрд╛ред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП COMPOSE_X_PROJECT_NAME env рд╡реИрд░рд┐рдПрдмрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рди:

  1. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ env рд╡реИрд░рд┐рдПрдмрд▓ рдЬрд╛рд░реА рд░рдЦреЗрдВред рдореИрдВрдиреЗ .env рдлрд╝рд╛рдЗрд▓ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рддрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрдм рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реНрдерд╛рди рд╕реЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ( рдХрдорд╛рдВрдбреНрд╕ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд┐рдЦреЗрдВ )
  2. COMPOSE_X_PROJECT_NAME рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ (.profile рдпрд╛ рд╕рдордХрдХреНрд╖)ред рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдпрд╣ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧ-рдХреЗрд╕ defined by the project, that can be checked in рд▓рд┐рдП рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ
  3. рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ?

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдорд╛рдорд▓реЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред

рдкреНрд░рд┐рдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ, рдХреГрдкрдпрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ PR-5369 рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ-рдХреЗрд╕ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ project_name рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдВрдкрддреНрддрд┐ рдХрдо рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд▓реЗрддреА рд╣реИ рд▓реЗрдХрд┐рди рдкрд░реНрдпрд╛рд╡рд░рдг рдпрд╛ рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред

  1. рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ?

рдпрд╣ рд╡рд┐рдХрд▓реНрдк docker-compose --project-directory <PATH> (рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрд╛рд░реНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ)ред .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдорд┐рд╢реНрд░рдг рдореЗрдВ рдПрдХ рдФрд░ рдмрд╛рд░реАрдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП:
рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рджреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИрдВ, рдПрдХ рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП (рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ / рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП / рддреИрдирд╛рддреА) рдФрд░ рдПрдХ рдХреЗ рд▓рд┐рдП devops (Dockerfile рдХреА, docker-compose.yml, рдЖрджрд┐)
рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рд╕реЗрдЯрдЕрдк рдореЗрдВ, рдореБрдЦреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реЗрдкреЛ рд░реВрдЯ рдкрд░ рд╣реИред / рдФрд░ рдбреЗрд╡реЛрдкреНрд╕ рд░реЗрдкреЛ рдХреА рдЬрд╛рдБрдЪ рдПрдХ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдХреА рдЬрд╛рддреА рд╣реИред

рдЗрд╕ рд╕реЗрдЯрдЕрдк рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдБ docker-compose рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИ (рдХрд░рдВрдЯ рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА)ред
(рдбреЙрдХреНрдЯрд░ рд░реЗрдлрд░реА)

рдЬреЛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ: docker-compose -f devops/docker-compose.yml
рдмреЗрд╢рдХ, рд╣рдо -p рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдпрд╣рд╛рдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдирд╡реАрдп рддреНрд░реБрдЯрд┐ рд╕реЗ рдЧреНрд░рд╕реНрдд рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдпрджрд┐ .env (рдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд docker-compose.env) рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЙрд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдБ docker-compose.yml рд░рд╣рддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

Docker-compose.yml рдХреЗ рдЕрдВрджрд░ env_file рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЙрди env var рдХреЛ рдХреЗрд╡рд▓ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╣реА рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

рдЕрдВрдд рдореЗрдВ, рдореЗрд░рд╛ рд▓рдХреНрд╖реНрдп рдореЗрд░реА рдбреЗрдкреНрд╕-рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рд░рдЦрдирд╛ рд╣реИ рдЬреЛ рдореЗрд░реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдЖрдзрд╛рд░ рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЙрд╕ рд░реЗрдкреЛ рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдкрд╣реБрдБрдЪрд╛ / рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рд╡рд┐рдХрд▓реНрдк docker-compose --project-directory рд╣реИ(рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрд╛рд░реНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ)ред .Env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

@ schmunk42 рдПрдХ рдЕрдЪреНрдЫрд╛ рд╢реЙрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди --project-directory .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдирд┐рдореНрди рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ( рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ ):

docker-compose -f PR_5378/docker-compose.yml -f PR_5378/docker-compose2.yml --project-directory PR_5378 down

рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП, рдореИрдВ рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛ рд░рд╣рд╛ рд╣реВрдБ рдЬреЛ рд░рдЪрдирд╛рддреНрдордХ рддрд░реАрдХреЗ рд╕реЗ рдмрд╛рддрдЪреАрдд рдореЗрдВ рдпреЛрдЧрджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред рдореБрдЭреЗ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИред

рдПрдХ рдмрд╕рдиреЗ рдпреЛрдЧреНрдп .env рдирд╛рдо рд╣реЛрдиреЗ рдкрд░
рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдкрджрдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдЬреЛ .env рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдкрд░рд┐рдкрддреНрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред рд╣рдореЗрдВ рдПрдХ рдЕрдкрд╡рд╛рдж рдкреЗрд╢ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рд╕рдордЭрджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐-рд╕рд╣рдЬ рд╣реИред

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

Compose рдлрд╝рд╛рдЗрд▓ рдореЗрдВ project_name рдЬреЛрдбрд╝рдиреЗ рдкрд░
рд╣рдордиреЗ рдХрдИ рдмрд╛рд░ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕ рдкрд░ рдЕрдкрдирд╛ рд░реБрдЦ рджреЛрд╣рд░рд╛рдпрд╛ рд╣реИ - рдЙрди рдмрджрд▓рд╛рд╡реЛрдВ рдХрд╛ рд╡рд┐рд░реЛрдз рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдбреИрдирд┐рдпрд▓ рдХреА рдирд╡реАрдирддрдо рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрд╛ред рд╣рдордиреЗ рдЗрд╕рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдЗрд╕реЗ (рдЗрд╕ рд░реВрдк рдореЗрдВ) рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдФрдЪрд┐рддреНрдп рд╕рд┐рджреНрдз рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмрд╣реБрдд рдЕрдзрд┐рдХ рднреБрдЧрддрдирд╛ рд╣реЛрдЧрд╛ред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдк рд╕реЗ рдХрд╣реЗ рддреЛ, # 5378 рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рд░рд┐рдпрд╛рдпрдд рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдСрдкреНрдЯ-рдЗрди рдФрд░ рдмреИрдХрд╡рд░реНрдб-рдХрдореНрдкреЗрдЯрд┐рдмрд▓ рд╣реИ (EDIT: рдмреЗрд╢рдХ, рдореИрдВ рдЙрди рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реВрдБ рдЬреЛ рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рднреАрддрд░ рдЙрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рддреЗ рд╣реИрдВ)

--project-directory
рдереЛрдбрд╝рд╛ рд╕рд╛ рд╕реНрдкрд░реНрд╢, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдЕрднреА рдереЛрдбрд╝рд╛ рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИред рдкреВрд░реНрд╡рд╡реНрдпрд╛рдкреА рдореЗрдВ, рдореИрдВ рдЗрд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдЬреЛрдбрд╝рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рд▓ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдмрд┐рддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдЬреАрдм рдХрд┐рдирд╛рд░реЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛рддреЗ рд╣реИрдВред


рд╕рднреА рдиреЗ рдХрд╣рд╛ рдХрд┐, рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП docker-compose.env + # 5378 рд╕рдВрддреЛрд╖рдЬрдирдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛? рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдЖрдкрдХрд╛ рдкрд╕рдВрджреАрджрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЙрдЪрд┐рдд рд░рд┐рдпрд╛рдпрддреЗрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЖрдк рд╕рд╛рдордирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рднреА рдПрдХ рддрд░рдл рдордЬрд╛рдХ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ...

рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдбреИрдирд┐рдпрд▓ рдХреА рдирд╡реАрдирддрдо рдЯрд┐рдкреНрдкрдгреА "рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛" рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдпрд╣ рдЕрдВрдЧреВрдареЗ рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдо рд╣реИ рдХрд┐ рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдХреА рдХреБрдВрдЬреА рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдХрднреА рднреА рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдЯреВрдЯрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдореЗрд╢рд╛ рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рдЪреАрдЬреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкрдЪрд╛рддрд╛ рд╣реВрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╣ рд╢рд┐рд╡рд┐рд░ рдЬреЛ project-name (рдпрд╛ рдЬреЛ рднреА) рдлрд╝реАрд▓реНрдб рдЪрд╛рд╣рддрд╛ рд╣реИ рд╡рд╣ рдЙрдЪрд┐рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ "рдирд╛рдо" рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рдХрдИ рдкрд╣рд▓реБрдУрдВ рдХреЗ рд▓рд┐рдП рдореМрд▓рд┐рдХ рд╣реИред рдЗрд╕ рд╢рд┐рд╡рд┐рд░ рдореЗрдВ рд▓реЛрдЧ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рдЪрд░ рдпрд╛ рдЭрдВрдбреЗ рдЬреИрд╕реЗ рдЖрджреЗрд╢ рдЬреИрд╕реЗ рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдХреЗ рдореБрджреНрджреЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрддреНрдерд░ рдореЗрдВ рдХрд╣реАрдВ рднреА рдпрд╣ рдирд╛рдо рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд░рдЪрдирд╛рддреНрдордХ рд░рд╣рд╛ рд╣реИред

@estarter рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмрдЧ

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рдпрд╣ .env рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ PR_5378 рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реВрдБрдЧрд╛:

docker-compose --project-directory PR_5378 -f docker-compose.yml -f docker-compose2.yml down

Compose рдлрд╝рд╛рдЗрд▓ рдореЗрдВ project_name рдЬреЛрдбрд╝рдиреЗ рдкрд░

@ рдкрд┐рдВрдбрд▓реА- рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рдирд┐рд░реНрдгрдп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдкреГрд╖реНрдарднреВрдорд┐ рдХреЛ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рднреА рдпрд╣ рдкреВрдЫрд╛ рд╣реИ рдФрд░ рдХрднреА рдХреЛрдИ рдЬрд╡рд╛рдм рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдЬреЛ рдХрд┐ рдПрдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЪрд░реНрдЪрд╛ рдореБрдЭреЗ рдЗрддрдирд╛ рдкрд░реЗрд╢рд╛рди рдХрд░рддреА рд╣реИ)ред

рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ container_name рдФрд░ рдпрд╣рд╛рдБ рддрдХ рдХрд┐ network docker-compose.yml рдХреНрдпреЛрдВ рд╣реИрдВ? рдкрд╣рд▓рд╛ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдШрд░реНрд╖реЛрдВ рдХрд╛ рднреА рд╕реНрд░реЛрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдмрд╛рдж рд╡рд╛рд▓рд╛ рдЕрддреНрдпрдзрд┐рдХ рдореЗрдЬрдмрд╛рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред рдЖрдкрдХреЗ рддрд░реНрдХ рдХреЗ рдмрд╛рдж рдЙрди рджреЛрдиреЛрдВ (рдФрд░ рдЕрдиреНрдп) рдХреЛ рднреА рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ project_name рдХрд╛ рдЕрдВрддрд░ рджреЗрдЦрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реВрдВред

рдХреГрдкрдпрд╛, рдЗрд╕ рдкреНрд░рд╢реНрди рдХреЛ рдлрд┐рд░ рд╕реЗ рдЕрдирджреЗрдЦрд╛ рди рдХрд░реЗрдВред

@ рдорд╛рдЗрдХрд▓-рдХреЗ рдХреНрдпрд╛ рдЖрдк project_name container_name ? рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд╣ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрдИ рдХрдВрдЯреЗрдирд░ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛ рдореИрдВрдиреЗ рддреБрдореНрд╣реЗрдВ рдЧрд▓рдд рд╕рдордЭрд╛ рд╣реИ?

рдЬрдмрдХрд┐ network , рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рд╣реЛрд╕реНрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдРрд╕реЗ рдХрдИ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрдм рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдПрдХ рдХреЗрдВрджреНрд░реАрдп рдкреГрдердХ рдиреЗрдЯрд╡рд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдХрдВрдЯреЗрдирд░ рджреВрд╕рд░реЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ docker-compose.yml рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИрдВред

@AyushyaChitransh рдЖрдкрдиреЗ рдЧрд▓рдд рд╕рдордЭрд╛ред рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ: container_name , network рдФрд░ рджреВрд╕рд░реЛрдВ рдХреЗ docker-compose.yml project_name рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП? рд╡реЗ рд╕рднреА рд╕рдВрдШрд░реНрд╖ рдпрд╛ рдореЗрдЬрдмрд╛рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХреНрд╖рдорддрд╛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

@ рдЖрдирдВрдж рдореБрдЭреЗ рдЗрд╕ рдЕрд╡рд╕рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдХрдВрдЯреЗрдирд░ рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрддрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдВрдкреЛрдЬ рдлрд╛рдЗрд▓ рдореЗрдВ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ, рд╣реИ рдирд╛?

рд╣рд╛рдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред

рд╕рдВрдмрдВрдзрд┐рдд рдЪрд░реНрдЪрд╛ рд╕реЗ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ ред

@estarter рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмрдЧ

@ schmunk42 рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЕрдиреБрд░рдХреНрд╖рдХ рдЗрд╕рд╕реЗ рдЕрд╡рдЧрдд рд╣реИрдВ - рдЬреЛрдлреНрд░реА рдХреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ On --project-directory # 4709, # 4933 рдФрд░ # 4841

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ PR_5378 рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдЧрд╛:
docker-compose --project-directory PR_5378 -f docker-compose.yml -f docker-compose2.yml down

рдЖрдкрдиреЗ рдорд╛рди рд▓рд┐рдпрд╛ рдХрд┐ --project-directory -f рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдХрдорд╛рдВрдб IOError: [Errno 2] No such file or directory: u'./docker-compose.yml'

рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ --project-directory -f рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ - рдЕрдиреНрдпрдерд╛ рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдПрдХ рджреБрдГрд╕реНрд╡рдкреНрди --project-directory рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ рдФрд░ рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдХрдИ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВред

рдореИрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╣рд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдкрд░ рдЗрддрдирд╛ рд╡рд┐рдЪрд╛рд░-рд╡рд┐рдорд░реНрд╢ рдХрд░рдХреЗ рдмрд╣реБрдд рд╣реИрд░рд╛рди рд╣реВрдВред

рдпрд╣ рдкреВрд░реНрд╡рддрд╛ рдХрд╛ рдХреНрд░рдо рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:

  1. рд╣рд╛рд░реНрдб рдХреЛрдбрд┐рдд
  2. cli рд╡рд┐рдХрд▓реНрдк
  3. рд╡рд╛рддрд╛рд╡рд░рдг
  4. project.rc
  5. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ

project_name рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк # 1 рдпрд╛ рд╡рд┐рдХрд▓реНрдк # 4 рдирд╣реАрдВ рд╣реИред рдпрд╣ рдореВрд▓рднреВрдд рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд▓реЛрдЧ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХ рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрдд рддрд░реАрдХреЗ рд╕реЗ рд╣рд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд▓рдЧрддрд╛ рд╣реИред

рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╡рд┐рддреНрд░рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджрд╛рд░реНрд╢рдирд┐рдХ рддрд░реНрдХ рджрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╢рд╛рдпрдж рд╕рд╣рд╛рдпрдХ рди рд╣реЛрдВред рджреВрд╕рд░реА рдУрд░ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд╛рдорд╛рдиреНрдп OSS рдХреИрд╕реНрдХреЗрдбрд┐рдВрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдмрд╣реБрдд рд╕рд╣рд╛рдпрдХ рд╣реИред

рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╡рд┐рддреНрд░рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджрд╛рд░реНрд╢рдирд┐рдХ рддрд░реНрдХ рджрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╢рд╛рдпрдж рд╕рд╣рд╛рдпрдХ рди рд╣реЛрдВред

рдЗрд╕ рддрд░реНрдХ рдХреЗ рдмрд╛рдж рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрджреНрджреЗрд╢реНрдп рдирд╣реАрдВ рд╣реИред рд╢реБрд░реВ рд╕реЗ рд╣реА , рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ рдХрд┐ рд╣рдо рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рд╛рдБ рдЦрдбрд╝реЗ рд╣реИрдВред

рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕ рдкрд░ рдкрд╛рд░рджрд░реНрд╢реА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХрднреА рднреА docker-compose ред рдпрджрд┐ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рд╕рдВрдХрд▓реНрдк рдорд╛рд░реНрдЧ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдХрд░рдиреЗ рдХреА рдмрд╣реБрдд рд╣реА рдУрдПрд╕рдПрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛ред рдХреЛрдб рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрдиреБрдЬреНрдЮреЗрдп рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпреЛрдВ рдХрдВрдЯреЗрдирд░_рдирд╛рдо рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдиреЗрдЯрд╡рд░реНрдХ рднреА docker-compose.yml рдореЗрдВ рд╣реИ? рдкрд╣рд▓рд╛ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдШрд░реНрд╖реЛрдВ рдХрд╛ рднреА рд╕реНрд░реЛрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдмрд╛рдж рд╡рд╛рд▓рд╛ рдЕрддреНрдпрдзрд┐рдХ рдореЗрдЬрдмрд╛рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред рдЖрдкрдХреЗ рддрд░реНрдХ рдХреЗ рдмрд╛рдж рдЙрди рджреЛрдиреЛрдВ (рдФрд░ рдЕрдиреНрдп) рдХреЛ рднреА рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ Project_name рдХрд╛ рдЕрдВрддрд░ рджреЗрдЦрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред

container_name , рдЙрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдореЗрдВ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЬреИрд╕рд╛ рдХрд┐ @ schmunk42 рдиреЗ рдмрддрд╛рдпрд╛, рдЕрдЧрд░ рд╣рдо рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд▓реНрдкрдирд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕рдХрд╛ рд▓рдЧрд╛рддрд╛рд░ рджреБрд░реБрдкрдпреЛрдЧ рд╣реБрдЖ рд╣реИ рдФрд░ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдирдЧрд┐рдирдд рдореБрджреНрджреЛрдВ рдХрд╛ рд╕реНрд░реЛрдд рд░рд╣рд╛ рд╣реИред
network , рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдХреИрд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ?

рд╡рд┐рдХрд▓реНрдк # 4 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рдХреНрдпрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ? рдореИрдВрдиреЗ рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП .docker-compose рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдХреБрдЫ рдмрд╛рддрдЪреАрдд рджреЗрдЦреАред рдпрд╣ _x_ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рдЭрдВрдбреЗ (рдЬреЛ рдЕрднреА рднреА рдкрд░реНрдпрд╛рд╡рд░рдг рдкреНрд░рдмрдВрдзрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ) рдХреЛ рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмреЗрд╣рддрд░ (imo) рд╣реЛрдЧрд╛ред

рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛:

# <my-project-dir>/.docker-compose
project_name: foobar

рдЙрдкрд░реЛрдХреНрдд рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╡рд┐рдХрд▓реНрдк рд╕реЗ рдЕрд▓рдЧ рд╣реИ рдФрд░ рдкреВрд░реНрд╡рд╡рд░реНрддреА рд╕реВрдЪреА рдореЗрдВ рдХрдо рд╣реИред

рдпрд╣ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реВрдЪреА рд╕реЗ рдПрдХ рдФрд░ рдорд╛рдирдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрде рдХреЛ рдЯрд┐рдХ рдХрд░рддрд╛ рд╣реИред

@thedeeno рд╣рдорд╛рд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ, COMPOSE_PROJECT_NAME .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░рд╛ рд╣реЛрддрд╛ рд╣реИ (рдЙрд╕реА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреНрд░рдо рдХреЗ рд╕рд╛рде рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреА рд░реВрдкрд░реЗрдЦрд╛ рдореЗрдВ рд╣реЛрдЧрд╛)ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдордиреЗ рдЖрдкрдХреЛ .env рдирд╛рдо рдХреЗ рдЦрд░рд╛рдм рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрдирд╛ рд╣реИ , рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдо рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ docker-compose.env рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рд╡рд╣ рдХрд╛рдо рддреБрдореНрд╣рд╛рд░реЗ рд▓рд┐рдпреЗ рд╣реЛрдЧрд╛?

рд╣рдорд╛рд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ, .env рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ COMPOSE_PROJECT_NAME рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ

@ рдкрд┐рдВрдбрд▓реА- рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд╣рдо рдЕрд╕рд╣рдордд рд╣реИрдВред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕реНрд░реЛрдд рд╣реИрдВред рдпрд╣ рд╕реНрдерд╛рдиреАрдп рд░рд╣рд╕реНрдпреЛрдВ рдФрд░ рдЕрдиреНрдп рд╕реНрдерд╛рдиреАрдп рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╕реНрдерд╛рди рд╣реИред

рдпрд╣ number 3 рдКрдкрд░, рдкрд░реНрдпрд╛рд╡рд░рдг рдЖрдзрд╛рд░рд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдЬрдм рд╣рдо рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рд╣рдореЗрдВ рдкрд▓рд╛рдпрди рдирд╣реАрдВ рджреЗрддрд╛ ( number 4 )ред

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдЕрдкрдирд╛ .env рдлрд╝рд╛рдЗрд▓ рд╣реЛрдЧреА (VC рдирд╣реАрдВ)ред рдЗрд╕рдореЗрдВ docker-compose.yaml рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд░рд╣рд╕реНрдп рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрд╕реЗ рдкреНрд░реЗрдо рдХрд░реЗрдВред

рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЪреВрдВрдХрд┐ рдпрд╣ рдХреБрдЫ рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рджреГрдврд╝рддрд╛ рд╕реЗ рдпреБрдЧреНрдорд┐рдд рд╣реИред рдЪреВрдВрдХрд┐ .env рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЕрдкрдиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ COMPOSE_PROJECT_NAME рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛; рдФрд░ рдпрд╣ _ рдмрд╛рдд рд╣реИ_ рджреВрд╕рд░реЛрдВ рдХреА рддрд░рд╣ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЛрдИ рд░рд╣рд╕реНрдп рдирд╣реАрдВ рд╣реИред

рддреЛ рджреБрдГрдЦ рдХреА рдмрд╛рдд рд╣реИ, рдмрд╕ .env рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрд░реЛрдд рдкрде рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рд╣рдореЗрдВ рдпрд╣рд╛рдБ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ .env рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ sourced рд╣реИред рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдореИрдВ рдЕрдкрдиреЗ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдПрдХ usecase рджрд┐рдЦрд╛рддрд╛ рд╣реВрдБ:

рдореИрдВ рдЫрд╡рд┐ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдЕрдЬреАрдм рд╕реАрдб / рдСрдХ / рдкрд░реНрд▓ / рдЬреЛ рдХреБрдЫ рднреА рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рд┐рд░реНрдл CI рдореЗрдВ рдореВрд▓реНрдп рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ:

    echo APP_VERSION=$CI_COMMIT_REF_NAME > .env
    docker-compose pull
    docker-compose up -d

рдмрд╛рдж рдореЗрдВ docker-compose.yml , рдЫрд╡рд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

    image: my.registry.example.net/app:${APP_VERSION}

рдЕрдм рдЕрдЧрд░ рдореБрдЭреЗ рдЙрд╕ рддрд░рд╣ рдХреЗ рдЕрдзрд┐рдХ рдЪрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдХреБрдЫ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдХрдИ .env рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╢рд╛рдпрдж "рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛" рд╕рдорд░реНрдерди рднреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ: docker-compose.env.d/* рдпрд╛ .docker-compose.env.d/* рдпрд╛ docker-compose.d/* ред

рд▓реЗрдХрд┐рди рдЗрд╕ рддрд░рд╣ рдХреЗ рдЧреНрд▓реЛрдм рддреБрд░рдВрдд рдПрдбрд┐рдЯрд░ рдмреИрдХрдЕрдк рдХреА рд╕рдорд╕реНрдпрд╛рдПрдБ рдкреИрджрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ( *~ , *.bak ) рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХреБрдЫ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ: docker-compose.env.d/*.sh

... рд▓реЗрдХрд┐рди рдлрд┐рд░, рд╢рд╛рдпрдж рдпрд╣ docker-compose.yml .env рдореЗрдВ рд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдЪрд┐рдХрди-рдЕрдВрдбреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреЗрд╢ рдХрд░реЗрдЧрд╛, рдЬреЛ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ? рдореИрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдХреИрд╕реЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдкрд╛рд░реНрд╕рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ :)

рдереЛрдбрд╝рд╛ рд╕рд╛ рдЕрдкрдорд╛рдирдЬрдирдХ, рд▓реЗрдХрд┐рди COMPOSE_PROJECT_NAME env рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рдпрдВрддреНрд░рдг рдЙрдкрд╕рд░реНрдЧ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рдпрд╣ рдЕрднреА рднреА A-Za-z0-9_ рд╕реЗ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреАрди рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ ... рдореИрдВ рдЕрдкрдиреЗ рдЙрдкрд╕рд░реНрдЧ рдореЗрдВ - рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред (рдореБрдЭреЗ рдпрд╣ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрднреА рдХрд╣рд╛рдВ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)

рдпрд╣ рдЙрдиреНрд╣реАрдВ рдкрд╛рддреНрд░реЛрдВ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ рдЬреЛ рдЦреБрдж рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреЗ рд╣реИрдВред

@glensc рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рд╣реИрдВред рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ docker-compose рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд╣реИред

рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдореИрдВрдиреЗ рджреЗрдЦреА рд╣реИ, рд╡рд╣ рд╣реИ рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реНрд╡рддрдГ рд╕реНрд░реЛрдд .env

@glensc @thedeeno рддреЛ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ *.env рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдВрдЧреА, рдПрдХ рдХрд╛ рдорддрд▓рдм рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдПрдХ рдирд┐рдЬреА рд░рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдмрд╛рдж рд╡рд╛рд▓реЗ рдУрд╡рд░рд░рд╛рдЗрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЬрдм рджреЛрдиреЛрдВ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ?

рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рд╣рдлреНрддреЗ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╡рд┐рдиреНрдпрд╛рд╕ .env рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ред

рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ docker-compose.env (рдЬрдмрдХрд┐ рдЕрднреА рднреА рдирд┐рдЬреА .env рд╕реЛрд░реНрд╕рд┐рдВрдЧ рдСрдЯреЛ) рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛!

рд╣рдо рдЗрд╕реЗ рдПрдХ рдЖрд░ рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреА рддрд░рд╣ рдорд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрд░реЛрдд рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ / рдирд┐рдЬреА рдПрдирд╡реА рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдпрд╣рд╛рдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЛрдВ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдпрджрд┐ - рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдореЗрдВ рднреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдПрдЧреА, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

@thedeeno @glensc рдЖрдк рдПрдХ рдпреВрдЬрд╝-рдХреЗрд╕ рджреЗрдирд╛ рдЬрд╣рд╛рдВ рдПрдХ рдирд┐рдЬреА ENV рдлрд╝рд╛рдЗрд▓ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдПрдХ рдореЗрдВ рдорд╛рдиреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреА рдЬрд░реВрд░рдд рдХреЛ рдЦреБрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

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

@ schmunk42 рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╣ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╡рд╣рд╛рдВ рдмрд╣реБрдд рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред рдореБрдЭреЗ рд╕рд┐рд░реНрдл project_name рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред docker-compose.env рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЗ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХрд╛ рдкрд╛рд▓рди рдХрд░реВрдВрдЧрд╛ред рд╣рдо рд░рд╣рд╕реНрдп рдХреЗ рд▓рд┐рдП .env рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ docker-compose.yaml рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред

@ schmunk42 https://github.com/docker/compose/issues/745#issuecomment -34965962

рдпрд╣ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреЗрд╡рд▓ ${variables} image рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП ${variables} рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ .env рдлрд╝рд╛рдЗрд▓ рд▓рдЧрддреА рд╣реИред

@ рдПрд▓рдЧреЗрдВрд╕ рдПрдЧреНрд░реА !

рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдУрд╡рд░рд░рд╛рдЗрдб рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП docker-compose.override.env рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреВрдВрдЧрд╛ред

docker-compose.env
docker-compose.override.env
docker-compose.override.yml
docker-compose.yml

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЗ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХрд╛ рдкрд╛рд▓рди рдХрд░реВрдВрдЧрд╛ред рд╣рдо рд░рд╣рд╕реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП .env рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ docker-compose.yaml рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред

@thedeeno рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

environment:
  - ${SECRET_VAR_FROM_DOTENV}

рдЬреЛ docker-compose.override.env рд╕рд╛рде рднреА рд╕рдВрднрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╛ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

env_file:
  - .env

рдХреНрдпрд╛ рдЖрдк рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВред рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ-рд░рдЪрдирд╛ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ
рдкрде?

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

Thu, Nov 23, 2017 рдХреЛ 1:15 рдкреВрд░реНрд╡рд╛рд╣реНрди рдЯреЛрдмрд┐рдпрд╛рд╕ рдордВрдХ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдкрд░
рд▓рд┐рдЦрд╛ рдерд╛:

@glensc https://github.com/glensc рд╕рд╣рдордд рд╣реЛ рдЧрдП!

рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ docker-compose.override.env рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреВрдВрдЧрд╛
yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдУрд╡рд░рд░рд╛рдЗрдб рд╕реБрд╡рд┐рдзрд╛ред

рдбреЛрдХрд░-compose.env
рдбреЛрдХрд░-compose.override.env
рдбреЛрдХрд░-compose.override.yml
рдбреЛрдХрд░-compose.yml

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЗ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХрд╛ рдкрд╛рд▓рди рдХрд░реВрдВрдЧрд╛ред рд╣рдо рд░рд╣рд╕реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП .vv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░
рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ docker-compose.yaml рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░реЗрдВред

@thedeeno https://github.com/thedeeno рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

рд╡рд╛рддрд╛рд╡рд░рдг:

  • $ {} SECRET_VAR_FROM_DOTENV

рдЬреЛ docker-compose.override.env рдХреЗ рд╕рд╛рде рднреА рд╕рдВрднрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╛ рдЖрдк
рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

env_file:

  • .env

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/docker/compose/issues/745#issuecomment-346538315 , рдпрд╛ рдореВрдХ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AAFIdxtbI7y3wW2TFa401Go6Msj0gC74ks5s5Q1vgaJpZM4DLBNs
ред

рдХреНрдпрд╛ рдЖрдк рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВред рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ-рд░рдЪрдирд╛ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ
рдкрде?

рдЬрд░реВрд░реА рдирд╣реАрдВ рдХрд┐, BC docker-compose рдЕрднреА рднреА .env рд▓рдЧ рд╕рдХреЗ, рдпрджрд┐ рдЕрдиреНрдп рдирд╣реАрдВ рдорд┐рд▓реЗ, рддреЛ fig.yml рдПрдХ рдмрд╛рд░ рднреАред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдорд▓реЛрдВ рдХреЛ рддрдп рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:

.env
docker-compose.env
.env
docker-compose.override.env
.env
docker-compose.env
docker-compose.override.env

рдЕрдВрддрд┐рдо рдорд╛рдорд▓реЗ рдореЗрдВ .env рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдкрд╣рд▓реЗ рджреЛ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдЕрдирд┐рдЪреНрдЫреБрдХ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЗ рд░реВрдк рдореЗрдВ .env рдХрд░реЗрдВрдЧреЗ, рджреВрд╕рд░реЛрдВ рдХреЛ рдПрдХ рд╡рд╛рдкрд╕реА рдХреЗ рд░реВрдк рдореЗрдВред

рдореЗрд░реЗ рд▓рд┐рдП .env рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рдЕрд░реНрде рд╡рд╛рд▓реА рдлрд╛рдЗрд▓ рд╣реИ
рд╡реНрдпрд╛рдкрдХ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдореЗрдВред

рдЖрдкрдХреЗ рддреАрд╕рд░реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╣ рд╕рдмрд╕реЗ рдХрдо рдкреВрд░реНрд╡рддрд╛ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рд╣реИред

рдореБрдЭреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рд╕реНрд░реЛрдд рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдореИрдВ рдирд╣реА
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рдкрд░рд┐рд╖реНрдХреГрдд рдХреИрд╕реНрдХреЗрдбрд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджреЗрдЦрднрд╛рд▓
рдкреНрд░рдмрдВрдзрдиред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд░рдгрдиреАрддрд┐ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдерд╛
рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд░рддреЗ рд╣реИрдВред

рдпрджрд┐ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдЯреЗрдмрд▓ рд╕реЗ рджреВрд░ рд╣реИ рдФрд░ рдореЗрд░реА рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ
рдЗрд╕ env рдЭрд░рдиреЗ рдХреЗ рд╕рд╛рде project_name рдЖрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдореИрдВ рдЦреБрд╢реА рд╕реЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдБрдЧрд╛
рд╣рд╛рд▓рд╛рдВрдХрд┐!

Thu, Nov 23, 2017 рдХреЛ 1:31 AM рдЯреЛрдмрд┐рдпрд╛рд╕ рдордВрдХ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдкрд░
рд▓рд┐рдЦрд╛ рдерд╛:

рдХреНрдпрд╛ рдЖрдк рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВред рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ-рд░рдЪрдирд╛ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ
рдкрде?

рдЬрд░реВрд░реА рдирд╣реАрдВ рд╣реИ, рдИ.рдкреВ. рдХреЗ рд▓рд┐рдП рдбреВрдХреЛ-рдХрдВрдкреЛрдЬрд╝ рдЕрднреА рднреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ
рдЕрдиреНрдп рдирд╣реАрдВ рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рдмрд╛рд░ рдЕрдВрдЬреАрд░ рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдорд▓реЛрдВ рдХреЛ рддрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрд╢реНрдХрд┐рд▓:

.env
рдбреЛрдХрд░-compose.env

.env
рдбреЛрдХрд░-compose.override.env

.env
рдбреЛрдХрд░-compose.env
рдбреЛрдХрд░-compose.override.env

.env рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдВрддрд┐рдо рдорд╛рдорд▓реЗ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИ
рдкрд╣рд▓реЗ рджреЛ рдХреЗ рд▓рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЗ рд░реВрдк рдореЗрдВ .vv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рджреВрд╕рд░реЛрдВ рдХреЛ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ
рдореИрджрд╛рди рдЫреЛрдбрд╝рдирд╛ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/docker/compose/issues/745#issuecomment-346539891 , рдпрд╛ рдореВрдХ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AAFId95kZQIsiWp488JyPQOtGJju0OPbks5s5RFbgaJpZM4DLBNs
ред

рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдХреИрд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ?

@ рдирд▓реА

services:
    web:
        build: ./
        networks:
            - my_project_network_on_my_localhost
networks:
    my_project_network_on_my_localhost:
        external: true

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд░реЗрдкреЛ рдХреЛ рдХрднреА рднреА docker-compose.yml рдХрд┐рдпрд╛ред рдЗрд╕рдореЗрдВ рд╣рдореЗрд╢рд╛ рдЕрддреНрдпрдзрд┐рдХ рд╣реЛрд╕реНрдЯ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрддреА рд╣реИрдВред рдпрд╣ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдХрд╛рдлреА рднрд┐рдиреНрди рд╕рд╛рдордЧреНрд░реА рд╣реЛ рд╕рдХрддреА рд╣реИред

рдореИрдВ "4 project.rc" рдХрд╛ рдкреНрд░рд╢рдВрд╕рдХ рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рд╢рд╛рдпрдж рдПрдХ рдЕрд▓рдЧ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдмрдЬрд╛рдп docker-project.yaml рдЬреИрд╕реЗ рдХреБрдЫ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдореВрд▓ рдореБрджреНрджреЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рднреА рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИ, рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджреЗ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рд╕реНрд░реЛрдд рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдмрд┐рдВрджреБ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдПрдХрд▓ рд╣рд╛рд░реНрдб рдХреЛрдбрд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдХреЛрдИ рдмрд╛рд╣рд░реА рдЯреВрд▓рд┐рдВрдЧ рд╣реИ рдЬреЛ рдПрдХ рд╕реБрд╕рдВрдЧрдд рдирд╛рдо рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдЯреВрд▓рд┐рдВрдЧ docker-compose рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ?

my_project_network_on_my_localhost рдореБрдЭреЗ рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдмрд╛рд╣рд░реА рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдпрд╣ рд░рдЪрдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред

my_project_network_on_my_localhost рдореБрдЭреЗ рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИред

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

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рдордЭрд╛, рд╢реБрд░реВ рдореЗрдВ docker-compose (рдпрд╛ рдмреЗрд╣рддрд░ fig ) рдХреЗ рдкреАрдЫреЗ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдпрд╣ рдерд╛ рдХрд┐ рдПрдХ рдЬрдЯрд┐рд▓ рдХрдВрдЯреЗрдирд░ рд╕реЗрдЯрдЕрдк рдХреЗ рд▓рд┐рдП рдЙрди рд╕рднреА docker рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ рд╕рд░рд▓ рдпрдорд▓ рдлрд╝рд╛рдЗрд▓ред рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЗрддрдирд╛ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ, рдХрд┐ рдПрдХ рд╣реА рд╡рд┐рдХрд▓реНрдк рдмрдЪрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдХрд┐рд╕реА рддрд░рд╣ рдпрд╛рдж рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдЕрдм рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдХрд╛ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИред

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

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

рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ, рд╣рдо рдХреБрдЫ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

(cd tests && docker-compose up -d)
(cd tests && docker-compose ps)
(cd tests && docker-compose run php codecept run)

рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП ... рдпрд╛ рдпрд╣

(cd production && docker-compose logs -f --tail 100)

рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП (рдмреЛрдирд╕: рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдорд╢реАрди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП DOCKER_HOST рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ docker-compose )ред

рд▓реЗрдХрд┐рди рд╣рд╛рдБ, рдпрд╣ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рд╣реИ, рдПрдХ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ - рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдЬрдЧрд╣реЛрдВ рдкрд░ cp .env-dist .env рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЕрдиреНрдпрдерд╛ рдпрд╣ рдПрдХ рдЕрд╡реИрдз рд░рдЪрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рд╕рд┐рд░реНрдл рдЗрд╕ IMHO рд╕реНрд╡рдЪреНрдЫ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдмрд┐рдВрджреБ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдПрдХрд▓ рд╣рд╛рд░реНрдб рдХреЛрдбрд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдХреЛрдИ рдмрд╛рд╣рд░реА рдЯреВрд▓рд┐рдВрдЧ рд╣реИ рдЬреЛ рдПрдХ рд╕реБрд╕рдВрдЧрдд рдирд╛рдо рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЯреВрд▓рд░рд┐рдВрдЧ рдХреЛ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

@dnephin рдХрд╛рд░рдг рд╣реИрдВред

рд╣рд╛рдВ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рд╣реИрдВред рдкреВрдЫрдирд╛ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдпреЛрдЧреНрдп рдмрдирд╛рдирд╛ рд╣реИред

рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдПрдХ рд╣рд╛рд░реНрдб-рдХреЛрдбрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдорджрдж рдХрд░рддрд╛ рд╣реИ: рдЯреНрд░реИрдлрд┐рдХ рдХрд╛ рдбреЙрдХрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд┐рдореНрди рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрдЬрдмрд╛рди рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдореЗрдВ рдЪреВрдХ рдХрд░рддрд╛ рд╣реИ: <service>.<project>.<domain> ред рдЗрд╕ рд╕реНрд╡рд░реВрдкрдг рдХреЛ рдмрджрд▓рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рд╣рдорд╛рд░реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдлрд╛рдпрджреЗрдордВрдж рд╣реИ рдХрд┐ рд╡реЗ рд╣рдорд╛рд░реЗ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА fqdns рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрджрд┐ рд╣рдо рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯрдЕрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рд░рдВрддрд░рддрд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рд╣реИ: рдП) рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдХреНрд▓реЛрди рдмреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ) рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЯреНрд░реИрдлрд┐рдХ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рджреЛрдиреЛрдВ рдЪреВрд╕рддреЗ рд╣реИрдВред

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

рджреЛрд╕реНрддреЛрдВ, рдЗрддрдиреА рд╕рд╛рд░реА рдЪрд░реНрдЪрд╛ ... рдХреНрдпрд╛ рд╕реНрдерд┐рддрд┐ рд╣реИ, рдХреНрдпрд╛ рдореИрдВ рдЕрдкрдиреЗ .docker-compose рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ?
рдпрд╛ рдЕрднреА рднреА рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЪрд░реНрдЪрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд░рдЦрдиреЗ рд╕реЗ рдЕрдиреНрдп рдЙрдкрдХрд░рдг, рдЬреИрд╕реЗ PyCharm, рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдпрд╣ рдПрдХ рд╣реА YAML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд╕рдВрднрд╡рддрдГ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдореВрд▓ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдмрд╕ рд╣реИ (рдХреНрдпрд╛ рдореБрдЭреЗ _naively_?) рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЖрдзрд╛рд░ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдирд╛рдо рд╕реНрдерд╛рди (рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд) рдХреЛ рдПрдХ рдлреНрд▓реИрдЯ рдПрдХ рдкрд░ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдирд╛рдо рд╕рдВрдШрд░реНрд╖ рдХреЗ рдХрд╛рд░рдг рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ ~/fooproject/master рдФрд░ ~/barproject/master рдореЗрдВ рд╕реЗрд╡рд╛рдПрдБ рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛рдПрдБ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдорд╣рддреНрд╡рд╣реАрди рд╣реИрдВред рддреЛ рд╢рд╛рдпрдж рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝рд┐рдВрдЧ рдХреЛ рдордЬрд╝рдмреВрдд рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рдард┐рдХрд╛рдиреЛрдВ рдХреЛ рдкреВрд░реЗ рд░рд╛рд╕реНрддреЗ рдкрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдП (рдпрд╛рдиреА home_flaviovs_fooproject_master )?

рдореИрдВ рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓рдЧрд╛рддрд╛рд░ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред Git рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рд╣реИред рд╢рд╛рдпрдж рдПрдХ рдкрдврд╝рдиреЗ .env.default рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝рд╛рдЗрд▓ .env рдЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдЙрдкрд╛рдп рд╣реИ (рдЬреЛ BTW рджреЗрдЦрднрд╛рд▓ рдХрд░реЗрдЧрд╛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ # 210 рдХреЗ рд╕рд╛рде-рд╕рд╛рде)?

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдмрд╛рдЗрдирд░реА рд▓рдкреЗрдЯрдХрд░ рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рддрд╛рдХрд┐ рдореИрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╣реАрдВ рд╕реЗ рднреА рдХреЙрд▓ рдХрд░ рд╕рдХреВрдВред рдпрд╣ .env рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрд╣реАрдВ рднреА рд╕рд╣реА рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдЬрд╛рд╣рд┐рд░ рд╣реИ рдЖрдк рдЗрд╕реЗ рдкреНрд░рддрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдпрд╛ рдХреБрдЫ рдФрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХрдорд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рд╛ рд╣реИред

DEFAULT_DOCKER_COMPOSE=~/my-project

function dcompose() {
    pushd $DEFAULT_DOCKER_COMPOSE &> /dev/null;
    /usr/local/bin/docker-compose $@;
    popd &> /dev/null;
}
## maintain auto complete
function _dc {
    pushd $DEFAULT_DOCKER_COMPOSE &> /dev/null;
    _docker_compose;
    popd &> /dev/null;
}

complete -F _dc dcompose

рдореБрдЭреЗ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдЯрдХрд░рд╛рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬреАрдм рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдореИрдВ docker-compose.yml рдореЗрдВ project_name рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╣реБрдд рддрд╛рд░реНрдХрд┐рдХ рдФрд░ рдЖрдЧреЗ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рд░реЛрдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдирд╛рдо рд▓реЗрдирд╛ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлреЛрд▓реНрдбрд░ / рд╣реЛрдо / рдкреНрд░реЛрдЬреЗрдХреНрдЯ 1 / рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, / рд╣реЛрдо / рдкреНрд░реЛрдЬреЗрдХреНрдЯ 2 / рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЗрддреНрдпрд╛рджрд┐ рдЬреИрд╕реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдбреЙрдХрдЯрд░ рдиреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА_рдПрдкреНрдк рдХреА рддрд░рд╣ рд╣реА рдЗрдореЗрдЬ рдХреЗ рдирд╛рдо рддреИрдпрд╛рд░ рдХрд┐рдП рд╣реИрдВред

@ рджреЗрд╡рддрд╛ рдЖрдк docker-compose.yml рдореЗрдВ рдЫрд╡рд┐ рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд╕ image рдФрд░ build ред

рддреЛ ... рдЕрдм рдПрдХ рд╣реА рдирд╛рдо рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдХреИрд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

docker-compose -f /foo/bar up -d
docker-compose -f /foo/foo/foo/bar down

рд╢рд╛рдпрдж рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдерд╛ред рд▓реЗрдХрд┐рди version: 4 рдореЗрдВ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ docker-compose.yml рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирдП рдХреАрд╡рд░реНрдб рдЬреЛрдбрд╝реЗрдВ?

рдореЗрд░реА .docker- рд░рдЪрдирд╛ / рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ ...
--рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХрд╛рдо рдХрд┐рдпрд╛

рдореИрдВ docker-compose.yml рдореЗрдВ рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рд╣реИ, рдореЗрд░реЗ рдкрд╛рд╕ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╡реЗрдм рдРрдк рдФрд░ рдПрдХ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬреБрдПрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗрд╡рд╛ рд╣реИред
рдореИрдВ рдПрдбрд╣реЙрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП docker-compose.yml рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдбрд╣реЙрдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдСрд░реНрдХреЗрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЗрди рдПрдбрд╣реЙрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдорд╛рди рд╕реЗрд╡рд╛рдУрдВ / рдиреЗрдЯрд╡рд░реНрдХ / рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдПрдХ рдПрдбрд╣реЙрдХ рдХрд╛рд░реНрдп рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред postgress рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ред рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рд╡реЙрд▓реНрдпреВрдо, рдиреЗрдЯрд╡рд░реНрдХ рдЖрджрд┐ рдХреЛ рд╕реНрдкрд┐рди рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

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

рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╕рдорд╕реНрдпрд╛ рддрдм рдЖрддреА рд╣реИ рдЬрдм рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдпрд╣ рдПрдбрд╣реЙрдХ рдЯрд╛рд╕реНрдХ yml рдлрд╝рд╛рдЗрд▓ рдЙрд╕реА рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (рдпрд╛ рд╕рдорд╛рди рд░реЗрдкреЛ) рдореЗрдВ рдореБрдЦреНрдп docker-compose.yml ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢рд╛рдпрдж рдореИрдВ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ docker-compose.adhoc.yml adhoc рдЯрд╛рд╕реНрдХ рдбрд╛рд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ, DOCKERFILE рдФрд░ рдПрд╕реЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдЬреЛ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ / рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдкрдиреА рдЪрд┐рдВрддрд╛ рд╣реИред рдЬреИрд╕реЗ рд╣реА рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реВрдВ, рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рдорд╛рди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ / рдиреЗрдЯрд╡рд░реНрдХ рдЖрджрд┐ рддрдХ рдЗрд╕рдХреА рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рд╣реИред

рдЕрдЧрд░ рдореИрдВ projectname docker-compose.yml рдФрд░ docker-compose.adhoc.yml рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ - рддреЛ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдврд╛рдВрдЪрд╛ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░реЗрдкреЛ рдореЗрдВ рднреА рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реВрдВ) рдФрд░ рдЕрднреА рднреА рдмрд┐рдирд╛ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рддрд░реНрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдЪрд╛рд░реЛрдВ рдУрд░ рдШреБрдорд╛рдПрдВред

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд╛рдордХрд░рдг рд╕рдВрдШрд░реНрд╖ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ

рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВ

/company
    /ab   # project prefix
        /backend   # actual project
        /webapp
    /cd
        /backend
        /webapp

рдЕрдм рдЬрдм рдореИрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ backend_default рдиреЗрдЯрд╡рд░реНрдХ рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ backend_ рд╕рд╛рде рдирд╛рдо рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдм рдЕрдЧрд░ рдореИрдВ рджреВрд╕рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ рд╣реИ рд╕рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ docker-compose down рдЪрд▓рд╛рдПрдВ - рдЕрдиреНрдпрдерд╛ рдпрд╣ рдПрдХ рд╣реА рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдирдП рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдмрдВрдж рдХрд░рдиреЗ рдкрд░, рдпрд╣ рдЕрдирд╛рдереЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдЧрд╛, рдЬрдм рдХреЛрдИ рдирд╣реАрдВ рд╣реИрдВред

рдореЗрд░реЗ рд▓рд┐рдП рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВ, рдФрд░ рдбрд╛рдпрдиреЗрдорд┐рдХ рдбреЗрдореЛ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╢реАрди, рдПрдХ рд╢рд╛рдЦрд╛ рдкреНрд░рддрд┐ рд╕реНрдЯреИрдВрдб рдкрд░ рдбреЙрдХ-рдХрдВрдкреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

/project-1
    /dev # docker-compose.yml inside
    /master # docker-compose.yml inside
    /feature
        /new-feature # docker-compose.yml inside
/project-2
    /dev # docker-compose.yml inside
    /master # docker-compose.yml inside

рдЗрд╕рд▓рд┐рдП "рд╕реНрд╡рд╛рдореА" рдФрд░ "рджреЗрд╡" рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдПрдХ .docker-compose рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

@simplesmiler рдЦреБрдж рдХреЛ рджреЛрд╣рд░рд╛рдиреЗ рдХреЗ рдЬреЛрдЦрд┐рдо рдореЗрдВ, рдПрдХ .env рдкрд╣рд▓реЗ рд╣реА рд╣рд▓ рдХрд░ рд▓реЗрддрд╛ рд╣реИ ред

@ shin- .env рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рдЙрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред

рдХреНрдпрд╛ @simplesmiler рдЪрд╛рд╣рддрд╛ рд╣реИ рд░рдЦрдиреЗ _while рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд╛рд╕реНрддрд╛ рд╣реИ .env рдмрд╛рд╣рд░ рд╕рдВрд╕реНрдХрд░рдг control_ред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

@thedeeno рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрдж рдХреНрдпрд╛ рдХрд╣рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд╣рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдорд╛рдирдирд╛ тАЛтАЛрдЪрд╛рд╣рд┐рдП рдХрд┐ рдХрд┐рд╕реА рдФрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рд╕реЗ рдкрд░реЗ рд╣реИред

рд╣рдо рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣реА рдЙрдирдХреА рд╕рдорд╕реНрдпрд╛ рдХреА рдореЗрд░реА рд╡реНрдпрд╛рдЦреНрдпрд╛ рд╣реИред рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдЪрд┐рдд рдмрд┐рдВрджреБ, рдореИрдВ рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдореИрдВ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдХрд╛рд╢ рд╣рдо рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рдХреБрдЫ рдХреЙрдлреА рд╣рдбрд╝рдк рд╕рдХрддреЗ рдереЗред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдБ рдПрдХ рдЭрдЯрдХрд╛ рд╣реВрдБред

рд╢рд╛рдпрдж рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдпрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: рдХреНрдпрд╛ .env рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реБрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ?

рдХреНрдпрд╛ .env рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░рддреЗ рд╣реБрдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ? рдпрд╛ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд▓рд╛рдкрддрд╛ рдХреНрд╖рдорддрд╛ рд╣реИ?

рдлрд┐рд▓рд╣рд╛рд▓ рдирд╣реАрдВред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ ^ 1 рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕ рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рджреНрд╡рд┐рддреАрдпрдХ env рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ docker-compose.env рд╣реЛрдирд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рд╕реЗ рдиреАрдЪреЗ рдЧрд┐рд░ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЬрд▓реНрдж рд╣реА рдпрд╣ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ред

1 / https://github.com/docker/compose/issues/745#issuecomment -345054893

рдпрд╣ рддреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЦрдмрд░ рд╣реИ! PR рдХреА рд╕реНрд╡реАрдХреГрддрд┐?

рдореИрдВрдиреЗ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдЙрдореНрдореАрдж рдЫреЛрдбрд╝ рджреА рдереА рд▓реЗрдХрд┐рди рдЪрд▓реЛ рдЗрд╕реЗ рдПрдХ рдФрд░ рдХреЛрд╢рд┐рд╢ рджреЗрддреЗ рд╣реИрдВ:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рд▓реЛрдЧ рдЕрднреА рднреА рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдЕрд╕рдлрд▓ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реА рдлрд╛рдЗрд▓ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпреЛрдВ рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдпрд╣рд╛рдВ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЙрдирдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗрдЯрдЕрдк рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдмрд╣реБрдордд рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рддреЛ рдпрд╣ рдХреИрд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рдЙрди рд╕рднреА рд▓реЛрдЧреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдпрд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдФрд░ рдлрд┐рд░ рдирд┐рд░реНрдгрдп рдХреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рд╡рд┐рдХрд▓реНрдк рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ?

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

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдХрд╣ рд╕рдХрддрд╛ рд╣реИ, (рд▓рдЧрднрдЧ) docker-compose.yml рдореЗрдВ рд╕рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗ "рд╕реНрдХреЛрдк" рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ # 4841 рдореЗрдВ рд╕реБрдЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк (рдЕрд░реНрдерд╛рдд --env-file ) рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@roipoussiere рдкрд░ рджреЗрдЦреЗрдВ https://github.com/docker/compose/issues/4841#issuecomment -414543951

рдзрдиреНрдпрд╡рд╛рдж @ schmunk42
рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореБрдЭреЗ рдПрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛:

.
тФЬтФАтФА project_a
тФВ┬а┬а тФЬтФАтФА .env
тФЬтФАтФА project_b
тФВ   тФЬтФАтФА .env

рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХреБрдЫ рдЖрд╕рд╛рди рдХреА рддрд░рд╣:

.
тФЬтФАтФА a.env
тФЬтФАтФА b.env

рд╣рд╛рдБ, рдпрд╣ рднреА рджреЗрдЦреЗрдВ https://github.com/docker/compose/issues/745#issuecomment -345054893 - рдЖрдкрдХреЛ рдЗрд╕реЗ рдПрдХ рдирдИ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрднреА-рдХрднреА рдпрд╣рд╛рдВ рдЫрд┐рдкрд╛ рд╣реЛрддрд╛ рд╣реИ : nerd_face:

рдореИрдВ --env-file рдкреНрд░рд╕реНрддрд╛рд╡ рд░рдЦрддрд╛ рд╣реВрдВред рдмрд╕ рдЙрд╕реА рдХреЗ рд▓рд┐рдП рдЯрд┐рдХрдЯ рдмрдирд╛рдпрд╛ред рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░реЗрдВред

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдЗрд╕ рдмрдЧ / рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдкрдврд╝реАрдВ, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рдЪрд░реНрдЪрд╛ рдЬрд╛рд░реА рд╣реИ рдФрд░ рдпрд╣ рдЦреБрд▓рд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рджрд┐рдпрд╛ рдХрд┐ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдЦреЛрд▓реЗ рд╣реБрдП 4 рд╕рд╛рд▓ рд╣реЛ рдЧрдП рд╣реИрдВ рдФрд░ рдЕрднреА рднреА рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ? рдХреНрдпрд╛ рд╣рдо рдЖрдВрд╢рд┐рдХ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ ..?

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдБ, рдореИрдВрдиреЗ рдЗрд╕ рдкреВрд░реЗ рдореБрджреНрджреЗ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рдирд╣реАрдВ рдкрдврд╝рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рд╡рд┐рд╖рдп рдХреЗ рдЖрд╕рдкрд╛рд╕ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рд╕рднреА рдЬрд╛рдирддреЗ рд╣реИрдВ .env рдЖрдорддреМрд░ рдкрд░ рдЧреБрдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЖрдорддреМрд░ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВред

рд▓реЗрдХрд┐рди рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рд╕реНрдЯреНрд░рд╛рдЗрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рдЯреЗрд╕реНрдЯ рдХреАрдЬрд╝ рдФрд░ рд▓рд╛рдЗрд╡ рдХреАрдЬрд╝, AKA рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдХреБрдВрдЬреА рдХреЗ 2 рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдЧрд╛, рдФрд░ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЖрдк рд▓рд╛рдЗрд╡ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдЧреБрдкреНрдд рдореВрд▓реНрдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП .env рдЙрдкрдпреЛрдЧ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╣реЛрдВрдЧреА, рдФрд░ рдЖрдк рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмреАрдЪ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рджреЗрд╡ рдпрд╛ рдареЗрд╕ рдореЗрдВ рдЕрдиреБрдкреНрд░рдпреЛрдЧ (рдХрд┐ рдкрд╛рдЧрд▓ рдФрд░ рд╕реБрдкрд░ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╡рдг рд╣реЛрдЧрд╛)ред

рдЖрдк рдЬреЛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ .env рдФрд░ .env.prod рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ рдФрд░ рджреЛрдиреЛрдВ рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЖрдкрдХреА рдкрд░реАрдХреНрд╖рд╛ / рджреЗрд╡ рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕рдВрджрд░реНрдн рджреЗрдВ рдХрд┐ рдЖрдкрдХреЗ рд╡рд┐рдХрд╛рд╕ рд░рдЪрдирд╛ рдореЗрдВ env_file ред

рд▓реЗрдХрд┐рди рддрдм рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЖрдк рджреЛрдиреЛрдВ .env рдФрд░ .env.prod рдЕрдкрдиреА рдЙрддреНрдкрд╛рджрди рд░рдЪрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджреЗрдЦреЗрдВред

рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХрд╣рд╛рдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдЕрднреА Docker Compose рдореЗрдВ рдЖрдкрдХреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ env_file рдлрд╛рдЗрд▓реЗрдВ рдирд╣реАрдВ рд╣реИрдВред рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рддреЛ рдЬреИрд╕реЗ рд╣реА рдЖрдк рдбреЙрдХрд░ рдХрдВрдкреЛрдЬрд╝ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВрдЧреЗ, рдбреЙрдХрдЯрд░ рдХрдВрдкреЛрдЬрд╝ рдХреЛ рдЭрдЯрдХрд╛ рд▓рдЧрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк env_file рд╕рд╛рде рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЕрдВрдд рдореЗрдВ .env рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рд╕реНрдЯреНрд░рд╛рдЗрдк рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИред рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рдХреБрдЫ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрддреА рд╣реИрдВ рдЬреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрддреА рд╣реИрдВ рд▓реЗрдХрд┐рди рд╡рд┐рдХрд╛рд╕ рдФрд░ рдЙрддреНрдкрд╛рджрди рджреЛрдиреЛрдВ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИрдВ (рдпрд╛рдиреА SERVER_NAME рдлреНрд▓рд╛рд╕реНрдХ рдХреЗ рд╕рд╛рде)ред

рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо .env_example рдлрд╝рд╛рдЗрд▓ рдЬреИрд╕реА рдХреБрдЫ рдЪреАрдЬрд╝реЛрдВ рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ рдХрд┐ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рдХрд░ .env , рдФрд░ рдлрд┐рд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рд╣реЛрдЧрд╛ рд╣рдорд╛рд░реЗ рдкреБрд░рд╛рдиреЗ рджреЛрд╕реНрдд COMPOSE_PROJECT_NAME ред

рдЬреЛ рдЕрдм рд╕рд╡рд╛рд▓ рдЙрдард╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдПрдХ рдХрд╕реНрдЯрдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдирд╛ рдХрд┐рд╕реА рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдФрд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдирд╛рдо рд╕рдВрдШрд░реНрд╖реЛрдВ рдореЗрдВ рднрд╛рдЧ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдХреБрдЫ рд░реЛрдб рдореИрдк рдкрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИ?

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ COMPOSE_PROJECT_NAME рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛, рдЬрд╣рд╛рдВ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрдИ рдбреЙрдХ-рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рджреЗрд╡, рдкрд░реАрдХреНрд╖рдг, рд╢рд╛рдпрдж рдЖрдзрд╛рд░, рд╢рд╛рдпрдж рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд╛рдиреАрдп, рдЖрджрд┐) рдЖрдкрдХреЛ рд╕реНрдкрд┐рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЕрдк 2 рдмрд╣реБрдд рдЕрд▓рдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдЬреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВред

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдЕрдкрдиреЗ makefile рдореЗрдВ COMPOSE_PROJECT_NAME рдмрдирд╛рдХрд░ рдЗрд╕ рдбреЙрдХреНрдпреВ-рдХрдВрдкреЛрдЬрд╝ рдХреА рд╕реАрдорд╛ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рдЗрд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рдпрдорд▓ рдХреЗ рд╣реА рднреАрддрд░ рд╕реЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИ? рд╣реЗ рднрдЧрд╡рд╛рди...

рд╕рджрд╕реНрдпрддрд╛ рд▓реАред рдореИрдВ рдпрд╣ рднреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХрдореНрдкреЛрдЬ рдпрд╛рдорд▓ рдлрд╛рдЗрд▓ рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд╕рдХреЗред

рдпрд╣ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рд▓реЗ рд░рд╣рд╛ рд╣реИ

рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛

рдореИрдВ рдЬрд┐рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЙрд╕рдореЗрдВ рдЗрд╕ рдлреАрдЪрд░ рдХрд╛ рдмрд╣реБрдд рд╕реНрд╡рд╛рдЧрдд рд╣реЛрдЧрд╛

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

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

рдореИрдВ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдЙрд╕ рд╕реВрдЪреА рдореЗрдВ рдПрдХ ENV рдЪрд░ рдЬреЛрдбрд╝реВрдВрдЧрд╛ред

рд╕рднреА рдЕрд╕рд╣рдорддрд┐ рдХреА рдПрдХ рдкрд░реНрдпрд╛рдкреНрдд рдЬрдбрд╝ рдпрд╣ рдзрд╛рдЧрд╛ / рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдпрджрд┐ рдпрд╣ рдИрдПрдирд╡реА рдЪрд░ рдореЗрдВ рд╣реИред рд╡реЗ рдЗрд╕реЗ рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдорд╛рдирдХ рд╕рд┐рдлрд╛рд░рд┐рд╢ рдпрд╣ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддреА рд╣реИред)

рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рдпрдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдпрдо рд╡рд┐рд░реЛрдзрд╛рднрд╛рд╕реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдмрдЬрд╛рдп рдИрдПрдирд╡реА рд╣реЛрдиреЗ рд╕реЗред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╣реИ: https://docs.docker.com/compose/extends/ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "рдЙрджрд╛рд╣рд░рдг usecases" рджреЗрдЦреЗрдВ)ред рдпрджрд┐ рдЖрдк рдПрдХрд▓ рдмреЗрд╕ рдпрд╛рдо рдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рджреЗрд╡, рдкрд░реАрдХреНрд╖рдг рдФрд░ рдареЗрд╕ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рднрдЧрд╡рд╛рди рдХреЛ рдкрддрд╛ рд╣реИ рдХрд┐ рдФрд░ рдХреНрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЙрд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рддрд╣рдд рдЪрд▓рд╛рдиреЗ рдпрд╛ ENV / cli рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ N * N рд╕рдВрдпреЛрдЬрди рдмрдирд╛рдПрдЧрд╛ рдЬрдмрдХрд┐ N рдорд╛рдиреНрдп рд╣реИрдВред

рдореИрдВрдиреЗ рдЗрдирдореЗрдВ рд╕реЗ рдХрдИ рдЪрд░реНрдЪрд╛рдУрдВ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ YML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдЪрд╛рд╣рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ TON рджреЗрдЦрд╛ рд╣реИред рд▓реЗрдХрд┐рди 1 рдПрдХрд▓ рдЯрд┐рдкреНрдкрдгреА рдпрд╣ тАЛтАЛрдирд╣реАрдВ рд╕рдордЭрд╛рддреА рд╣реИ рдХрд┐ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпреЗ рдЪрд░реНрдЪрд╛рдПрдБ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдХреА рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдХреЛрдИ рдЖрд╕рд╛рди рдЙрдкрдпреЛрдЧ рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИ рдФрд░ рдпрд╣ рдкрд╛рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ (рдЬреЛ рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдк рдкрд╛рд╕ up рдФрд░ рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд░реЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕рдореВрд╣ рд╢реБрд░реВ рдХрд░реЗрдВ) - рдореИрдВ рд╣реИрд░рд╛рди рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдЦреБрд▓рд╛ рдкреНрд░рд╢реНрди рд╣реИред рдЕрдЧрд░ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдерд╛ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдХреНрдпреЛрдВ рд╣реИ рдпрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рддреЛ рдореБрдЭреЗ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред

рдПрдХ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди container_name рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рд╡реЙрд▓реНрдпреВрдо, рдиреЗрдЯрд╡рд░реНрдХ, рдЬреИрд╕реЗ рдЕрдиреНрдп рдЧрддрд┐рд╢реАрд▓ рдирд╛рдордХрд░рдг ...)

services:
  my_service:
    container_name: {project_name}_{service_name}_{instance_number} # default value

рдРрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде, рдХреЛрдИ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ

services:
  my_service:
    container_name: fixedprojectname_{service_name}_{instance_number}

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ рдПрдХ рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдШрд░реНрд╖ рдХрд░реЗрдЧрд╛ рдЬреЛ рд╕рдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рдХреЗ рднреАрддрд░ 2 рдкреНрд░рддрд┐рд╖реНрдард┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ

@jderusse

рдПрдХ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди container_name рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рд╡реЙрд▓реНрдпреВрдо, рдиреЗрдЯрд╡рд░реНрдХ, рдЬреИрд╕реЗ рдЕрдиреНрдп рдЧрддрд┐рд╢реАрд▓ рдирд╛рдордХрд░рдг ...)

services:
  my_service:
    container_name: {project_name}_{service_name}_{instance_number} # default value

рдРрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде, рдХреЛрдИ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ

services:
  my_service:
    container_name: fixedprojectname_{service_name}_{instance_number}

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ рдПрдХ рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдШрд░реНрд╖ рдХрд░реЗрдЧрд╛ рдЬреЛ рд╕рдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рдХреЗ рднреАрддрд░ 2 рдкреНрд░рддрд┐рд╖реНрдард┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ

рдореИрдВ рдпрд╣ рднреА рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╕рдВрдШрд░реНрд╖ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдореЗрдВ рдЕрднреА рднреА .env рдлрд╝рд╛рдЗрд▓ рдкрд░ рдХреБрдЫ рдЕрджреНрд╡рд┐рддреАрдп рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП COMPOSE_PROJECT_NAME рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЗрд╡рд▓ рдЗрд╕ рдХрд╛рд░рдг рдХреЛ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдиреБрдЪрд░ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЕрдиреБрд░реЛрдз рд╣реИред

рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдореБрдЭреЗ "рдЕрд╕реНрд╡реАрдХреГрдд" рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпреЗ 2 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рд╣реИрдВ:

https://github.com/docker/compose/issues/745#issuecomment -345054893
https://github.com/docker/compose/issues/745#issuecomment -346487757

рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реБрдП рднреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдХреНрдпреЛрдВ рди рдХреЗрд╡рд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ_рдирд╛рдо рдХреЛ рдпрдорд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПред рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдпрд╣ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЙрдирдХреЗ docker-compose.yaml рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдХрдо рд╕рд╛рдорд╛рдиреНрдп рдмрдирд╛рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдмрд╕ рдирд╛рдо рдпрдорд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХреГрдкрдпрд╛ рд╣рдордореЗрдВ рд╕реЗ рдмрд╛рдХреА рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред

рдареАрдХ рд╣реИ, рдореИрдВ рдЕрдиреНрдп рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрдврд╝рдиреЗ рдХреА рдкреВрд░реА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ; рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЫреЛрдЯреЗ рдмреНрд▓рд░реНрдм рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕рдВрджрд░реНрдн рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдВрджрд░реНрдн рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореИрдВ рд╕рд╣реА рдЪреАрдЬ рдкрдврд╝ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╕рд╣реА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореБрдЭреЗ рдЬреЛ рдХреБрдЫ рднреА рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИ рдЙрд╕реЗ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдмрддрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдиреАрдЪреЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдорджрдж рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред

(1) YML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдпреЛрдЧреНрдп рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ YML рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рд╕реЗ рд░реЛрдХреЗрдЧрд╛, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛ред
(2) "рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдФрдЪрд┐рддреНрдп рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреАрдбрд╝рд┐рдд рд╣реЛрдЧреА (рдЗрд╕ рд░реВрдк рдореЗрдВ)"
(3) "рдпрджрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХрдореНрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓ рдореЗрдВ рд╣реИ рддреЛ рдХреЛрдИ рднреА рджреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рд╣реА рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рд░реЛрдз рдкреИрджрд╛ рд╣реЛрдЧрд╛, рдЬреЛ рджреЛрдиреЛрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред"

рдЗрди рдкрд░ рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рддрдХ рд╣рдо рдЙрди рдЪрд┐рдВрддрд╛рдУрдВ рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ, рдЬрд┐рди рдкрд░ рдзреНрдпрд╛рди рджрд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдореИрдВ рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред рдХреНрдпрд╛ рдпрд╣ рдЙрдЪрд┐рдд рд╣реИ?

(4) рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрдд рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдореВрд▓реНрдпреЛрдВ рдХреА рдкреВрд░реНрд╡рддрд╛ / рд╡реНрдпрд╡рд╕реНрдерд╛)

(1) YML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдпреЛрдЧреНрдп рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ YML рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рд╕реЗ рд░реЛрдХреЗрдЧрд╛, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛ред

рдлрд┐рд░ рднреА, рдЖрдзрд╛рд░ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддрд░реАрдХрд╛ рд╣реИ - https://docs.docker.com/compose/extends/ред рдПрдХ рдмреЗрд╕ рдХреЙрдиреНрдлрд┐рдЧ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред

рдореЗрд░реЗ рд▓рд┐рдП рдореИрдВ рдЬрд┐рд╕ рдкреНрд░рд╛рдердорд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд╡рд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ (рджреЗрд╡, рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдЖрджрд┐)ред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рдзрд╛рди рдпрд╣ рд╣реЛ рдХрд┐ рдЖрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдпрд╛ рддреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рддрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдкрде-рдкреНрд░рджрд░реНрд╢рдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдЧрд░ рдореИрдВрдиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ my-project рддрд░рд╣ yaml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдПрдХ рд╣реА рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЪреАрдЬреЛрдВ рдХреЛ рд╕рд░рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдЬрд╣рд╛рдБ рдореИрдВ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдБ рдЬреИрд╕реЗ рдХрд┐ docker рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдореЗрд░реЗ рд╕рднреА docker рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВред

.
тФЬтФАтФА project_a
тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name: my-project)
тФЬтФАтФА project_b
тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name: some-other-project)

рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдорджрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрде рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ

project_name: ../(*) рдПрдХ рд╣реА рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде

.
тФЬтФАтФА project_a
тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name=project_a)
тФЬтФАтФА project_b
тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name=project_b)
тФЬтФАтФА project_b_copy
тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name=project_b_copy)

рдЗрд╕реА рддрд░рд╣ project_name: ../(../*)

.
тФЬтФАтФА dev
тФВ   тФЬтФАтФА project_a
тФВ   тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name=dev_project_a)
тФЬтФАтФА test
тФВ   тФЬтФАтФА project_a
тФВ   тФВ   тФЬтФАтФА docker
тФВ   тФВ   тФВ   тФЬтФАтФА docker-compose.yml (project_name=test_project_a)

рдЯреНрд░реИрд╡рд░реНрд╕рд▓ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рд╢рд╛рдпрдж рдореЗрд░реЗ рдЕрдВрдЧреВрдареЗ рд╕реЗ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЧрд╣рд░рд╛рдИ рд╕реЗ рд╕реЛрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рднреА рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЪреАрд▓рд╛рдкрди рд╣реИред

рдХреЗрд╡рд▓ рдЖрдзрд╛-рдордЬрд╛рдХ: рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореЗрд░реЗ docker-compose.yml рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдирд╛рдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЬреЛ рдирд╛рдо рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЙрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдКрдВрдЧрд╛ рдФрд░ рдлрд┐рд░ project_name: name-of-the-file-named-like-the-name-i-want рд╕реЗрдЯ рдХрд░реВрдВрдЧрд╛?

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ docker-compose рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рднрд╛рд░ рд╣реИред dc-work.yml , dc-server.yml , рдЖрджрд┐, рдХрд┐ рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ, рдЕрд╕рдВрдмрдВрдзрд┐рдд рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред

рдЬрдм рдореИрдВ docker-compose up dc-A.yml рднрд╛рдЧрддрд╛ рд╣реВрдВ, рдФрд░ рдлрд┐рд░ docker-compose up dc-B.yml рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдбреЙрдХрд░ рдиреЗ рдореБрдЭреЗ рдирдВрдЧрд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рдЕрдирд╛рде рд╕реЗрд╡рд╛рдПрдВ рдЪрд▓ рд░рд╣реА рд╣реИрдВ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдБ рдирд╣реАрдВ рд╣реИрдВ, рдпрд╣ рд╢рд╛рдкрд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЗ рдХрд╛рд░рдг рд╣реИ)ред

рдХреНрдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ? рдкреНрд░рддреНрдпреЗрдХ dc-A|B|C|etc.yml рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдиреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛, рдФрд░ рдлрд┐рд░ рдореЗрд░реА рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдЕрдиреБрд░реЗрдЦрдг рдХрд░рдирд╛ рд╕рдордп рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдмрд░реНрдмрд╛рджреА рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рдореБрдЭреЗ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ?

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛? рдпрд╣рд╛рдБ рдкрд░ @ cr7pt0gr4ph7 рджреНрд╡рд╛рд░рд╛ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕реАрдзрд╛ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: https://github.com/docker/compose/issues/745#issuecomment -182296139ред рдЗрд╕реЗ рдХрд╛рдлреА рд╡реЛрдЯ рдорд┐рд▓реЗред рдЪрд░реНрдЪрд╛ рдореЗрдВ рд╣рд░ рдПрдХ рдЪрд┐рдВрддрд╛ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рджреЗрддрд╛ рд╣реИ?

рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рднреА рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдПрдХ .docker рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╕рднреА docker-рд╕рдВрдмрдВрдзрд┐рдд рд╕рд╛рдорд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ .docker рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдореИрдВ рдПрдХ microservices рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХрдИ рдмрд╛рд░ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ ... рд▓реЗрдХрд┐рди рдпрд╣ рдЫреЛрдЯреА рд╕реА рдЪреАрдЬ, рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдорд┐рд▓рддреА рд░рд╣рддреА рд╣реИ -> рдпрд╣ рднреА, PHPStorm рдЖрджрд┐ рдХреЗ рдкрд╛рд╕ -p / - рдкреНрд░реЛрдЬреЗрдХреНрдЯ- dir рддрд░реНрдХ рдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ рдФрд░ рдореИрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП .env рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐, рдореЗрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░реЛ, рд╕рд╣реА рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рдПрдЧрд╛ ...

рдбреЗрд╡рд▓рдкрд░реНрд╕, рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

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

@AyushyaChitransh

рдбреЗрд╡рд▓рдкрд░реНрд╕, рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рд╛рд░рд╛рдВрд╢ рд╣реИ:
https://github.com/docker/compose/issues/745#issuecomment -182296139

рдЦреВрдм рдЪрд░реНрдЪрд╛ рд╣реБрдИ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдФрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдереНрд░реЗрдбреНрд╕ (рдмрд╣реБрд╡рдЪрди) рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдЕрднреА рднреА рд╣реИ: https://github.com/docker/compose/issues/745#issuecomment -248644429

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдЕрднреА рднреА рд╣реИ: # 745 (рдЯрд┐рдкреНрдкрдгреА)

рд╣рд╛рдВ, рдПрдХ рдореМрдЬреВрджрд╛, рд▓реЗрдХрд┐рди рдЦрд░рд╛рдм рд╕рдорд╛рдзрд╛рди рд╣реИред рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╡реЛрдЯ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрдИ рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИред рд▓рд┐рдВрдХ рдХреА рдЧрдИ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдмрд╕ рдЗрди рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рдЙрдард╛рдП рдЧрдП рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реИрдз рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред

Tbh, рдпрд╣ рдПрдХ рдореВрдХ рдмрд┐рдВрджреБ рдХреА рддрд░рд╣ рд╣реИред рд╣рдо рдореЗрдВ рд╕реЗ рдХрдИ docker-compose рдкреНрд░рдХрд╛рд░ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рдЪрд▓реЗ рдЧрдП рд╣реИрдВред рдпрд╣ рдереЛрдбрд╝реА рдХреНрд░рд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдХреНрд▓рд╛рдЙрдб рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИред

@AyushyaChitransh
рд╣рдо рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: https://github.com/docker/compose/issues/745#issuecomment -182296139

  1. рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЖрд░реНрдЧред
  2. рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ (.env рдлрд╝рд╛рдЗрд▓)
  3. рд╕реАрдзреЗ рдХрдореНрдкреЛрдЬ рдлрд╛рдЗрд▓ рдореЗрдВ
  4. рдлрд╝реЛрд▓реНрдбрд░ рдХреА рдЬрдЧрд╣

рдРрд╕рд╛ рдордд рд╕реЛрдЪреЛ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рд╣реИред

рдпрд╣ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрд┐рд╕реА рддрд░рд╣ container_name рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЬреЛ docker-compose.yml рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдк рдореМрдЬреВрджрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред

рдпрджрд┐ рдЖрдкрдХрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдлрд╝реЛрд▓реНрдбрд░-рдкрде рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ project-name рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗред рд╡рд┐рд▓рдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдХрдИ рдХрдореНрдкреЛрдЬ рдлрд╛рдЗрд▓, рдЯреЗрдореНрдкреНрд▓реЗрдЯ, ... - рдЖрдк рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ - рдореМрдЬреВрджрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рд░рд╛рдЗрдЯрд┐рдВрдЧред

рдпрд╣ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ wontfix .. рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП .. (рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ) рдпрд╛ рдПрдХ рдирдпрд╛ MAJOR (!) рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд░реЗрдВ

@ schmunk42

рдпрджрд┐ рдЖрдкрдХрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдлрд╝реЛрд▓реНрдбрд░-рдкрде рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗред рд╡рд┐рд▓рдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдХрдИ рдХрдореНрдкреЛрдЬ рдлрд╛рдЗрд▓, рдЯреЗрдореНрдкреНрд▓реЗрдЯ, ... - рдЖрдк рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ - рдореМрдЬреВрджрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рд░рд╛рдЗрдЯрд┐рдВрдЧред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдХреЗрд╡рд▓ рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд░рдЪрдирд╛ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рдареАрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдХрдВрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓реЗрдВ рдореМрдЬреВрджрд╛ рд╕реНрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВред рдЖрдк рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдбреЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЪреЗрддрд╛рд╡рдиреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рджреВрд╕рд░реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

  1. рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЛ git рд░реЗрдкреЛ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЕрдЧрд▓реЗ рдкреНрд░рддрд┐рдмрджреНрдз рдореЗрдВ рд░реЗрдкреЛ рдорд╛рд▓рд┐рдХ рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдЙрдк рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ? рдпрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдкрд░ рдкреНрд░рднрд╛рд╡ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
  2. рдпрджрд┐ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд╛рдо рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдордиреЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╛ рддреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ (.env рдлрд╝рд╛рдЗрд▓) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдбреЙрдХрд░ рдХрдВрдкреЛрдЬрд╝ рдХрд░реЗрдВ - рдЬреЛ рджреЛрдиреЛрдВ рдХрд┐рд╕реА рднреА рдореВрд▓реНрдп рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВрдЧреЗ рдЬреЛ рдЗрд╕рдореЗрдВ рд╣реБрдЖ рд╣реИ рд░рдЪрдирд╛ рдлрд╝рд╛рдЗрд▓ (рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛)ред

рд╡реЙрдиреНрдЯрд┐рдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдирд╛ рдпрд╣ рдмрддрд╛рдП рдмрд┐рдирд╛ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд isnt рдХреНрдпреЛрдВ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рд╣реИ .. рдпрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рд░реНрдЧ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдореЗрд░реЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ (рдпрд╛ рдореЗрд░реА рдкреВрд░реА рдЯреАрдо рдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ) рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рд░рд╣реЗрдВ рдХрд┐ рд╡реЗ рдЙрд╕ рдлреЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд░рдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╡реЗ рдХреЛрдб рдЪреЗрдХ рдХрд░рддреЗ рд╣реИрдВред

.Env рдлрд╝рд╛рдЗрд▓ рд╕реЙрд▓реНрдпреВрд╢рди рдХреЗ рд╕рд╛рде рдореЗрд░реА рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХрдорд╛рдВрдб рд░рди рдХреЗ рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░ рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП - рдЬрдмрдХрд┐ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдкреИрд░реЗрдВрдЯ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдлрд╛рдЗрд▓ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдпрд╛ рддреЛ (рдП) рд╕рдорд╛рди-рдирд╛рдорд┐рдд рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЛрдб рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ (рдПрдХ рдХреЛрдб рд░реЗрдкреЛ рдХреА рдЬрдбрд╝ рдореЗрдВ рдПрдХ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдорд╛рдирдХрд░) рдпрд╛ (B) рдХреЗрд╡рд▓ docker-compose рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ рд░реЗрдкреЛ рдХреЗ рд░реВрдЯ рдлреЛрд▓реНрдбрд░ рдЕрдиреНрдпрдерд╛ рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рд╕реНрдЯреИрдХ рдпрд╛ (рд╕реА) рдмрдирд╛рддреЗ рд╣реИрдВ рдЙрдирдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдЯреИрдХ рдирд╛рдо рд╣реИрдВ рдФрд░ рд╕рднреА рдкреНрд░рд▓реЗрдЦрди рдФрд░ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ replace stack name here рдХрд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрджрд┐ (C) рд╡рд╣ рдХреНрдпрд╛ рд╣реИ рдЬреЛ рд╕реБрдЭрд╛рдП рдЧрдП 'рдкреЛрд░реНрдЯреЗрдмрд▓' рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрдЭрд╛рддрд╛ рд╣реИ, рддреЛ docker- рд░рдЪрдирд╛ CLI рдХреЛ docker CLI рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдлреАрдЪрд░-рдкреВрд░реНрдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рднреА, рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рджреЗрдЦрддрд╛ рд╣реВрдВред

рдпрджрд┐ рдЖрдкрдХрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдлрд╝реЛрд▓реНрдбрд░-рдкрде рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗред рд╡рд┐рд▓рдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдХрдИ рдХрдореНрдкреЛрдЬ рдлрд╛рдЗрд▓, рдЯреЗрдореНрдкреНрд▓реЗрдЯ, ... - рдЖрдк рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ - рдореМрдЬреВрджрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рд░рд╛рдЗрдЯрд┐рдВрдЧред

рдЕрдЧрд░ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рдирд╛рдо рдХреЛ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ (рдЬреИрд╕реЗ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣рд░ рджреВрд╕рд░реА рдкрдВрдХреНрддрд┐)ред рдЕрдлрд╕реЛрд╕ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдЕрднреА рднреА рдореЗрд░реЗ рдЪреЗрдХ рдЖрдЙрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ (рдЧрд┐рдЯ рдореЗрдВ рдХреЛрдИ рдЯреНрд░реИрдХ рдХрд┐рдП рдЧрдП рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ) рдореБрдЭреЗ рдПрдХ рдЯреВрдЯреА рд╣реБрдИ рдкреНрд░рдгрд╛рд▓реА рднреА рдорд┐рд▓рддреА рд╣реИред

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

@ dc-pm рдиреЗ рд▓рд┐рдЦрд╛: "рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдЕрдм рдбреЙрдХрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдкреЛ рддреИрдирд╛рддреА рдЙрдкрдХрд░рдг рд╣реИ"

рдЕрдм рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд┐рдЦрддрд╛ред рд╡рд╣рд╛рдБ рдХреБрдЫ рд╣реИ рдХрд┐ рдЙрддреНрдкрд╛рджрди рдирд╣реАрдВ рджреЗрдЦреЗрдВрдЧреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд▓рд╛рдн рдирд╣реАрдВ рд╣реИред рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рдкрд╛рд╕ рдХреНрд╡рд░реНрдХреА рд╣реИ, рднреАред рд▓реЗрдХрд┐рди рдпрд╣ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдХреНрд▓рд╛рдЙрдб рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред

рд╕рдЪ рдХрд╣рд╛ рдЬрд╛рдП, рддреЛ рдореЗрд░реЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рд╣реМрд▓ рдореЗрдВ рдХрдВрдЯреЗрдирд░реЛрдВ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рдиреА рднрд░рд╛ рд╣реИред рдореИрдВ рд╕рд┐рд░реНрдл рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓рд╛рддрд╛ рд╣реВрдВ ...

@ dc-pm рдиреЗ рд▓рд┐рдЦрд╛:

рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ 2020 рд╣реИ рдФрд░ рд╣рдордиреЗ рдЕрднреА рднреА рдЗрд╕ рд╡рд┐рд╢рд╛рд▓ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

рдпрд╣ рд╕рд┐рд░реНрдл рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╢реЛрд░реЛрдВ рдХреЗ рдкрд╛рд╕ рдЗрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рдирд┐рд╣рд┐рддрд╛рд░реНрде рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрднрд╡ рдХреА рдЧрд╣рд░рд╛рдИ рдирд╣реАрдВ рд╣реИ, рдпрд╛ рдЕрдкрдиреЗ рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╡рд┐рд╢рд╛рд▓ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реБрдирдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реБрдП рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕реНрдЯреИрдХ рд╡рд╛рд▓реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдпрд╛ рд╢рд╛рдпрдж рдЯреАрдореЛрдВ рдореЗрдВ рднреАред рдЕрдиреНрдпрдерд╛, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, _this рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╡реГрджреНрдзрд┐ рд╣реЛрдЧреА! _

рдХреБрдЫ рджреЛрд╕реНрддрд╛рдирд╛ рдЕрдиреБрд╕реНрдорд╛рд░рдХ ...
рдУрдкрди-рд╕реЛрд░реНрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрдкрдХреЗ "рдХрд░реНрдордЪрд╛рд░реА / рдХреЙрд▓реЗрдЬ" рдирд╣реАрдВ рд╣реИрдВ, рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╡реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдореБрдлреНрдд рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдпрджрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдореБрджреНрджрд╛ рд╣реИ, рддреЛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рд▓реЗрдВ (рдФрд░ рдкреАрдЖрд░ рдХреЛ рдзрдХреНрдХрд╛ рджреЗрдВ)ред

рджреЛрд╖ рджреЗрдирд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

https://github.com/docker/code-of-conduct/blob/master/code-of-conduct-EN.md

рдЬрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реЛрддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдмрджрд▓рд╛рд╡ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдирд╛ рдХрд╛рдлреА рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрддрд╛ рд╣реИ ...

рд╢рдирд┐рд╡рд╛рд░ рдХреЛ, 14 рдорд╛рд░реНрдЪ 2020 рдХреЛ 03:19 рдкрд░, рдПрдВрдЯреЛрдиреА рдЧреНрд░реЗрд╡реЗрд▓реЙрдЯ рд╕реВрдЪрдирд╛рдПрдВ @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

рдХреБрдЫ рджреЛрд╕реНрддрд╛рдирд╛ рдЕрдиреБрд╕реНрдорд╛рд░рдХ ...
рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдУрдкрди-рд╕реЛрд░реНрд╕ рдбреЗрд╡рд▓рдкрд░ рдЖрдкрдХреЗ "рдХрд░реНрдордЪрд╛рд░реА / рдХреЙрд▓реЗрдЬ" рдирд╣реАрдВ рд╣реИрдВ
рд╡реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдореБрдлреНрдд рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдпрджрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рд▓реЗрдВ
рдФрд░ рдПрдХ рдкреАрдЖрд░ рдзрдХреНрдХрд╛ред

рджреЛрд╖ рджреЗрдирд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

https://github.com/docker/code-of-conduct/blob/master/code-of-conduct-EN.md

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/docker/compose/issues/745#issuecomment-598991880 , рдпрд╛
рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд
https://github.com/notifications/unsubscribe-auth/ABAXP2DRD7H4YI7KQ7B2URLRHLLQ5ANCNFSM4AZMCNWA
ред

@agravelot рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ

@agravelot рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдИ рднрдпрд╛рдирдХ рдФрд░ рдкреНрд░рддрд┐рднрд╛рд╢рд╛рд▓реА рд▓реЛрдЧреЛрдВ рдХреЗ рдкреНрд░рддрд┐ рдЕрдирд╛рджрд░ рдХрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдЬреЛ рдпрд╣рд╛рдВ рдпреЛрдЧрджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдкреНрд░рдпрд╛рд╕ рдХреА рдХрдореА рдХреЛ рджреЛрд╖ рджреЗрдирд╛ рднреА рдорджрджрдЧрд╛рд░ рдирд╣реАрдВ рд╣реИред

рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рдорд░реНрдерди рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕реЗ рдмрд╣реБрдд рд▓рдВрдмреЗ рд╕рдордп рд╕реАрдорд╛ рдкрд░ рд╕реНрдкрд╖реНрдЯ рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЕрдирдЧрд┐рдирдд рдЕрд╡рд╕рд░реЛрдВ рдкрд░ рдирд╣реАрдВ рд╕реБрдирд╛ рдЧрдпрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдЖрдЪрд╛рд░ рд╕рдВрд╣рд┐рддрд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЗрд╕ (рдФрд░ рдУрдПрд╕рдПрд╕ рдЖрдорддреМрд░ рдкрд░) рдХрд╛ рдкреВрд░рд╛ рдмрд┐рдВрджреБ рд▓реЛрдЧреЛрдВ рдХреЛ рдХреЛрдб рдХрд╛ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдФрд░ рд╕рднреА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рд╣реИред

рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдИ рдкреБрд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдЬреЛ рдореИрдВ рд▓реЗрдЦрдХ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЦреБрд╢ рд╣реВрдВред

рдЖрдЧреЗ рдФрд░ рдЕрдзрд┐рдХ рд░рдЪрдирд╛рддреНрдордХ рддрд░реАрдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдИ рдкреБрд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдЬреЛ рдореИрдВ рд▓реЗрдЦрдХ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЦреБрд╢ рд╣реВрдВред

рд╣рд╛рдВ, рджреЗрд╡реЛрдВ рдХреЛ рдЙрдирдХреА рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╛ рдЗрд╕реЗ "рдареАрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛" (рд╕рдВрднрд╡рдд: рдмрд╣рд╕ рдХрд░рддреЗ рд╣реБрдП) рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ... рдЗрд╕реЗ рд╕рд╛рд▓реЛрдВ рддрдХ рдЦреБрд▓рд╛ рд░рдЦрдирд╛, рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ, рдпрд╣ рд╕рд┐рд░реНрдл рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХрд╛ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реИ (рд╡реНрдпрд╛рдкрдХ рдЕрд░реНрдереЛрдВ рдореЗрдВ) )ред рдпрд╣ рднреА рдЕрдкрдорд╛рдирдЬрдирдХ рд╣реИ, рдЖрдИрдПрдордУред

рд╣реЗ, рджреЛрд╕реНрддреЛрдВ, рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рд╕рд┐рд░реНрдл рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ 2 рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рд╣реИрдВред рдлрд╛рдЗрд▓реНрд╕ рд╣реИрдВ, рдПрдХ рд╡рд┐рдХрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░реЛрдбрдХреНрд╢рди рдХреЗ рд▓рд┐рдПред рд╡реЗ рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВред рд╡реЗ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕реЗрд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ - рдЬрд┐рд╕реЗ "рдбреЗрдЯрд╛рдмреЗрд╕" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЗрди рджреЛрдиреЛрдВ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдореИрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрд╣ рд╣рдо рдЬрд┐рд╕ рдХрдВрдЯреЗрдирд░реАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореИрдВ рдЙрддрдирд╛ рд╣реА рд╕реНрдХреЗрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬрд┐рддрдирд╛ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдирдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ "рдХрдВрдЯреЗрдирд░_рдирд╛рдо" рдореВрд▓реНрдп рд╣реИрдВред

рддреЛ рдореИрдВ рдЪрд▓рд╛:

macbook@fuck-fuck autocat-server % docker-compose -f ./compose-dev.yml up -d database
Creating network "autocat-server_autocat-dev" with the default driver
Creating database-dev ... done
macbook@fuck-fuck autocat-server % docker-compose -f ./compose-prod.yml up -d database
Creating network "autocat-server_autocat-prod" with the default driver
Recreating database-dev ... done

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ "рдбреЗрдЯрд╛рдмреЗрд╕-рджреЗрд╡ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдирд╛" рдХреИрд╕реЗ рдХрд╣рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдореИрдВ "рдареЗрд╕" рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╕реЗрд╡рд╛ рдХрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрджрд╛ рдХрдВрдЯреЗрдирд░ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИред рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХрдВрдЯреЗрдирд░ рдХреЛ рдмрд╛рдж рдХреЗ рд╕рд╛рде рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рдзрд╛рд░рдгрд╛ рдкрд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЕрд▓рдЧ-рдЕрд▓рдЧ "docker-compose.yml" рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдорддрд▓рдм рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдореЗрдВ рдХреЛрдИ рдЪреАрдЬ рдирд╣реАрдВ рд╣реИред рдЬрд┐рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕реЗрд╡рд╛ рдорд┐рд▓рддреА рд╣реИ рд╡рд╣ "docker-compose.yml" рдХреЗ рд╕реНрдерд╛рди рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИред рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдЕрд▓рдЧ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдЕрдВрдд рдореЗрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

macbook@fuck-fuck autocat-server % COMPOSE_PROJECT_NAME=autocat-prod docker-compose -f ./compose-prod.yml up -d database
Creating network "autocat-prod_autocat-prod" with the default driver
Creating database-prod ... done
macbook@fuck-fuck autocat-server % COMPOSE_PROJECT_NAME=autocat-dev docker-compose -f ./compose-dev.yml up -d database
Creating network "autocat-dev_autocat-dev" with the default driver
Creating database-dev ... done

рдПрдХрд▓-рдЖрджреЗрд╢ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдЗрддрдирд╛, рдХреНрдпрд╛ рдПрдХ рдирд┐рд░рдкреЗрдХреНрд╖ рдордЬрд╛рдХред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, .yml рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рд╣реИред

рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдПрдХ рдПрдХрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд░рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ - рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рджреЗрдХрд░: "рдбреЗрдЯрд╛рдмреЗрд╕-рджреЗрд╡" рдФрд░ "рдбреЗрдЯрд╛рдмреЗрд╕-рдкреНрд░реЛрдбрдХреНрдЯ"ред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рдПрдХрдорд╛рддреНрд░ рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреВрд░реНрд╡ рдореЗрдВ рддрддреНрдХрд╛рд▓ рд╕реЗрд╡рд╛ рдХреЗ рдЕрдирд╛рде рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдиреНрдп docker-compose.yml рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдирд╣реАрдВ рд╣реИред

macbook@fuck-fuck autocat-server % docker-compose -f ./compose-prod.yml up -d database-prod                
Creating network "autocat-server_autocat-prod" with the default driver
Creating database-prod ... done
macbook@fuck-fuck autocat-server % docker-compose -f ./compose-dev.yml up -d database    
WARNING: Found orphan containers (database-prod) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Creating database-dev ... done

рдЗрд╕рд╕реЗ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдХрд┐ tbh, рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ?

EDIT1: @ рдбреАрд╕реА-рдмрдЬреЗ @CharlieReitzel рд▓рдЧрддрд╛ whatchu? рдЕрдЧрд░ рдпрд╣ рдЕрдорд╛рдиреНрдп рд╣реИ рддреЛ рдХреНрдпрд╛ рдЖрдк рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЛрдИ рдЯрд┐рдкреНрдкрдгреА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, :)
EDIT2: рдореИрдВрдиреЗ рджреЛрдиреЛрдВ рдХрдВрдкреЛрдЬрд┐рдЯ рдлрд╛рдЗрд▓ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдФрд░ рд╡реЙрдпрд▓рд╛ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рд╣реИ

sooo?

рд░рдЦрд╡рд╛рд▓реЗ, рдпрд╣рд╛рдБ рдХреЛрдИ рднреА?
6 рд╕рд╛рд▓ рдХреЗ рджреМрд░рд╛рди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрдВрддрдЬрд╛рд░!

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

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

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

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

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

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

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

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