S01L02 – рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдбреЙрдХрд░ рдФрд░ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓

html

Windows рдкрд░ WSL2 рдХреЗ рд╕рд╛рде Docker рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рдорд╣рд╛рд░рдд: рдЪрд░рдг-рджрд░-рдЪрд░рдг рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛

рд╕рд╛рдордЧреНрд░реА рд╕реВрдЪреА

  1. рдкрд░рд┐рдЪрдп ...................................................... 1
  2. Docker рдХреЛ рд╕рдордЭрдирд╛ ............................. 3
  3. Docker рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ .................................. 5
  4. Windows рдкрд░ Docker рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ ........... 7
  5. WSL2 рдХрд╛ рдкрд░рд┐рдЪрдп ............................. 10
  6. Windows рдкрд░ WSL2 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ ............. 12
  7. Ubuntu рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╕реЗрдЯ рдХрд░рдирд╛ ........... 15
  8. Docker рдХреЛ Visual Studio Code рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд░рдирд╛ ........................................................... 18
  9. рдирд┐рд╖реНрдХрд░реНрд╖ ..................................................... 21

рдкрд░рд┐рдЪрдп

рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ "Windows рдкрд░ WSL2 рдХреЗ рд╕рд╛рде Docker рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рдорд╣рд╛рд░рдд: рдЪрд░рдг-рджрд░-рдЪрд░рдг рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ред" рдЖрдЬ рдХреЗ рддреЗрдЬреА рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣реЗ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ, Docker рдХрдВрдЯреЗрдирд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЙрднрд░рд╛ рд╣реИ, рдЬреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдореЗрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд░реБрдХрд╛рд╡рдЯ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ, рддреИрдирд╛рдд рдХрд░рдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рд╢реБрд░реБрдЖрддреА рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рдЬреНрдЮрд╛рди рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╛рдкрдХ рд╡реЙрдХрдереНрд░реВ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд░рдЦрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ Windows рдкрд░ Windows Subsystem for Linux 2 (WSL2) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Docker рд╕реЗрдЯрдЕрдк рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред

Docker рдХрд╛ рдорд╣рддреНрд╡

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

Docker рдХреЗ рд▓рд╛рдн рдФрд░ рд╣рд╛рдирд┐рдпрд╛рдБ

рд▓рд╛рдн рд╣рд╛рдирд┐рдпрд╛рдБ
рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдореЗрдВ рд╕рдВрдЧрдд рдкрд░рд┐рд╡реЗрд╢ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реАрдЦрдиреЗ рдХреА рд╡рдХреНрд░
рд╕рдХреНрд╖рдо рд╕рдВрд╕рд╛рдзрди рдЙрдкрдпреЛрдЧ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдЪрд┐рдВрддрд╛рдПрдБ
рд╕рд░рд▓реАрдХреГрдд рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрди рдореМрдЬреВрджрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ
рдмрдврд╝реА рд╣реБрдИ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдФрд░ рд▓рдЪреАрд▓рд╛рдкрди рдХреБрдЫ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдУрд╡рд░рд╣реЗрдб

Docker рдХрдм рдФрд░ рдХрд╣рд╛рдБ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

Docker рдЖрджрд░реНрд╢ рд╣реИ:

  • рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рд╡реЗрд╢: рд╕реЗрдЯрдЕрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдирд╛ред
  • рд╕рддрдд рдПрдХреАрдХрд░рдг/рд╕рддрдд рдкрд░рд┐рдирд┐рдпреЛрдЬрди (CI/CD): рдкрд░реАрдХреНрд╖рдг рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ред
  • рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕реЗрдЬ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░: рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдХреБрд╢рд▓ рдкреНрд░рдмрдВрдзрдиред
  • рдХреНрд▓рд╛рдЙрдб рдкрд░рд┐рдирд┐рдпреЛрдЬрди: рд╡рд┐рднрд┐рдиреНрди рдХреНрд▓рд╛рдЙрдб рдкреНрд░рджрд╛рддрд╛рдУрдВ рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ред

Docker рдХреЛ рд╕рдордЭрдирд╛

Docker рдХреНрдпрд╛ рд╣реИ?

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

