рдореБрдЦреНрдп рд╕рд╛рдордЧреНрд░реА рдкрд░ рдЬрд╛рдПрдБ

рдХрд╕реНрдЯрдо NGINX Docker рдЗрдореЗрдЬ рдХреИрд╕реЗ рдмрдирд╛рдПрдБ

рдЬрд╛рдиреЗрдВ рдХрд┐ Docker рдореЗрдВ NGINX рдХреЛ рдХреИрд╕реЗ рд╕реЗрдЯ рдЕрдк, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝ рдХрд░реЗрдВред рдЗрд╕ рдЧрд╛рдЗрдб рдореЗрдВ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдирд╛, рдХрд╕реНрдЯрдо рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░рдирд╛, рдЗрдореЗрдЬ рдмрдирд╛рдирд╛, рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рд╕реЗрдЯ рдХрд░рдирд╛, рдФрд░ рдХреБрд╢рд▓ рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП Docker Compose рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИред
┬╖ 10 рдорд┐ре░ рдкрдврд╝реЗрдВ

AI рдХреЗ рд╕рд╛рде рдЦреЛрдЬреЗрдВ

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

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

рдпрджрд┐ рдЖрдк Docker рдореЗрдВ рдирдП рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реА Docker for Beginners рдЧрд╛рдЗрдб рдЬрд╝рд░реВрд░ рджреЗрдЦреЗрдВ рдФрд░ рд╕рднреА рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЗрдВ рд╕реАрдЦреЗрдВред┬а

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

Docker NGINX рдХрд╛ рдЕрд░реНрде рд╣реИ NGINX рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд╣рд▓реНрдХреЗ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдЪрд▓рд╛рдирд╛ред Docker рдХрдВрдЯреЗрдирд░ рдЫреЛрдЯреЗ рдкреИрдХреЗрдЬ рдЬреИрд╕реЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдЙрд╕рдХреА рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╕рд╛рде рд░рдЦрддреЗ рд╣реИрдВред┬а

NGINX рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╣реИ, рдЬреЛ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди, рдЖрд╕рд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ HTTP рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреА рд▓рдЪреАрд▓реА рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред NGINX рдФрд░ Docker рдХреЛ рд╕рд╛рде рд▓рд╛рдирд╛ рдЖрдХрд░реНрд╖рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рд╕реНрдерд┐рд░ рд░рдЦрддрд╛ рд╣реИред рдЪрд╛рд╣реЗ рдЖрдк macOS, Windows, рдпрд╛ Linux рдкрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реЗрдВ, рдХрдВрдЯреЗрдирд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдПрдХ рдЬреИрд╕реА рд░рд╣рддреА рд╣реИред рдпрд╛рдиреА рдпрд╣ рд╣реЛрд╕реНрдЯ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдмрд╛рд╡рдЬреВрдж рдПрдХ рдЬреИрд╕рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред

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

Docker NGINX рдХреЗ рдШрдЯрдХ

рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрдВрдЯреЗрдирд░рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ How to Containerize an Application Using Docker рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рджреЗрдЦреЗрдВред рдпрд╣ рд╢реБрд░реБрдЖрддреА-рдЕрдиреБрдХреВрд▓ рддрд░реАрдХреЗ рд╕реЗ Docker рдХреЗ рд╕рд╛рде рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рдВрд╕ рдХреЛ рдХрдВрдЯреЗрдирд░рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред┬а

рдкреВрд░реНрд╡рд╛рдкреЗрдХреНрд╖рд╛рдПрдБ

NGINX рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ Docker рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реИред Docker рдХреЗ macOS, Windows рдФрд░ рд╡рд┐рднрд┐рдиреНрди Linux рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрд╢рдВрд╕ рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЗрдВрд╕реНрдЯреЙрд▓рд░реНрд╕ рд╣реИрдВред Docker рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкреНрд░рддреНрдпреЗрдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЪрд░рдг-рджрд░-рдЪрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред┬а

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рд╕рдВрдкреВрд░реНрдг рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ Introduction to Docker рдХреЛрд░реНрд╕ рджреЗрдЦреЗрдВред┬а

рдЕрдкрдиреА рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЛ рдХрд┐рд╕реА рддреНрд╡рд░рд┐рдд рдХрдорд╛рдВрдб рд╕реЗ рдЬрд╛рдБрдЪреЗрдВ, рдЬреИрд╕реЗ:

docker version
derrickmwiti@Derricks-MacBook-Pro% docker version
Client:
 Version:           28.0.1
 API version:       1.48
 Go version:        go1.23.6
 Git commit:        068a01e
 Built:             Wed Feb 26 10:38:16 2025
 OS/Arch:           darwin/arm64
 Context:           desktop-linux
Server: Docker Desktop 4.39.0 (184744)
 Engine:
  Version:          28.0.1
  API version:      1.48 (minimum version 1.24)
  Go version:       go1.23.6
  Git commit:       bbd0a17
  Built:            Wed Feb 26 10:40:57 2025
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.2.4
  GitCommit:        v1.2.4-0-g6c52b3f
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

рдпрджрд┐ рдЖрдкрдХреЛ рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рд╡рд░рдг рджрд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм Docker рддреИрдпрд╛рд░ рд╣реИред Docker рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ Docker Hub рд╕реЗ NGINX рдЗрдореЗрдЬ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕реЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрджрд┐ рдЖрдк рдЕрдкрдиреА рдЗрдореЗрдЬ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ Dockerfile рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ рдЪрд╛рд╣рд┐рдПред рдХреЛрдИ рднреА рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ рдЪрд▓реЗрдЧрд╛, рдмрд╕ рдЬреЛ рдЖрдкрдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд▓рдЧреЗ рдЙрд╕реЗ рдЪреБрдиреЗрдВред

Docker рдХрдВрдЯреЗрдирд░ рдореЗрдВ NGINX рд╕реЗрдЯ рдЕрдк рдХрд░рдирд╛

