рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдпрд╣ рдкреЛрд╕реНрдЯ рдЗрд╕рд▓рд┐рдП рд▓рд┐рдЦреА рдЧрдИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдиреЗ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╛рд╕ рдФрд░ рдУрдкрдирд╢рд┐рдлреНрдЯ рдкрд░ рдРрд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдлреА рдмрд╛рддрдЪреАрдд рдХреА рдереАред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдордиреЗ рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рдХрд┐ "рд╕реБрдиреЛ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдХреЛрдб рдХреЛ рдХрд╣рд╛рдВ рдЪрд▓рд╛рдирд╛ рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ рдкрд░ рдпрд╛ рдПрдХреЗрдПрд╕ рдкрд░, рдИрдХреЗрдПрд╕ рдкрд░, рдХреБрдЫ рдХрд╕реНрдЯрдо рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдкрд░, рдпрд╛ рдХрд┐рд╕реА рднреА рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдкрд░ред (рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ KUK рдХрд╣рддреЗ рд╣реИрдВ) "рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд░рд▓ рд╣реИ, рд╡рд╣рд╛рдБ рдФрд░ рд╡рд╣рд╛рдБ рджреЛрдиреЛрдВред"

рдлрд┐рд░ рд╣рдордиреЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ "рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" рд▓реЗрдиреЗ рдФрд░ рдЗрд╕рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдХрд┐ KUC рдФрд░ Red Hat OpenShift рдХрдВрдЯреЗрдирд░ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (рдЗрд╕рдХреЗ рдмрд╛рдж, OCP рдпрд╛ рдмрд╕ OpenShift) рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ рдФрд░ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИред

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

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

рд╕рдореВрд╣реЛрдВ

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдХреЗрдпреВрдХреЗ-рдИ рдкрд░ рд╡рд┐рдзрд╛рдирд╕рднрд╛

рддреЛ, рдЪрд▓реЛ рдЪрд▓реЗрдВ

рдЪрд░рдг 1 - рд╣рдорд╛рд░реА рдХрдВрдЯреЗрдирд░ рдЫрд╡рд┐ рдмрдирд╛рдирд╛