рдореБрдЦреНрдп рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ рдФрд░ рд╢рдмреНрджрд╛рд╡рд▓реА

  • Container: рдПрдХ рд╣рд▓реНрдХрд╛, рд╕реНрд╡рддрдиреНрддреНрд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдкреИрдХреЗрдЬ рдЬрд┐рд╕рдореЗрдВ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдм рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред
  • Image: рдПрдХ рд░реАрдб-рдУрдирд▓реА рдЯреЗрдореНрдкрд▓реЗрдЯ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрдореЗрдЬреЗрдВ рдХрдИ рдкрд░рддреЛрдВ рд╕реЗ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИрдВред
  • Dockerfile: рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрд┐рд╕рдореЗрдВ Docker рдЗрдореЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИред
  • Docker Hub: рдПрдХ рдХреНрд▓рд╛рдЙрдб-рдЖрдзрд╛рд░рд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬрд╣рд╛рдБ Docker рдЗрдореЗрдЬ рд╕рдВрдЧреНрд░рд╣реАрдд рдФрд░ рд╕рд╛рдЭрд╛ рдХреА рдЬрд╛рддреА рд╣реИрдВред

Docker рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛

Docker рдбрд╛рдЙрдирд▓реЛрдбреНрд╕ рддрдХ рдкрд╣реБрдБрдЪ

Docker рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ Docker рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдЕрдкрдиреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдкрдпреБрдХреНрдд рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред

рд╡рд┐рднрд┐рдиреНрди рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП Docker рд╕рдВрд╕реНрдХрд░рдг

  • Windows рдФрд░ Mac: рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрдХреВрд▓ рдЗрдВрд╕реНрдЯреЙрд▓рд░ред
    • Mac рд╕рдВрд╕реНрдХрд░рдг: Intel рдЪрд┐рдкреНрд╕ рдФрд░ Apple Silicon рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдзред
  • Linux: рд╡рд┐рддрд░рдг-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд╛рдкрдирд╛ рд╡рд┐рдзрд┐рдпрд╛рдБ, рдореБрдЦреНрдпрддрдГ рдЯрд░реНрдорд┐рдирд▓ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдбрд╛рдЙрдирд▓реЛрдб рд▓рд┐рдВрдХ рд╕реНрдерд╛рдкрдирд╛ рд╡рд┐рдзрд┐
Windows Docker for Windows рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп
Mac (Intel) Docker for Mac Intel рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп
Mac (Apple Silicon) Docker for Mac Apple Chip рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп
Linux рд╡рд┐рддрд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ рднрд┐рдиреНрди (Ubuntu, Fedora, рдЖрджрд┐) рдЯрд░реНрдорд┐рдирд▓ рдХрдорд╛рдВрдб

Windows рдкрд░ Docker рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдкреВрд░реНрд╡-рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ

Windows рдкрд░ Docker рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рдкреВрд░реА рд╣реИрдВ:

  • рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо: Windows 10 64-рдмрд┐рдЯ: Pro, Enterprise, рдпрд╛ Education (Build 1903 рдпрд╛ рдмрд╛рдж рдХрд╛)ред
  • рд╣рд╛рд░реНрдбрд╡реЗрдпрд░:
    • рдХрдо рд╕реЗ рдХрдо 4GB RAMред
    • BIOS рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдЪрд░рдг

  1. Docker рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ:
    Docker Desktop for Windows рдкреЗрдЬ рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред
  2. рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдЪрд▓рд╛рдПрдБ:
    рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП Docker Desktop Installer.exe рдлрд╝рд╛рдЗрд▓ рдХреЛ рдвреВрдВрдвреЗрдВ рдФрд░ рдЙрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВред
  3. рд╕реЗрдЯрдЕрдк рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ:
    • рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЕрдиреБрдмрдВрдз рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред
    • рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рд╕реНрдерд╛рдкрдирд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреЗрдВред
    • рдЗрдВрд╕реНрдЯреЙрд▓рд░ Docker рдФрд░ WSL2 рдШрдЯрдХреЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдЧрд╛ред
  4. Docker Desktop рд╢реБрд░реВ рдХрд░реЗрдВ:
    рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, Docker Desktop рдЕрдкрдиреЗ рдЖрдк рд▓реЙрдиреНрдЪ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЕрдЧрд░ рдпрд╣ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓реА рд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдиреВ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  5. рд╕реНрдерд╛рдкрдирд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ:
    PowerShell рдЦреЛрд▓реЗрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрдЙрдЯрдкреБрдЯ:


WSL2 рдХрд╛ рдкрд░рд┐рдЪрдп

WSL2 рдХреНрдпрд╛ рд╣реИ?

Windows Subsystem for Linux 2 (WSL2) WSL1 рдХрд╛ рдЙрдиреНрдирдпрди рд╣реИ, рдЬреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдФрд░ рдкреВрд░реНрдг рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рд╕рдВрдЧрддрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ Windows рдкрд░ Linux рдмрд╛рдЗрдирд░реАрдЬ рдХреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ Windows рдФрд░ Linux рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдХреЗ рдмреАрдЪ рдХреА рдЦрд╛рдИ рдХреЛ рдкрд╛рдЯрддрд╛ рд╣реИред