рддреИрдпрд╛рд░ рдЗрдореЗрдЬ рд╕реЗ NGINX рдЪрд▓рд╛рдирд╛ рдЖрдорддреМрд░ рдкрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рдХреБрдЫ рд╣реА рд╕реЗрдХрдВрдб рдореЗрдВ Docker Hub рд╕реЗ рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдПрдХ рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдк рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреЗрдЬ рджреЗрдЦреЗрдВрдЧреЗред рдпрд╣ рдЫреЛрдЯрд╛-рд╕рд╛ рдкреНрд░реЛрд╕реЗрд╕ рдХрдИ Docker-рдЖрдзрд╛рд░рд┐рдд рд╕рд░реНрд╡рд░ рд╕реЗрдЯрдЕрдкреНрд╕ рдореЗрдВ рдкрд╣рд▓рд╛ рдХрджрдо рд╣реЛрддрд╛ рд╣реИред

NGINX Docker рдЗрдореЗрдЬ рдЦреАрдВрдЪрдирд╛

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ NGINX рдЗрдореЗрдЬ Docker Hub рдкрд░ nginx рдирд╛рдо рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИред┬а

рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рдЦреАрдВрдЪреЗрдВ:

docker pull nginx
derrickmwiti@Derricks-MacBook-Pro % docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
4c7c1a5bd3af: Download complete 
bef2ee7fab45: Download complete 
d9b636547744: Downloading [======================>                            ]  12.58MB/28.04MB
0994e771ba34: Downloading [===>                                               ]  3.146MB/40.56MB
589701e352f8: Download complete 
13f89c653285: Download complete 
8e77214beb25: Download complete 

рдпрд╣ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╕реЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд▓рд╛рддрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рдкреВрд░реНрдг рд╣реЛрдиреЗ рдкрд░, рдЖрдк рдпрд╣ рдЬрд╛рдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рдорд╢реАрди рдкрд░ рдореМрдЬреВрдж рд╣реИ:

docker images
derrickmwiti@Derricks-MacBook-Pro% docker images
REPOSITORY                                                                     TAG                                                                           IMAGE ID       CREATED         SIZE

nginx                                                                          latest                                                                        124b44bfc9cc   6 weeks ago     280MB
keras-custom-training-container                                                latest                                                                                                                                     <none>                                                                        7de0f04013e5   7                                                  

рдпрд╣ рдХрдорд╛рдВрдб рдЖрдкрдХреА рд▓реЛрдХрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдореМрдЬреВрдж рдЗрдореЗрдЬреЗрдЬрд╝ рдХреА рд╕реВрдЪреА рджрд┐рдЦрд╛рддреА рд╣реИред рдЖрдкрдХреЛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ nginx рдЗрдореЗрдЬ рджрд┐рдЦрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕рд╕реЗ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЬрд╝рд░реВрд░реА рдЗрдореЗрдЬреЗрдЬрд╝ рдХреА рд╕реВрдЪреА рд╣рдорд╛рд░реЗ Top 12 Docker Container Images for Machine Learning and AI рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╕реЗ рдЦреЛрдЬреЗрдВред┬а

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

рдПрдХ рдмрд╛рд░ NGINX рдЗрдореЗрдЬ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╣реЛрдиреЗ рдкрд░, рдЖрдк рдПрдХ рд╣реА рдХрдорд╛рдВрдб рд╕реЗ рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

docker run --name mynginx -p 8080:80 -d nginx
derrickmwiti@Derricks-MacBook-Pro % docker run --name mynginx -p 8080:80 -d nginx
ec44d1a43016e9684b602437b967c0ed8e11c933a8a76b341b68c25168d2af70

рдпрд╣ рдХрдорд╛рдВрдб рдХрдИ рдХрд╛рдо рдХрд░рддреА рд╣реИред рдпрд╣ mynginx рдирд╛рдо рдХрд╛ рдХрдВрдЯреЗрдирд░ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореЗрдВ рдЪрд▓рд╛рддреА рд╣реИ (-d рд╡рд┐рдХрд▓реНрдк рдХреЗ рдХрд╛рд░рдг)ред рдпрд╣ рдЖрдкрдХреЗ рд╣реЛрд╕реНрдЯ рдкрд░ рдкреЛрд░реНрдЯ 8080 рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдкреЛрд░реНрдЯ 80 рд╕реЗ рдореИрдк рдХрд░рддреА рд╣реИред рдЗрд╕ рдкреЛрд░реНрдЯ рдореИрдкрд┐рдВрдЧ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ http://localhost:8080 рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ NGINX рдкреЗрдЬ рджреЗрдЦреЗрдВред рдХрдВрдЯреЗрдирд░ Docker Hub рд╕реЗ рдЦреАрдВрдЪреА рдЧрдИ nginx рдЗрдореЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдирдпрд╛ рдХрдВрдЯреЗрдирд░ рдЪрд▓рддрд╛ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ NGINX рд╕рдХреНрд░рд┐рдп рд╣реИред рдпрджрд┐ рдЖрдк рд▓реЙрдЧреНрд╕ рджреЗрдЦреЗрдВ:

docker logs mynginx
derrickmwiti@Derricks-MacBook-Pro % docker logs mynginx
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2025/03/20 04:33:10 [notice] 1#1: using the "epoll" event method
2025/03/20 04:33:10 [notice] 1#1: nginx/1.27.4
2025/03/20 04:33:10 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14) 
2025/03/20 04:33:10 [notice] 1#1: OS: Linux 6.10.14-linuxkit
2025/03/20 04:33:10 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2025/03/20 04:33:10 [notice] 1#1: start worker processes
2025/03/20 04:3

рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ NGINX рдиреЗ рдХреНрдпрд╛ рд╕рдВрджреЗрд╢ рд▓рд┐рдЦреЗ рд╣реИрдВред┬а

