рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдбреЙрдХрд░ + рд▓рд╛рд░рд╡реЗрд▓ =? рдореИрдВ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд┐рдЯ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рд╢реБрд░реБрдЖрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред рдпрд╣ рдПрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдЕрд▓рдЧ рд╣реЛрд╕реНрдЯ рдкрд░ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ рдкреИрдХ рд╕рдВрдмрдВрдзрд┐рдд рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдЕрдЬрдЧрд░ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕реЗ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
- рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рджреНрд╡рд╛рд░рд╛
- рдЕрдЬрдЧрд░ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ (
pip install docker-compose
)
рдкрд╣рд▓реА рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдо рддреМрд░ рдкрд░ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣реИред рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдпрджрд┐ рдЖрдкрдХреЛ docker рдбреЗрдорди рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ docker-compose.yaml рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд░реВрдк рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдкреНрд░рд╛рд░реВрдк рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдФрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ docker рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ docker-compose рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВ)ред
рдЕрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЬрд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ , рдПрдХ рдЧрд▓рддреА рд╣реБрдИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬрдЧрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд╕рд╛рде рдкреИрдХ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдПрдХ рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛, рдЬреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдирд┐рдореНрди рддрд░реАрдХреЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдпрд╣ рд╡рд░реНрддрдорд╛рди рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╡рд┐рдзрд┐ рд╣реИ):
рд╣рдо https://github.com/docker/compose/releases рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рдЕрдзрд┐рдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ
$ sudo chmod +x /usr/local/bin/docker-compose
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдХрдорд╛рдВрдб рджреБрднрд╛рд╖рд┐рдпреЛрдВ рдХреЛ рдмрд╛рд╢ рдФрд░ zsh рдХреЗ рд▓рд┐рдП рдСрдЯреЛ-рдкреВрд░рд╛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╕реНрдерд╛рдкрдирд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
$ docker-compose --version docker-compose version 1.22.0, build 1719ceb
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдПрдХ рдПрдХрд▓ рдмрд╛рдЗрдирд░реА рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдЕрдЬрдЧрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рд╣рд╛рдВ, рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ - рд╢рд╛рдпрдж рд╣рдорд╛рд░рд╛ рдЕрдЬрдЧрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рдХреНрд╖реНрдп рдорд╢реАрди рдкрд░ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ !!!