Docker рдХреЗ рд╕рд╛рде WSL2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдн

  • рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди: рддреЗрдЬ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрдЪрд╛рд▓рди рдФрд░ рд╕реБрдзрд░реА рд╣реБрдИ рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдмрдВрдзрдиред
  • рдкреВрд░реНрдг Linux рдХрд░реНрдиреЗрд▓: рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдердиред
  • рд╕рд╣рдЬ рдПрдХреАрдХрд░рдг: Windows рдФрд░ Linux рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдХреЗ рдмреАрдЪ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ред

Windows рдкрд░ WSL2 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдЪрд░рдг-рджрд░-рдЪрд░рдг рд╕реНрдерд╛рдкрдирд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛

  1. Administrator рдХреЗ рд░реВрдк рдореЗрдВ PowerShell рдЦреЛрд▓реЗрдВ:
    рд╕реНрдЯрд╛рд░реНрдЯ рдмрдЯрди рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ "Windows PowerShell (Admin)" рдЪреБрдиреЗрдВред
  2. WSL рд╕рдХреНрд╖рдо рдХрд░реЗрдВ:

  1. рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдлреАрдЪрд░ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ:

  1. рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ:
    рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдо рд░реАрдмреВрдЯ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
  2. WSL2 рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ:
    рдкреБрдирд░рд╛рд░рдВрдн рдХреЗ рдмрд╛рдж, PowerShell рдЦреЛрд▓реЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдБ:

  1. Linux рдХрд░реНрдиреЗрд▓ рдЕрдкрдбреЗрдЯ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
    WSL2 Linux рдХрд░реНрдиреЗрд▓ рдЕрдкрдбреЗрдЯ рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред

WSL2 рд╕реНрдерд╛рдкрдирд╛ рдХреА рд╕рддреНрдпрд╛рдкрдирд╛

PowerShell рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрдЙрдЯрдкреБрдЯ:


Ubuntu рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╕реЗрдЯ рдХрд░рдирд╛

Microsoft Store рд╕реЗ Ubuntu рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

  1. Microsoft Store рдЦреЛрд▓реЗрдВ:
    рд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдиреВ рдореЗрдВ "Microsoft Store" рдЦреЛрдЬреЗрдВ рдФрд░ рдЙрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред
  2. Ubuntu рдЦреЛрдЬреЗрдВ:
    рдЦреЛрдЬ рдмрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Ubuntu рд╡рд┐рддрд░рдг рдЦреЛрдЬреЗрдВред
  3. Ubuntu рдЪреБрдиреЗрдВ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
    рд╡рд╛рдВрдЫрд┐рдд Ubuntu рд╕рдВрд╕реНрдХрд░рдг (рдЬреИрд╕реЗ, Ubuntu 22.04) рдЪреБрдиреЗрдВ рдФрд░ "Install" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
  4. Ubuntu рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд░рдирд╛:
    рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдиреВ рд╕реЗ Ubuntu рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред рдЖрдкрдХреЛ рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЦрд╛рддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред

Docker рдХреЗ рд▓рд┐рдП Ubuntu рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛

рдПрдХ рдмрд╛рд░ Ubuntu рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЗрд╕реЗ Docker рдХреЗ рд╕рд╛рде рд╕рд╣рдЬрддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  1. Ubuntu рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ:
    рд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдиреВ рд╕реЗ Ubuntu рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред
  2. рдкреИрдХреЗрдЬ рд╕реВрдЪрд┐рдпрд╛рдБ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ:

  1. Ubuntu рдХреЗ рдЕрдВрджрд░ Docker рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (рд╡реИрдХрд▓реНрдкрд┐рдХ):
    рдЬрдмрдХрд┐ Docker Desktop WSL2 рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рд╣реИ, рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рдкрд░ рдЖрдк Ubuntu рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдВрджрд░ рд╕реАрдзреЗ Docker рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Docker рдХреЛ Visual Studio Code рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд░рдирд╛

Docker рдХреЗ рд▓рд┐рдП Visual Studio Code рд╕реЗрдЯ рдХрд░рдирд╛

  1. Visual Studio Code рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
    Visual Studio Code рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред
  2. Docker рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
    • Visual Studio Code рдЦреЛрд▓реЗрдВред
    • рдПрдХреНрд╕рдЯреЗрдВрд╢рдиреНрд╕ рд╡реНрдпреВ (Ctrl+Shift+X) рдкрд░ рдЬрд╛рдПрдБред
    • "Docker" рдЦреЛрдЬреЗрдВ рдФрд░ Microsoft рджреНрд╡рд╛рд░рд╛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ Docker рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред

VS Code рдореЗрдВ WSL2 рдХреЗ рд╕рд╛рде Docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

  1. VS Code рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрд▓реЗрдВ:
    File > Open Folder рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдЦреЛрд▓реЗрдВред
  2. рдЯрд░реНрдорд┐рдирд▓ рддрдХ рдкрд╣реБрдБрдЪ:
    • рдПрдХреАрдХреГрдд рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП Ctrl+Shift+ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
    • рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ PowerShell рдЦреЛрд▓рддрд╛ рд╣реИред “Ubuntu 22.04 WSL” рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреНрд░реЙрдкрдбрд╛рдЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
  3. Docker рдХрдорд╛рдВрдб рдЪрд▓рд╛рдирд╛:

рдирдореВрдирд╛ рдЖрдЙрдЯрдкреБрдЯ:

рдирдореВрдирд╛ Dockerfile рдФрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛

Docker рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ Dockerfile рдмрдирд╛рдПрдБред

рд╡реНрдпрд╛рдЦреНрдпрд╛:

  1. FROM python:3.8-slim:
    рдмреЗрд╕ рдЗрдореЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ Python 3.8 рдХреЗ рд╕рд╛рде рдПрдХ рдкрддрд▓реА рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
  2. WORKDIR /app:
    рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдХрд╛рд░реНрдпрд╢реАрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ /app рдкрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
  3. COPY . /app:
    рд╡рд░реНрддрдорд╛рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреА /app рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИред
  4. RUN pip install –no-cache-dir -r requirements.txt:
    requirements.txt рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз Python рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред
  5. EXPOSE 80:
    рдкреЛрд░реНрдЯ 80 рдХреЛ рдЗрд╕ рдХрдВрдЯреЗрдирд░ рд╕реЗ рдмрд╛рд╣рд░реА рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рддрд╛ рд╣реИред
  6. ENV NAME World:
    рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдгреАрдп рдЪрд░ NAME рдХреЛ рдореВрд▓реНрдп World рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
  7. CMD [“python”, “app.py”]:
    рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ Python рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред

Docker рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдирд╛

  1. Docker рдЗрдореЗрдЬ рдмрдирд╛рдПрдВ:

  1. Docker рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдПрдВ:

рдЖрдЙрдЯрдкреБрдЯ рд╡реНрдпрд╛рдЦреНрдпрд╛:
рдЕрдиреБрдкреНрд░рдпреЛрдЧ http://localhost:4000/ рдкрд░ рд╕реБрд▓рдн рд╣реЛрдЧрд╛, рдЬреЛ app.py рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд Python рдРрдк рдХреЛ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИред


рдирд┐рд╖реНрдХрд░реНрд╖

рдЗрд╕ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдореЗрдВ, рд╣рдордиреЗ Windows рд╕рд┐рд╕реНрдЯрдо рдкрд░ WSL2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Docker рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛рдУрдВ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд┐рдпрд╛ рд╣реИред Docker рдХреЛ WSL2 рдФрд░ Visual Studio Code рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд░рдХреЗ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдПрдХ рд╕рд╣рдЬ рдФрд░ рдХреБрд╢рд▓ рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рд╡реЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ Windows рдФрд░ Linux рджреЛрдиреЛрдВ рдХреА рддрд╛рдХрддреЛрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИред рдЪрд╛рд╣реЗ рдЖрдк рдПрдХ рд╢реБрд░реБрдЖрддреА рд╣реЛрдВ рдпрд╛ рдЕрдиреБрднрд╡реА рдбреЗрд╡рд▓рдкрд░, Docker рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЖрдкрдХреЗ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрджрдо рд╣реИред

SEO рдХреАрд╡рд░реНрдбреНрд╕

Windows рдкрд░ Docker рд╕реНрдерд╛рдкрдирд╛, WSL2 рд╕реЗрдЯрдЕрдк, Docker Desktop, Windows рдкрд░ Ubuntu, Visual Studio Code Docker рдПрдХреАрдХрд░рдг, Docker рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП, Docker рдХреЗ рд╕рд╛рде рдХрдВрдЯреЗрдирд░реАрдХрд░рдг, Docker рдФрд░ WSL2 рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓, Windows 10 рдкрд░ Docker рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ, Docker рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг, Docker рдФрд░ Linux рдПрдХреАрдХрд░рдг, WSL2 рд▓рд╛рдн, Docker рд╕реЗрдЯрдЕрдк рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛, Windows рдХреЗ рд▓рд┐рдП Docker рдХрдорд╛рдВрдбреНрд╕, Docker рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рд╡реЗрд╢

рдиреЛрдЯ: рдпрд╣ рд▓реЗрдЦ AI рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред






`

Share your love