NGINX рдХреЗ рд╕рд╛рде рдХрд╕реНрдЯрдо рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░рдирд╛

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

рдХрд╕реНрдЯрдо HTML рдкреЗрдЬ рдмрдирд╛рдирд╛

рдЕрдкрдиреА рд▓реЛрдХрд▓ рдорд╢реАрди рдкрд░ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реНрдерд╛рди рдЪреБрдиреЗрдВред рд╕рдВрднрд╡рддрдГ рдЖрдкрдХреЗ рд╣реЛрдо рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ html_content рдирд╛рдо рдХрд╛ рдлрд╝реЛрд▓реНрдбрд░ред рд╡рд╣рд╛рдБ рдПрдХ index.html рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБред рд╡рд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:

<html>
<head>
    <title>My NGINX Page</title>
</head>
<body>
    <h1>Hello from my Docker NGINX setup!</h1>
    <p>This is a custom page served from a local folder.</p>
</body>
</html>

рдпрд╣ рдПрдХ рдмреБрдирд┐рдпрд╛рджреА HTML рдкреЗрдЬ рд╣реИред рдЖрдк рдЗрд╕рдореЗрдВ рдордирдЪрд╛рд╣рд╛ рдЯреЗрдХреНрд╕реНрдЯ рдпрд╛ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЗрдореЗрдЬреЗрдЬрд╝ рдпрд╛ JavaScript, рдпрд╛ рдЬреЛ рднреА рдЖрдкрдХреА рдЬрд╝рд░реВрд░рдд рд╣реЛ, рдЬреЛрдбрд╝реЗрдВред

HTML рдкреЗрдЬ рдХреЛ NGINX рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд░рдирд╛

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ NGINX рдЗрдореЗрдЬ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ /usr/share/nginx/html рд╕реЗ рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░рддреА рд╣реИред рдЖрдк рдЕрдкрдиреЗ рд▓реЛрдХрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдЙрд╕ рд▓реЛрдХреЗрд╢рди рдкрд░ рдореИрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ Docker рдореЗрдВ -v (рд╡реЙрд▓реНрдпреВрдо) рдлрд╝реНрд▓реИрдЧ рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рдкреЛрд░реНрдЯ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП mynginx рдирд╛рдо рдХреЗ рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рдХрдВрдЯреЗрдирд░ рдХреЛ рдмрдВрдж рдХрд░реЗрдВ:

docker stop mynginx
docker rm mynginx

рдлрд┐рд░ рдПрдХ рдирдпрд╛ рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░реЗрдВ:

docker run --name mynginx -p 8080:80 -d \
    -v /Users/derrickmwiti/Documents/html_content:/usr/share/nginx/html \
    nginx
6f68085733eeac418c3302e5c580a4f7c5c0c36d3591d8e2a7f35f69f6308d18

рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрде рд╕реЗ /path/to/html_content рдХреЛ рдмрджрд▓реЗрдВред рдЗрд╕ рддрд░рд╣, рдЬрдм рднреА рдЖрдк http://localhost:8080 рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░реЗрдВрдЧреЗ, рдХрдВрдЯреЗрдирд░ html_content рдореЗрдВ рд░рдЦреА рдЖрдкрдХреА HTML рдлрд╝рд╛рдЗрд▓ рд╕рд░реНрд╡ рдХрд░реЗрдЧрд╛ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрджрд┐ рдЖрдк рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо index.html рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ NGINX рдЙрд╕реЗ рдЕрдкрдиреЗ рдЖрдк рд▓реЛрдб рдХрд░ рд▓реЗрдЧрд╛ред

HTML рдкреЗрдЬ рдХреЛ NGINX рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд░рдирд╛

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

рдпрджрд┐ рдЖрдкрдХреЛ рдкрд░рдорд┐рд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦреЗ, рддреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХрд╛ рд▓реЛрдХрд▓ рдпреВрдЬрд╝рд░ рдФрд░ Docker рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред┬а

Linux рдкрд░, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдУрдирд░рд╢рд┐рдк рдпрд╛ рдлрд╝рд╛рдЗрд▓ рдкрд░рдорд┐рд╢рдиреНрд╕ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред Windows рдпрд╛ macOS рдкрд░, рдЗрд╕рдХрд╛ рдорддрд▓рдм Docker рдХреЛ рдЖрдкрдХреЗ рдбреНрд░рд╛рдЗрд╡ рддрдХ рдкрд╣реБрдБрдЪ рджреЗрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдХрд╕реНрдЯрдо NGINX Docker рдЗрдореЗрдЬ рдмрдирд╛рдирд╛

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

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

Dockerfile рдмрдирд╛рдирд╛

Dockerfile рдПрдХ рд╕рд╛рджрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИред рдЖрдк рдЗрд╕рдХрд╛ рдирд╛рдо Dockerfile рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЪрд╛рд╣реЗрдВ рддреЛ рдХреЛрдИ рдФрд░ рдирд╛рдо рджреЗрдВред рдЗрд╕реЗ рдПрдХ рдирдИ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рд░рдЦреЗрдВред рдпрд╣рд╛рдБ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ:

FROM nginx:latest

COPY index.html /usr/share/nginx/html/index.html

рдпрд╣ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ nginx:latest рдЗрдореЗрдЬ рдХреЛ рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдлрд┐рд░ рдпрд╣ рд▓реЛрдХрд▓ index.html рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реЗрдм рдХрдВрдЯреЗрдВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЬрд╝рд░реВрд░рдд рд╣реЛ рддреЛ рдЖрдк рдФрд░ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрд╕реНрдЯрдо nginx.conf рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЖрдкрдХреА рдЬрд╝рд░реВрд░рддреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИред рдпрджрд┐ рд╕рд┐рд░реНрдлрд╝ рдПрдХ рд╕реНрдЯреИрдЯрд┐рдХ рдкреЗрдЬ рд░рдЦрдирд╛ рд╣реИ, рддреЛ рдКрдкрд░ рдХрд╛ рд╕реНрдирд┐рдкреЗрдЯ рдХрд╛рдлрд╝реА рд╣реИред

рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ Dockerfile рддреИрдпрд╛рд░ рд╣реЛ, рддреЛ рдЙрд╕реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХрд╕реНрдЯрдо index.html рдЬреЛрдбрд╝реЗрдВред рдлрд┐рд░ рдЖрдк рдмрд┐рд▓реНрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рдХрдорд╛рдВрдб рд╣реИ:

docker build -t mynginximage .
[+] Building 2.6s (7/7) FINISHED                                                                                                                                                       docker:desktop-linux
 => [internal] load build definition from Dockerfile                                                                                                                                                   0.0s
 => => transferring dockerfile: 245B                                                                                                                                                                   0.0s
 => [internal] load metadata for docker.io/library/nginx:latest                                                                                                                                        0.0s
 => [internal] load .dockerignore                                                                                                                                                                      0.0s
 => => transferring context: 2B                                                                                                                                                                        0.0s
 => [internal] load build context                                                                                                                                                                      0.0s
 => => transferring context: 365B                                                                                                                                                                      0.0s
 => [1/2] FROM docker.io/library/nginx:latest@sha256:124b44bfc9ccd1f3cedf4b592d4d1e8bddb78b51ec2ed5056c52d3692baebc19                                                                                  2.3s
 => => resolve docker.io/library/nginx:latest@sha256:124b44bfc9ccd1f3cedf4b592d4d1e8bddb78b51ec2ed5056c52d3692baebc19                                                                                  2.3s
 => [2/2] COPY index.html /usr/share/nginx/html/index.html                                                                                                                                             0.0s
 => exporting to image                                                                                                                                                                                 0.1s
 => => exporting layers                                                                                                                                                                                0.0s
 => => exporting manifest sha256:19dd719772fd7ac839fadb7d49862f84422f4571a442994ffaca152e9674553a                                                                                                      0.0s
 => => exporting config sha256:e974f3ab92a0278e419f0fe4c5a6fc43fafb4a75da27895d90c4f2d5d385daa1                                                                                                        0.0s
 => => exporting attestation manifest sha256:e391b0212e5a100bd9132fbbd6cb4052e288dbbcba093839b55f8b197131372b                                                                                          0.0s
 => => exporting manifest list sha256:d35c2bbe10ab0b7e46d1ef8fba6c6cb28628eb9c283db02607e32e95b62e14d5                                                                                                 0.0s
 => => naming to docker.io/library/mynginximage:latest                                                                                                                                                 0.0s
 => => unpacking to docker.io/library/mynginximage:latest                                                                                                                                              0.0s

рдЕрдВрдд рдореЗрдВ рд▓рдЧрд╛ рдбреЙрдЯ рд╡рд░реНрддрдорд╛рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдмрд┐рд▓реНрдб рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ рдмрддрд╛рддрд╛ рд╣реИред Docker рдЙрд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ Dockerfile рдкрдврд╝рддрд╛ рд╣реИред рдЖрдкрдХреЗ рд▓реЛрдХрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░ mynginximage рдирд╛рдо рдХреА рдЗрдореЗрдЬ рдмрди рдЬрд╛рдПрдЧреАред рдЗрд╕реЗ рдЬрд╛рдБрдЪреЗрдВ:

docker images
mynginximage                                                                   latest                                                                        d35c2bbe10ab   36 seconds ago   281MB

рдЖрдкрдХреЛ рд╕реВрдЪреА рдореЗрдВ рдирдпрд╛ рдирд╛рдо рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рддрд░реАрдХреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ Dockerfile рдФрд░ HTML рдПрдХ рд╣реА рдЗрдореЗрдЬ рдореЗрдВ рд╕рдорд╛рд╣рд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рд░рдирдЯрд╛рдЗрдо рдкрд░ рдХреБрдЫ рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВред

рдХрд╕реНрдЯрдо рдЗрдореЗрдЬ рдмрдирд╛рдирд╛ рдФрд░ рдЪрд▓рд╛рдирд╛

рдЕрдм рдЬрдм mynginximage рдмрди рдЪреБрдХреА рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ:

docker run --name mycustomnginx -p 8080:80 -d mynginximage

рдкреЛрд░реНрдЯ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╡рд╛рд▓реЗ рдХрдВрдЯреЗрдирд░ рдХреЛ рдЬрд╝рд░реВрд░ рдмрдВрдж рдХрд░реЗрдВред┬а

рдпрд╣ рдХрдВрдЯреЗрдирд░ рдЕрдкрдиреЗ рдЖрдк рд╡рд╣реА рдкреЗрдЬ рд╕рд░реНрд╡ рдХрд░реЗрдЧрд╛ рдЬреЛ рдЖрдкрдиреЗ Dockerfile рдореЗрдВ рд░рдЦрд╛ рдерд╛ред рдпрджрд┐ рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ http://localhost:8080 рдЦреЛрд▓реЗрдВ, рддреЛ рдЖрдкрдХреЛ рд╡рд╣реА HTML рдЯреЗрдХреНрд╕реНрдЯ рджрд┐рдЦреЗрдЧрд╛ред┬а

рдХрд╕реНрдЯрдо рдЗрдореЗрдЬ рдмрдирд╛рдирд╛ рдФрд░ рдЪрд▓рд╛рдирд╛

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

рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдиреНрдпреВрдирддрдо рдХрд╕реНрдЯрдо NGINX рдЗрдореЗрдЬ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реА рд╣реЛрддреА рд╣реИред рдЖрдкрдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдмреЗрд╕ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХреА, рдПрдХ-рджреЛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдХреЙрдкреА рдХреАрдВ, рдФрд░ рдЕрдкрдирд╛ рдХрд╕реНрдЯрдо рд╕рд╛рдЗрдЯ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдирдпрд╛ рдХрдВрдЯреЗрдирд░ рддреИрдпрд╛рд░ рдХрд░ рд▓рд┐рдпрд╛ред рдЖрдк Dockerfile рдХреЛ рдЖрдЧреЗ рднреА рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдорд▓реНрдЯреА-рд╕реНрдЯреЗрдЬ рдмрд┐рд▓реНрдб рдореЗрдВ php-fpm рдХреЗ рд╕рд╛рде PHP рд╣реИрдВрдбрд▓ рдХрд░рдиреЗ рд╣реЗрддреБ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдРрд╕реЗ рдХрд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ NGINX рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рджреЗрддрд╛ред

рдпрд╣ рддрд░реАрдХрд╛ Docker рдХреА рд▓рдЪреАрд▓рд╛рдкрди рджрд┐рдЦрд╛рддрд╛ рд╣реИ: Dockerfile рдХреА рд╣рд░ рд▓реЗрдпрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд░реНрдп рд╕рдВрднрд╛рд▓ рд╕рдХрддреА рд╣реИ, рдФрд░ рдЕрдВрддрд┐рдо рдЗрдореЗрдЬ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡реЗрдм рд╕рд╛рдордЧреНрд░реА рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд░рд╣рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рднреА рддрд╛рдХрд┐ рдЖрдкрдХрд╛ рдХрдВрдЯреЗрдирд░ рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛ рд╕рдХреЗред┬а

рдЗрди 10 Docker Project Ideas рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ рдФрд░ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рдВрд╕ рдмрдирд╛рдиреЗ рд╡ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рд╛рде Docker рд╕реАрдЦреЗрдВред

рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рд░реВрдк рдореЗрдВ NGINX рд╕реЗрдЯ рдХрд░рдирд╛

NGINX рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЙрд╕реА рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЪрд▓ рд░рд╣реА рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдпрд╛ рдЕрд▓рдЧ рдорд╢реАрдиреЛрдВ рдкрд░ рдЪрд▓ рд░рд╣реА рд╕реЗрд╡рд╛рдУрдВ рддрдХ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдЖрдорддреМрд░ рдкрд░ рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рд╕реЗрдЯрдЕрдк рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк NGINX рдХреЛ рдХрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рдВрд╕ рдХреЗ рдЖрдЧреЗ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЕрдиреБрд░реЛрдз рдПрдХ рд╣реА рдПрдВрдЯреНрд░реА рдкреЙрдЗрдВрдЯ рд╕реЗ рд╣реЛрдХрд░ рдЧреБрдЬрд░реЗрдВред┬а

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

рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рдХреЛ рд╕рдордЭрдирд╛

рдЬрдм NGINX рдЗрд╕ рддрд░рд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╣реЛрддрд╛ рд╣реИ, рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд╕рдВрдЪрд╛рд░ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓рддрд╛ред NGINX рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдЪреЗрд╣рд░рд╛ рдмрдирдХрд░ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рдФрд░ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╡рд╛рдкрд╕ рднреЗрдЬрддрд╛ рд╣реИред┬а

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

рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдкреЛрд░реНрдЯ 80 рдкрд░ NGINX рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдкреЛрд░реНрдЯ 3000 рдкрд░ рдЪрд▓ рд░рд╣реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрдВрдЯреЗрдирд░ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ http://yourdomain.com рдкрд░ рдЖрддрд╛ рд╣реИ, рдЯреНрд░реИрдлрд╝рд┐рдХ рдкрд░реНрджреЗ рдХреЗ рдкреАрдЫреЗ рдХрд┐рд╕реА рдЕрд▓рдЧ рдХрдВрдЯреЗрдирд░ рддрдХ рдкрд╣реБрдБрдЪрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред┬а

рдЗрд╕рд╕реЗ рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрдВрдЯреЗрдирд░ рдЕрдкрдирд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреЛрд░реНрдЯ рд░рдЦ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдУрд╡рд░рд╣реЗрдб рдиреНрдпреВрдирддрдо рд░рд╣рддрд╛ рд╣реИред рдПрдХ рдФрд░ рдХрд╛рд░рдг рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдЖрдВрддрд░рд┐рдХ рд╡рд┐рд╡рд░рдг рдЫрд┐рдкрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛрдВ рдпрд╛ рдПрдХ рд╕рдорд╛рди URL рд╕рдВрд░рдЪрдирд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛрдВред

рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рд▓рд┐рдП NGINX рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛

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

server {
    listen 80;

    location / {
        proxy_pass http://myapp:3000/;
    }
}

рдКрдкрд░ рджрд┐рдП рд╕реНрдирд┐рдкреЗрдЯ рдореЗрдВ, рдЖрдкрдХреЗ NGINX рдХрдВрдЯреЗрдирд░ рдкрд░ рдкреЛрд░реНрдЯ 80 рдкрд░ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рдЕрдиреБрд░реЛрдз myapp:3000 рдХреЛ рднреЗрдЬ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред myapp рдирд╛рдо рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдирд╛рдо рд╕реЗ рдкрд╣реБрдБрдЪрд╛ рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рджреВрд╕рд░рд╛ рдХрдВрдЯреЗрдирд░ рд╣реИ, рдЬреЛ Docker рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рдореЗрдВ рдЖрдо рдмрд╛рдд рд╣реИред┬а

рдпрджрд┐ рдЖрдк рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдХрдВрдЯреЗрдирд░реНрд╕ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХрдВрдЯреЗрдирд░ рдХрд╛ IP рдкрддрд╛ рдореИрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рд╣реЛрд╕реНрдЯ рдХрд╛ IP рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ proxy_set_header Host $host, рдпрд╛ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рдорд╛рди рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдк рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдорд╛рдЙрдВрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВ, рддреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

docker run --name nginxproxy -p 8080:80 -d \
    -v /path/to/nginx.conf:/etc/nginx/conf.d/default.conf \
    --network mynetwork \
    nginx