рдЖрдЗрдП рдЕрдкрдиреЗ "рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" рдХреЛ рдорд┐рдиреАрдХреНрдпреВрдм рдкрд░ рддреИрдирд╛рдд рдХрд░рдХреЗ рд╢реБрд░реБрдЖрдд рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:

  1. 1. рдбреЙрдХрд░ рд╕реНрдерд╛рдкрд┐рдд.
  2. 2. рдЧрд┐рдЯ рд╕реНрдерд╛рдкрд┐рдд.
  3. 3. рд╕реНрдерд╛рдкрд┐рдд рдорд╛рд╡реЗрди (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдорд╡реАрдПрдирдбрдмреНрд▓реНрдпреВ рдмрд╛рдЗрдирд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред
  4. 4. рджрд░рдЕрд╕рд▓, рд╕реНрд░реЛрдд рд╣реА, рдпрд╛рдиреА. рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдХреНрд▓реЛрди github.com/gcolman/quarkus-hello-world.git

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

./mvnw quarkus:add-extension -Dextensions=тАЭcontainer-image-dockerтАЭ

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

./mvnw -X clean package -Dquarkus.container-image.build=true

рдмрд╕ рдЗрддрдирд╛ рд╣реА, рдЕрдм рдЖрдк рдбреЙрдХрд░ рд░рди рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рдХреЛ рдкреЛрд░реНрдЯ 8080 рдкрд░ рдореИрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

docker run -i тАФ rm -p 8080:8080 gcolman/quarkus-hello-world

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рддреЛ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╕рд╛рди рдФрд░ рд╕рд░рд▓ рдерд╛ред

рдЪрд░рдг 2 - рд╣рдорд╛рд░реЗ рдХрдВрдЯреЗрдирд░ рдХреЛ рдХрдВрдЯреЗрдирд░ рдЫрд╡рд┐ рднрдВрдбрд╛рд░ рдореЗрдВ рднреЗрдЬреЗрдВ

рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдЫрд╡рд┐ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ, рд╣рдорд╛рд░реЗ рд╕реНрдерд╛рдиреАрдп рдХрдВрдЯреЗрдирд░ рднрдВрдбрд╛рд░рдг рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИред рдпрджрд┐ рд╣рдо рдЗрд╕ рдЫрд╡рд┐ рдХреЛ рдЕрдкрдиреЗ COOK рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред Kubernetes рдореЗрдВ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо dockerhub рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдХреНрдпреЛрдВрдХрд┐, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдореБрдлрд╝реНрдд рд╣реИ, рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, (рд▓рдЧрднрдЧ) рд╣рд░ рдХреЛрдИ рдЗрд╕реЗ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рднреА рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдмрд╕ рдПрдХ рдбреЙрдХрд░рд╣рдм рдЦрд╛рддреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рддреЛ, рд╣рдо dockerhub рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреА рдЫрд╡рд┐ рд╡рд╣рд╛рдВ рднреЗрдЬрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдЪрд░рдг 3 - рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ

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

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рдорд┐рдиреАрдХреНрдпреВрдм рдХреНрд▓рд╕реНрдЯрд░ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ:

minikube start

рдЪрд░рдг 4 - рд╣рдорд╛рд░реЗ рдХрдВрдЯреЗрдирд░ рдЫрд╡рд┐ рдХреЛ рддреИрдирд╛рдд рдХрд░реЗрдВ

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

kubectl create deployment hello-quarkus тАФ image =gcolman/quarkus-hello-world:1.0.0-SNAPSHOT

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

рдЪрд░рдг 5 - рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рддрдХ рдЦреБрд▓реА рдкрд╣реБрдВрдЪ

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

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

kubectl expose deployment hello-quarkus тАФ type=NodePort тАФ port=8080

рдЖрдЗрдП рдПрдХреНрд╕рдкреЛрдЬрд╝ рдХрдорд╛рдВрдб рдХреЗ "-рдЯрд╛рдЗрдк" рд╡рд┐рдХрд▓реНрдк рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред

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

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

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

рдЪрд░рдг 6 - рдПрдХ рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

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

minikube addons enable ingress

рдЕрдм рд╣рдо рд╕рд┐рд░реНрдл рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдПрдХ Nginx рдЗрдирдЧреНрд░реЗрд╕ рдХрдВрдЯреНрд░реЛрд▓рд░ рдмрдирд╛рдПрдВрдЧреЗ, рдЬреЛ рд╣рдорд╛рд░реЗ рдорд┐рдиреАрдХреНрдпреВрдм рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдЕрдВрджрд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛:

ingress-nginx-controller-69ccf5d9d8-j5gs9 1/1 Running 1 33m

рдЪрд░рдг 7 - рдкреНрд░рд╡реЗрд╢ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдЕрдм рд╣рдореЗрдВ Nginx рдЗрдирдЧреНрд░реЗрд╕ рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╣реИрд▓реЛ-рдХреНрд╡рд╛рд░реНрдХрд╕ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХреЗред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдореЗрдВ рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

kubectl apply -f ingress.yml

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдЪреВрдБрдХрд┐ рд╣рдо рдпрд╣ рд╕рдм рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо рдЕрдкрдиреЗ рдорд┐рдиреАрдХреНрдпреВрдм рд╕реЗ рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░ рддрдХ http рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд░реВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЕрдкрдиреЗ рдиреЛрдб рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ /etc/hosts рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

192.168.99.100 hello-quarkus.info

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдЦреИрд░, рдпрд╣ рдЖрд╕рд╛рди рдерд╛, рд╣реИ рдирд╛? рдпрд╛ рд╕рдЪрдореБрдЪ рдирд╣реАрдВ?

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдУрдкрдирд╢рд┐рдлреНрдЯ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ (рдХреЛрдб рддреИрдпрд╛рд░ рдХрдВрдЯреЗрдирд░)

рдЕрдм рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рд╕рдм Red Hat OpenShift рдХрдВрдЯреЗрдирд░ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (OCP) рдкрд░ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдпрд╣рд╛рдБ, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд╣рдо рдпрд╣ рдХрд╣рдиреЗ рд╕реЗ рдмрдЪ рдирд╣реАрдВ рд╕рдХрддреЗ: "рдУрдкрдирд╢рд┐рдлреНрдЯ рдЕрджреНрднреБрдд рд╣реИ!"

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

рдЖрдЗрдП рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЧреБрдЬрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рддреЛ, рдорд┐рдиреАрдХреНрдпреВрдм рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдордиреЗ рдбреЙрдХрд░ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХреА... рд░реБрдХрд┐рдП, рдЕрдм рд╣рдореЗрдВ рдорд╢реАрди рдкрд░ рдбреЙрдХрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

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

рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ, рд╣реИ рдирд╛? рдУрдкрдирд╢рд┐рдлреНрдЯ рдкрд░ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдкрд░реЛрдХреНрдд рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдФрд░ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрддреА рд╣реИред

рдЪрд░рдг 1 - рдЕрдкрдирд╛ рдУрдкрдирд╢рд┐рдлреНрдЯ рдХреНрд▓рд╕реНрдЯрд░ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ

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

crc start

рдЪрд░рдг 2 - рдУрдкрдирд╢рд┐рдлреНрдЯ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВ рдФрд░ рддреИрдирд╛рдд рдХрд░реЗрдВ

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

OpenShift рдХреЛ рд╣рдореЗрд╢рд╛ рдХрдВрдЯреЗрдирд░реАрдХреГрдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХрдВрдЯреЗрдирд░ рдирд┐рд░реНрдорд╛рдг рд╣рдореЗрд╢рд╛ рд╕реЗ рдЗрд╕ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рдПрдХ рдЕрднрд┐рдиреНрди рдЕрдВрдЧ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдвреЗрд░ рд╕рд╛рд░реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╕рдВрд╕рд╛рдзрди рдореМрдЬреВрдж рд╣реИрдВред

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

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рджреЛ рдЪреАрдЬрд╝реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • рд╣рдорд╛рд░рд╛ рд╕реЛрд░реНрд╕ рдХреЛрдб git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣реИ
  • рдмрд┐рд▓реНрдбрд░ рдХреА рдЫрд╡рд┐ рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

Red Hat рдФрд░ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕реНрддрд░ рдкрд░ рдРрд╕реА рдХрдИ рдЫрд╡рд┐рдпрд╛рдВ рд╣реИрдВ, рдФрд░ рд╣рдо OpenJDK рдЫрд╡рд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдареАрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдПрдХ рдЬрд╛рд╡рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдк S2I рдмрд┐рд▓реНрдб рдХреЛ OpenShift рдбреЗрд╡рд▓рдкрд░ рдЧреНрд░рд╛рдлрд╝рд┐рдХрд▓ рдХрдВрд╕реЛрд▓ рдФрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рджреЛрдиреЛрдВ рд╕реЗ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдиреНрдпреВ-рдРрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдпрд╣ рдмрддрд╛рддреЗ рд╣реБрдП рдХрд┐ рдмрд┐рд▓реНрдбрд░ рдЫрд╡рд┐ рдФрд░ рд╣рдорд╛рд░рд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╣рд╛рдВ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

oc new-app registry.access.redhat.com/ubi8/openjdk-11:latest~https://github.com/gcolman/quarkus-hello-world.git

рдмрд╕, рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрди рдЧрдпрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ, S2I рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рдХрд┐рдпреЗ:

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

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

рдпрджрд┐ рдЖрдк рдХрдВрд╕реЛрд▓ рдореЗрдВ S2I рдХреЗ рд▓реЙрдиреНрдЪ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдмрд┐рд▓реНрдб рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░ рдмрд┐рд▓реНрдб рдкреЙрдб рдХреИрд╕реЗ рд▓реЙрдиреНрдЪ рд╣реЛрддрд╛ рд╣реИред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдЕрдм рдЖрдЗрдП рдмрд┐рд▓реНрдбрд░ рдкреЙрдб рд▓реЙрдЧ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ: рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдореЗрд╡реЗрди рдЕрдкрдирд╛ рдХрд╛рдо рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдЬрд╛рд╡рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдХреИрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

oc get service

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

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

рдЪрд░рдг 3 - рд╕реЗрд╡рд╛ рдХреЛ рдмрд╛рд╣рд░ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдВ

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

"рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" рдХреЗ рд▓рд┐рдП рдПрдХ рд░реВрдЯреЗрдмрд▓ FQDN рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП (рд╣рд╛рдБ, OpenShift рдХреЗ рдкрд╛рд╕ рд╕реЗрд╡рд╛ рдирд╛рдореЛрдВ рд╕реЗ рд░реВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ DNS рд╣реИ), рд╣рдо рдмрд╕ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░реЗрдВрдЧреЗ:

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

oc expose service quarkus-hello-world

рдпрджрд┐ рдЖрдк рдирд╡ рдирд┐рд░реНрдорд┐рдд рд░реВрдЯ рдХреЛ рджреЗрдЦреЗрдВ, рддреЛ рдЖрдк рд╡рд╣рд╛рдВ FQDN рдФрд░ рдЕрдиреНрдп рд░реВрдЯрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

oc get route

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рддрдХ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВ:

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдУрдкрдирд╢рд┐рдлреНрдЯ, рд╣рдордиреЗ рдЖрдкрдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА рдФрд░ рдЖрдкрдХреЛ рд╣рд▓реНрдХреЗ рдореЗрдВ рд▓рд┐рдпрд╛

рд▓реЗрдХрд┐рди рдЕрдм рдпрд╣ рд╕рдЪрдореБрдЪ рдЖрд╕рд╛рди рдерд╛!

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

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

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