рдЕрдЬрдЧрд░ рдХреЗ рдорд╛рд╣реМрд▓ рдореЗрдВ рднреНрд░рдо рдХреА рд╕реНрдерд┐рддрд┐
рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдПрдХ рдЪреМрдерд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдпрд╣ рдбреЙрдХрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдЪрд▓рд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рдбреЙрдХрд░ рд╣рдм ( https://hub.docker.com/r/docker/compose/ ) рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЪрд┐рддреНрд░ рдПрдХрддреНрд░ рд╣реИрдВред рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ?
- рдпрджрд┐ рд╣рдо рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреЙрдХ-рдХрдореНрдкреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдорддреМрд░ рдкрд░ рдЕрдВрддрд┐рдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ)
- рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдЬрдЧрд░ рдирд╣реАрдВ рд╣реИ рдпрд╛ рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрд░реЛрд╕ рдХрдВрдЯреЗрдирд░ рд▓рд┐рдирдХреНрд╕ рдХрд╛ рдПрдХ рд╣рд▓реНрдХрд╛ рд╡рд┐рддрд░рдг рд╣реИ)
- CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧред
рдЪрд▓реЛ рдХреЛрд╢рд┐рд╢ рдХрд░реЛ!
рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ рдЖрдорддреМрд░ рдкрд░ рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛:
$ docker-compose up -d
рдПрдХ рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдкреИрдХ рдХреА рдЧрдИ рдПрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛:
$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v "$PWD:/rootfs/$PWD" -w="/rootfs/$PWD" docker/compose:1.13.0 up -d
рдмрд╣реБрдд рдХреНрд░рд┐рдпрд╛, рд╣реБрд╣? рдЗрди рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдпрд╛рдж рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╕реНрддрд┐рд╖реНрдХ рдХреЛ рддреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЕрдкрдиреЗ рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдФрд░ рд╢реЗрд▓ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рдЖрд╡рд░рдг рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ, рдЖрдЗрдП рдкрд╛рд░рд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ:
--rm
- рд░реБрдХрдиреЗ рдХреЗ рдмрд╛рдж рдЕрд╕реНрдерд╛рдпреА рдХрдВрдЯреЗрдирд░ рдХреЛ рд╣рдЯрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрдЪрд░рд╛ рдирд╣реАрдВ рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ-v /var/run/docker.sock:/var/run/docker.sock
- рдЗрд╕рдХреЗ рдмрд┐рдирд╛, -v /var/run/docker.sock:/var/run/docker.sock
рдбреЗрдорди рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛-v "$PWD:/rootfs/$PWD" -w="/rootfs/$PWD"
- рдЖрдкрдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдбреЙрдХрдЯрд░-рдХрдВрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЛ рджреЗрдЦ рд╕рдХреЗ
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреА рдХрдореА рд╣реИред рдпрд╣ рд╡рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдПрдХ YAML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЯреБрдХрдбрд╝реЗ рдореЗрдВ
version: "2.1" services: pg: image: postgres:9.6 environment: POSTGRES_USER: ${POSTGRES_DB_USER} POSTGRES_PASSWORD: ${POSTGRES_DB_PASSWORD}
рдЪрд░ POSTGRES_DB_USER
рдФрд░ POSTGRES_DB_PASSWORD
рдкрд░реНрдпрд╛рд╡рд░рдг рд╕реЗ рдкрдврд╝реЗ рдЬрд╛рдПрдВрдЧреЗред рдпрд╣ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдбрд┐рдЧреНрд░реА рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд┐рдЯ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╛рдиреА рд╣рдореЗрдВ рдореЗрдЬрдмрд╛рди рдорд╢реАрди рд╕реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ рдкрдХрдбрд╝рдиреЗ рдФрд░ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрдЗрдП рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдХрд░ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВред
#!/bin/sh # TMPFILE=$(mktemp) # env > "${TMPFILE}" # VERSION="1.13.0" # docker-compose docker run \ --rm \ -e PWD="$PWD" \ --env-file "${TMPFILE}" \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$PWD:/rootfs/$PWD" \ -w="/rootfs/$PWD" \ docker/compose:"${VERSION}" \ "$@" # rm "{$TMPFILE}"
рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдЗрдиреЗрдВ рджрд┐рдЦрд╛рдИ рджреАрдВ:
-e PWD="$PWD"
- рдмрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдПрдВ--env-file "${TMPFILE}"
- рдпрд╣рд╛рдВ рдЕрдиреНрдп рд╕рднреА рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдореЗрдЬрдмрд╛рди рдорд╢реАрди рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВdocker/compose:"${VERSION}"
- рдЫрд╡рд┐ рдХрд╛ рдирд╛рдо, рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕реЗ рд▓реЗрдВ"$@"
- рдпрд╣ рдирд┐рд░реНрдорд╛рдг рдЖрдкрдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд┐рдЯ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдк рд╕реЗ рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдЕрдкрдиреА рджрд▓реАрд▓реЗрдВ рджреЗрддрд╛ рд╣реИред
рд╣рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, /usr/local/bin/docker-compose
, рдЙрд╕ рдкрд░ eXecute рдзреНрд╡рдЬ рд╕реЗрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЙрдкрд░реЛрдХреНрдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдпрд╛ рдХрдорд┐рдпреЛрдВ рд╕реЗ 100% рдореБрдХреНрдд рд╣реЛрдиреЗ рдХрд╛ рджрд┐рдЦрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдФрд░ рдпрд╣ рдкрджреНрдзрддрд┐ рдХрд╛ рдЪрд┐рддреНрд░рдг рд╣реИред
рд╣рдо рд╕реНрд╡рдпрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рднреА рдХреБрдЫ рд╣рдж рддрдХ рдХреБрдЫ рдпрд╛рддрд╛рдпрд╛рдд рдмрдЪрд╛рддрд╛ рд╣реИред рдбреЙрдХ рдЯрд╛рд░рдЧреЗрдЯ рдХреА рдЫрд╡рд┐ рд╕реНрдерд╛рдиреАрдп рдХреИрд╢ рд╕реЗ рд▓реА рдЧрдИ рд╣реИред