рдпрд╣ рдХрдорд╛рдВрдб NGINX рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рддреА рд╣реИ рдФрд░ рдЖрдкрдХреА рд▓реЛрдХрд▓ nginx.conf рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд░рддреА рд╣реИред рдпрд╣ рдХрдВрдЯреЗрдирд░ рдХреЛ mynetwork рдирд╛рдордХ Docker рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рднреА рдЬреЛрдбрд╝рддреА рд╣реИ, рдЬрд╣рд╛рдБ рдЖрдкрдХрд╛ рджреВрд╕рд░рд╛ рдХрдВрдЯреЗрдирд░ (myapp) рдореМрдЬреВрдж рд╣реИред рдпрджрд┐ рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдмрд╛рд╣рд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрдХреНрд╕рд░ рд╕рдмрд╕реЗ рд╕рд░рд▓ рддрд░реАрдХрд╛ рд╣реИред┬а

рдпрджрд┐ рдЖрдк рд╕реНрдерд┐рд░ рд╡реНрдпрд╡рд╕реНрдерд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ Dockerfile рдореЗрдВ рднреА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдХреЛрдИ рднреА рддрд░реАрдХрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдмрд╢рд░реНрддреЗ рд╕рдВрджрд░реНрдн рдЖрдкрдХреЗ рдХрдВрдЯреЗрдирд░реНрд╕ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХреНрд╕ рдХреЗ рдирд╛рдореЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реЛрдВред

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

NGINX рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП Docker Compose рдХрд╛ рдЙрдкрдпреЛрдЧ

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

Docker Compose рдХрд╛ рдкрд░рд┐рдЪрдп

Docker Compose рдЖрдкрдХреЛ рдХрдВрдЯреЗрдирд░реНрд╕ рдХреЗ рд╕реЗрдЯ рдореИрдиреЗрдЬ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИред рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХрд╛ рд╡рд┐рд╡рд░рдг рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдХреМрди рд╕реА рдЗрдореЗрдЬ рдЙрдкрдпреЛрдЧ рдХрд░рдиреА рд╣реИ, рдХреМрди рд╕реЗ рдкреЛрд░реНрдЯ рдкрдмреНрд▓рд┐рд╢ рдХрд░рдиреЗ рд╣реИрдВ, рдХреМрди рд╕реЗ рд╡реЙрд▓реНрдпреВрдореНрд╕ рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рд╣реИрдВ, рдФрд░ рдХрд┐рди рдиреЗрдЯрд╡рд░реНрдХреНрд╕ рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдлрд┐рд░ рдПрдХ рд╕рд░рд▓ рдХрдорд╛рдВрдб (docker compose up -d) рд╕рдм рдХреБрдЫ рдПрдХ рд╕рд╛рде рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред┬а

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

рд╣рд╛рд▓рд╛рдБрдХрд┐ Docker Compose рд╡рд┐рднрд┐рдиреНрди рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдореНрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдЗрдВрд╕реНрдЯреЙрд▓ рдФрд░ рдорд╛рдиреНрдп рд╣реИред рдЖрдзреБрдирд┐рдХ Docker Desktop рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рдиреНрд╕ рдореЗрдВ рдпрд╣ рдЕрдХреНрд╕рд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред рдЕрдкрдирд╛ рд╕рдВрд╕реНрдХрд░рдг рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЬрд╛рдБрдЪреЗрдВ:

docker compose version
Docker Compose version v2.33.1-desktop.1

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

docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛

рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдорддреМрд░ рдкрд░ services рд╕реЗрдХреНрд╢рди рд╣реЛрддрд╛ рд╣реИред рдиреАрдЪреЗ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ рд╕реНрдЯреИрдЯрд┐рдХ рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрд▓ NGINX рдХрдВрдЯреЗрдирд░ рд╕реЗрдЯ рдЕрдк рдХрд░рддрд╛ рд╣реИ:┬а

services:
  web:
    image: nginx:latest
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html

рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕рдордЭреЗрдВ:

  • services: рдЖрдкрдХреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛рдУрдВ (рдХрдВрдЯреЗрдирд░реНрд╕) рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • web: рдпрд╣ рд╕реЗрд╡рд╛ рдирд╡реАрдирддрдо NGINX рдЗрдореЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред
    • ports: рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдкреЛрд░реНрдЯ 80 рдХреЛ рдЖрдкрдХреЗ рд╣реЛрд╕реНрдЯ рдорд╢реАрди рдкрд░ рдкреЛрд░реНрдЯ 8080 рд╕реЗ рдореИрдк рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдЖрдк http://localhost:8080 рдХреЗ рдЬрд░рд┐рдП рд╡реЗрдм рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред
    • volumes: рд▓реЛрдХрд▓ html рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ NGINX рдХреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрдВрдЯреЗрдВрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА (/usr/share/nginx/html) рд╕реЗ рдорд╛рдЙрдВрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕реЗрдЯрдЕрдк NGINX рдХреЛ рдЖрдкрдХреА рдХрд╕реНрдЯрдо рд╕реНрдЯреИрдЯрд┐рдХ рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред

Docker Compose рдХреЗ рд╕рд╛рде рд╕реЗрд╡рд╛рдПрдБ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдирд╛

рдЕрдкрдиреА docker-compose.yml рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд▓реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ, html рдирд╛рдо рдХреА рдПрдХ рд╕рдмрдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдмрдирд╛рдПрдБред

рдЕрдкрдиреА рд╕реНрдЯреИрдЯрд┐рдХ HTML рдлрд╝рд╛рдЗрд▓реЗрдВ (рдЬреИрд╕реЗ index.html) рдЗрд╕ html рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рд░рдЦреЗрдВред рдЗрд╕ рдбреЗрдореЛ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг Bootstrap-рд╕реНрдЯрд╛рдЗрд▓реНрдб рдкреЗрдЬ рдмрдирд╛рдпрд╛ рд╣реИред┬а

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

рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

docker compose up -d
[+] Running 1/1
 тЬФ Container html_content-web-1  Started 

-d рдлрд╝реНрд▓реИрдЧ рдХрдВрдЯреЗрдирд░ рдХреЛ рдбрд┐рдЯреИрдЪреНрдб рдореЛрдб рдореЗрдВ рдЪрд▓рд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╡рд╣ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореЗрдВ рдЪрд▓рддрд╛ рд░рд╣рддрд╛ рд╣реИред

Docker Compose рд╡рд░реНрддрдорд╛рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдореМрдЬреВрдж docker-compose.yml рдлрд╝рд╛рдЗрд▓ рджреЗрдЦрддрд╛ рд╣реИред рдпрд╣ рдХреЛрдИ рднреА рдЕрдиреБрдкрд╕реНрдерд┐рдд рдЗрдореЗрдЬ рдЦреАрдВрдЪрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИред┬а

рдЕрдкрдирд╛ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреЛрд▓реЗрдВ рдФрд░ http://localhost:8080 рдкрд░ рдЬрд╛рдПрдБред

рдЖрдкрдХреЛ NGINX рджреНрд╡рд╛рд░рд╛ рд╕рд░реНрд╡ рдХреА рдЧрдИ рдЕрдкрдиреА рд╕реНрдЯреИрдЯрд┐рдХ рд╕рд╛рдордЧреНрд░реА рджрд┐рдЦрдиреА рдЪрд╛рд╣рд┐рдПред

Docker Compose рдХреЗ рд╕рд╛рде рд╕реЗрд╡рд╛рдПрдБ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдирд╛

рдЖрдк рдЕрдкрдиреЗ рдЪрд▓ рд░рд╣реЗ рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдЗрд╕ рддрд░рд╣ рдЬрд╛рдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ:

docker compose ps

рдпрджрд┐ рдЖрдкрдХреЛ рд╕рдм рдХреБрдЫ рд╣рдЯрд╛рдирд╛ рд╣реЛ, рддреЛ рдПрдХ рд╣реА рдХрдорд╛рдВрдб рдХрдВрдЯреЗрдирд░реНрд╕ рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреА рд╣реИ:

docker compose down

рдпрд╣ рд╕рдмрдХреЛ рдПрдХ рд╕рд╛рде рд░реЛрдХрдХрд░ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдкреВрд░реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдХреА рдкреНрд░рддрд┐рдХреГрддрд┐ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреЗрд╡рд▓ Docker Compose рдлрд╝рд╛рдЗрд▓ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрдб рдирдИ рдорд╢реАрди рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ, рдФрд░ рд╡рд╣реА рдХрдорд╛рдВрдбреНрд╕ рдЪрд▓рд╛рдПрдБред рдЗрд╕рд╕реЗ рдиреНрдпреВрдирддрдо рдореИрдиреБрдЕрд▓ рдЪрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕реБрд╕рдВрдЧрдд рдкрд░рд┐рдгрд╛рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

NGINX рдХрдВрдЯреЗрдирд░реНрд╕ рдореИрдиреЗрдЬ рдХрд░рдирд╛

рд╣рд╛рд▓рд╛рдБрдХрд┐ рдорд▓реНрдЯреА-рд╕рд░реНрд╡рд┐рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЗ рд▓рд┐рдП Docker Compose рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ, рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рд╕рд┐рд░реНрдл рдПрдХ рдХрдВрдЯреЗрдирд░ рдпрд╛ рдПрдХ рдЫреЛрдЯреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ рдореИрдиреЗрдЬ рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред Docker рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдХрдорд╛рдВрдбреНрд╕ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдХрдВрдЯреЗрдирд░реНрд╕ рдХреЛ рд░реЛрдХрдирд╛ рдпрд╛ рдкреЙрдЬрд╝ рдХрд░рдирд╛, рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛рдирд╛ред┬а

рдпреЗ рд╣рд╛рдЙрд╕рдХреАрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЬрд╝рд░реВрд░реА рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдк рдХрдИ NGINX рдХрдВрдЯреЗрдирд░реНрд╕ рдпрд╛ рдмрд╛рд░-рдмрд╛рд░ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдмрд┐рд▓реНрдбреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЪрд▓ рд░рд╣реЗ рдХрдВрдЯреЗрдирд░реНрд╕ рджреЗрдЦрдирд╛

рдЬрдм рднреА рдЖрдк рджреЗрдЦрдирд╛ рдЪрд╛рд╣реЗрдВ рдХрд┐ рдХреМрди рд╕реЗ рдХрдВрдЯреЗрдирд░реНрд╕ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                  NAMES
2d386c085129   mynginximage   "/docker-entrypoint.тАж"   4 minutes ago   Up 4 minutes   0.0.0.0:8080->80/tcp   mycustomnginx

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

docker ps -a

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

рдХрдВрдЯреЗрдирд░реНрд╕ рдХреЛ рд░реЛрдХрдирд╛ рдФрд░ рд╣рдЯрд╛рдирд╛

рдЬрдм рдЖрдк рдХрд┐рд╕реА рдХрдВрдЯреЗрдирд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдкреВрд░рд╛ рдХрд░ рд▓реЗрдВ, рддреЛ рдЙрд╕реЗ рдирд╛рдо рд╕реЗ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВ:

docker stop mynginx

рдпрд╣ Docker рдХреЛ рдХрдВрдЯреЗрдирд░ рддрдХ рд╕реНрдЯреЙрдк рд╕рд┐рдЧреНрдирд▓ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ NGINX рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рддреБрд░рдВрдд рдмрд╛рдж рдХрдВрдЯреЗрдирд░ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣реЗрдВ, рддреЛ рдпрд╣ рдХрд░реЗрдВ:

docker rm mynginx

рдпрджрд┐ рдЖрдк рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рд░реЛрдХрдирд╛ рдФрд░ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрдЬрд╝рдорд╛рдПрдБ:

docker rm -f mynginx

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

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

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

Docker рдореЗрдВ NGINX рд╡реЗрдм рдкреЗрдЬ рд╕рд░реНрд╡ рдХрд░рдиреЗ рдпрд╛ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рддрдХ рд░реВрдЯ рдХрд░рдиреЗ рдХрд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛ рд╣реИред рдЖрдк рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЗрдореЗрдЬ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг Dockerfile рд╕реЗ рдЕрдкрдиреА рдЗрдореЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред Docker Compose рдХрдИ рдХрдВрдЯреЗрдирд░реНрд╕ рдХрд╛ рд╕рдордиреНрд╡рдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЬрдЯрд┐рд▓ рд╕реЗрдЯрдЕрдкреНрд╕ рд╕рдБрднрд╛рд▓рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред┬а

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

рдпрджрд┐ рдЖрдкрдХреЛ Docker рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╣реИрдВрдбреНрд╕-рдСрди рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рд╣рдорд╛рд░рд╛ Introduction to Docker Course рджреЗрдЦреЗрдВ рдФрд░ рдбреЗрдЯрд╛ рдкреНрд░реЛрдлреЗрд╢рдирд▓ рдХреЗ рдЯреВрд▓рдХрд┐рдЯ рдореЗрдВ рдЗрд╕рдХреА рдорд╣рддреНрддрд╛ рдЬрд╛рдиреЗрдВред

NGINX Docker FAQs

рдореИрдВ Docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ NGINX рдХрдВрдЯреЗрдирд░ рдХреИрд╕реЗ рдЪрд▓рд╛рдКрдБ?

рдЖрдк NGINX рдХрдВрдЯреЗрдирд░ рдХреЛ рдирд┐рдореНрди рдХрдорд╛рдВрдб рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

docker run --name mynginx -p 8080:80 -d nginx

рдпрд╣ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореЗрдВ рдПрдХ NGINX рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреА рдорд╢реАрди рдкрд░ рдкреЛрд░реНрдЯ 8080 рдХреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдкреЛрд░реНрдЯ 80 рд╕реЗ рдореИрдк рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ http://localhost:8080 рдЦреЛрд▓рдХрд░ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Docker рдореЗрдВ NGINX рдХреЗ рд╕рд╛рде рдХрд╕реНрдЯрдо рд╕рд╛рдордЧреНрд░реА рдХреИрд╕реЗ рд╕рд░реНрд╡ рдХрд░реВрдБ?

рдЕрдкрдиреА HTML рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕рд░реНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЛрдХрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ NGINX рдХрдВрдЯреЗрдирд░ рд╕реЗ рдЗрд╕ рддрд░рд╣ рдорд╛рдЙрдВрдЯ рдХрд░реЗрдВ:

docker run --name mynginx -p 8080:80 -d -v /path/to/html:/usr/share/nginx/html nginx

/path/to/html рдХреЛ рдЕрдкрдиреА HTML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрде рд╕реЗ рдмрджрд▓реЗрдВред рдХрдВрдЯреЗрдирд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреЗрдЬ рдХреА рдЬрдЧрд╣ рдЙрд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╕реЗ рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡ рдХрд░реЗрдЧрд╛ред

Docker рдореЗрдВ NGINX рдХреЛ рд░рд┐рд╡рд░реНрд╕ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рд░реВрдк рдореЗрдВ рдХреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реВрдБ?

рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╕реНрдЯрдо nginx.conf рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:

server {
    listen 80;
    location / {
        proxy_pass http://myapp:3000/;
    }
}

рдлрд┐рд░, рдорд╛рдЙрдВрдЯ рдХреА рдЧрдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде NGINX рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдПрдБ:

docker run --name nginxproxy -p 8080:80 -d -v /path/to/nginx.conf:/etc/nginx/conf.d/default.conf nginx

рдпрд╣ http://localhost:8080 рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдкреЛрд░реНрдЯ 3000) рддрдХ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░реЗрдЧрд╛ред

рдореИрдВ Docker Compose рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ NGINX рдХреЛ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реВрдБ?

рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ docker-compose.yml рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:

services:
  myapp:
    image: myappimage
    expose:
      - "3000"

  nginxproxy:
    image: nginx
    ports:
      - "8080:80"
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - myapp

рд╕реЗрд╡рд╛рдПрдБ рдЗрд╕ рдХрдорд╛рдВрдб рд╕реЗ рдЪрд▓рд╛рдПрдБ:

docker compose up -d

рдпрд╣ рдПрдХ рд╣реА рдХрдорд╛рдВрдб рдореЗрдВ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ NGINX рдкреНрд░реЙрдХреНрд╕реА рджреЛрдиреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред

рдореИрдВ Docker рдореЗрдВ NGINX рдХрдВрдЯреЗрдирд░ рдХреЛ рдХреИрд╕реЗ рд░реЛрдХреВрдБ рдФрд░ рд╣рдЯрд╛рдКрдБ?

рдЪрд▓ рд░рд╣реЗ NGINX рдХрдВрдЯреЗрдирд░ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

docker stop mynginx

рдХрдВрдЯреЗрдирд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛рдПрдБ:

docker rm mynginx

рдпрджрд┐ рдЖрдк рдХрдВрдЯреЗрдирд░ рдФрд░ рдЙрд╕рдХреА рдЗрдореЗрдЬ рджреЛрдиреЛрдВ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрдореЗрдЬ рдХреЛ рднреА рд╣рдЯрд╛рдПрдБ:

docker rmi nginx

рдпрд╣ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдХрдВрдЯреЗрдирд░ рдФрд░ рдЙрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЗрдореЗрдЬ рд╕рд╛рдлрд╝ рдХрд░ рджреЗрддрд╛ рд╣реИред

рд╡рд┐рд╖рдп