рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рд╣реЗ рдкреЛрд╕реНрдЯ рд▓рд┐рд╣реАрд▓реЗ рдЖрд╣реЗ рдХрд╛рд░рдг рдЖрдордЪреНрдпрд╛ рдХрд░реНрдордЪрд╛рд░реНтАНрдпрд╛рдВрдЪреЗ рдХреНрд▓рд╛рдпрдВрдЯрд╢реА Kubernetes рд╡рд░ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯ рдЖрдгрд┐ OpenShift рд╡рд░реАрд▓ рдЕрд╢рд╛ рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯрдЪреНрдпрд╛ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдмрджреНрджрд▓ рдмрд░реЗрдЪ рд╕рдВрднрд╛рд╖рдг рд╣реЛрддреЗ.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдЖрдореНрд╣реА рд╕рд╛рдорд╛рдиреНрдпрдд: рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рд╣реЗ рдлрдХреНрдд рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдЖрд╣реЗ рдпрд╛ рдкреНрд░рдмрдВрдзрд╛рдиреЗ рд╕реБрд░реБрд╡рд╛рдд рдХрд░рддреЛ рдЖрдгрд┐ Microsoft AKS рдХрд┐рдВрд╡рд╛ Amazon EKS рд╕рд╛рд░рдЦреЗ OpenShift рдЖрдзреАрдЪ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдЖрд╣реЗ. рдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдордЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рдлрд╛рдпрджреЗ рдЖрд╣реЗрдд, рд╡рд┐рд╢рд┐рд╖реНрдЯ рд▓рдХреНрд╖реНрдпрд┐рдд рдкреНрд░реЗрдХреНрд╖рдХрд╛рдВрд╕рд╛рдареА. рдЖрдгрд┐ рдпрд╛рдирдВрддрд░, рд╕рдВрднрд╛рд╖рдг рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдордЪреНрдпрд╛ рд╕рд╛рдорд░реНрдереНрдп рдЖрдгрд┐ рдХрдордХреБрд╡рддрдкрдгрд╛рдЪреА рддреБрд▓рдирд╛ рдХрд░рдгреНрдпрд╛рдХрдбреЗ рд╡рд│рддреЗ.

рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдЖрдореНрд╣реА "рдРрдХрд╛, рдХреЛрдб рдХреБрдареЗ рдЪрд╛рд▓рд╡рд╛рд╡рд╛ рд╣реЗ рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рдирд╛рд╣реА, рдУрдкрдирд╢рд┐рдлреНрдЯрд╡рд░ рдХрд┐рдВрд╡рд╛ AKS рд╡рд░, EKS рд╡рд░, рдХрд╛рд╣реА рд╕рд╛рдиреБрдХреВрд▓ рдХреБрдмрд░рдиреЗрдЯреНрд╕рд╡рд░, рдХрд┐рдВрд╡рд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рд╡рд░" рдЕрд╢рд╛ рдирд┐рд╖реНрдХрд░реНрд╖рд╛рд╕рд╣ рд╣реЗ рдкреЛрд╕реНрдЯ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛. (рд╕рдВрдХреНрд╖рд┐рдкреНрддрддреЗрд╕рд╛рдареА рдпрд╛рд▓рд╛ KUK рдореНрд╣рдгреВрдпрд╛) "рд╣реЗ рдЦрд░реЛрдЦрд░ рд╕реЛрдкреЗ рдЖрд╣реЗ, рддреЗрдереЗ рдЖрдгрд┐ рддреЗрдереЗ рджреЛрдиреНрд╣реА."

рдордЧ рдЖрдореНрд╣реА рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкрд╛ тАЬрд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдбтАЭ рдШреНрдпрд╛рдпрдЪреЗ рдЖрдгрд┐ рддреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рд╡рд╛рдкрд░реВрди KUC рдЖрдгрд┐ Red Hat OpenShift рдХрдВрдЯреЗрдирд░ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо (рдпрд╛рдкреБрдвреЗ OCP рдХрд┐рдВрд╡рд╛ рдлрдХреНрдд OpenShift) рдордзреНрдпреЗ рдХрд╛рдп рдлрд░рдХ рдЖрд╣реЗ рдЖрдгрд┐ рдХрд╛рдп рдлрд░рдХ рдЖрд╣реЗ рд╣реЗ рджрд╛рдЦрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдпреЛрдЬрдирд╛ рдЖрдЦрд▓реА.

рддрдерд╛рдкрд┐, рдЖрдореНрд╣реА рд╣реЗ рдкреЛрд╕реНрдЯ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗ, рдЖрдореНрд╣рд╛рд▓рд╛ рдЬрд╛рдгрд╡рд▓реЗ рдХреА рдЖрдореНрд╣рд╛рд▓рд╛ рдУрдкрдирд╢рд┐рдлреНрдЯ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЗрддрдХреА рд╕рд╡рдп рдЭрд╛рд▓реА рдЖрд╣реЗ рдХреА рддреЗ рдХрд╕реЗ рд╡рд╛рдврд▓реЗ рдЖрдгрд┐ рдПрдХ рдЖрд╢реНрдЪрд░реНрдпрдХрд╛рд░рдХ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдмрдирд▓реЗ рдЬреЗ рдХреЗрд╡рд│ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рд╡рд┐рддрд░рдгрд╛рдкреЗрдХреНрд╖рд╛ рдмрд░реЗрдЪ рдХрд╛рд╣реА рдмрдирд▓реЗ рдЖрд╣реЗ рд╣реЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рдордЬрд▓реЗ рдирд╛рд╣реА. рдЖрдореНрд╣реА OpenShift рдЪреА рдкрд░рд┐рдкрдХреНрд╡рддрд╛ рдЖрдгрд┐ рд╕рд╛рдзреЗрдкрдгрд╛ рдЧреГрд╣реАрдд рдзрд░рддреЛ рдЖрдгрд┐ рддреНрдпрд╛рдЪреА рдЪрдордХ рдЧрдорд╛рд╡рддреЛ.

рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рд╕рдХреНрд░рд┐рдп рдкрд╢реНрдЪрд╛рддреНрддрд╛рдк рдХрд░рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ, рдЖрдгрд┐ рдЖрддрд╛ рдЖрдореНрд╣реА KUK рдЖрдгрд┐ OpenShift рд╡рд░ рдЖрдордЪреНрдпрд╛ "рд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдб" рдЪреНрдпрд╛ рдХрдорд┐рд╢рдирд┐рдВрдЧрдЪреА рдЯрдкреНрдкреНрдпрд╛рдЯрдкреНрдкреНрдпрд╛рдиреЗ рддреБрд▓рдирд╛ рдХрд░реВ рдЖрдгрд┐ рдЖрдореНрд╣реА рд╣реЗ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рд╡рд╕реНрддреБрдирд┐рд╖реНрдардкрдгреЗ рдХрд░реВ (рдЪрд╛рдВрдЧрд▓реЗ, рдХрд╛рд╣реА рд╡реЗрд│рд╛ рджрд░реНрд╢рд╡рд┐рд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп. рд╡рд┐рд╖рдпрд╛рдХрдбреЗ рд╡реИрдпрдХреНрддрд┐рдХ рджреГрд╖реНрдЯреАрдХреЛрди). рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рдпрд╛ рд╡рд┐рд╖рдпрд╛рд╡рд░ рдирд┐рд╡реНрд╡рд│ рд╡реНрдпрдХреНрддрд┐рдирд┐рд╖реНрда рдорддрд╛рдд рд╕реНрд╡рд╛рд░рд╕реНрдп рдЕрд╕реЗрд▓ рддрд░ рддреБрдореНрд╣реА рддреЗ рд╡рд╛рдЪреВ рд╢рдХрддрд╛ рдпреЗрдереЗ (EN). рдЖрдгрд┐ рдпрд╛ рдкреЛрд╕реНрдЯрдордзреНрдпреЗ рдЖрдореНрд╣реА рд╡рд╕реНрддреБрд╕реНрдерд┐рддреА рдЖрдгрд┐ рдлрдХреНрдд рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрд▓рд╛ рдЪрд┐рдХрдЯреВрди рд░рд╛рд╣реВ.

рдХреНрд▓рд╕реНрдЯрд░реНрд╕

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

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

KUK-e рд╡рд░ рд╡рд┐рдзрд╛рдирд╕рднрд╛

рддрд░, рдЪрд▓рд╛ рдЬрд╛рдКрдпрд╛.

рдкрд╛рдпрд░реА 1 - рдЖрдордЪреА рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рдгреЗ

рдЪрд▓рд╛ рдорд┐рдиреАрдХреНрдпреБрдмрд╡рд░ рдЖрдордЪреЗ тАЬрд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдбтАЭ рдЙрдкрдпреЛрдЬрд┐рдд рдХрд░реВрди рд╕реБрд░реБрд╡рд╛рдд рдХрд░реВрдпрд╛. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реЗрд▓рдГ

  1. 1. рдбреЙрдХрд░ рд╕реНрдерд╛рдкрд┐рдд.
  2. 2. Git рд╕реНрдерд╛рдкрд┐рдд.
  3. 3. рдорд╛рд╡реЗрди рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ (рдЦрд░рдВ рддрд░, рд╣рд╛ рдкреНрд░рдХрд▓реНрдк mvnw рдмрд╛рдпрдирд░реА рд╡рд╛рдкрд░рддреЛ, рддреНрдпрд╛рдореБрд│реЗ рддреБрдореНрд╣реА рддреНрдпрд╛рд╢рд┐рд╡рд╛рдп рдХрд░реВ рд╢рдХрддрд╛).
  4. 4. рд╡рд╛рд╕реНрддрд╡рд┐рдХ, рд╕реНрддреНрд░реЛрдд рд╕реНрд╡рддрдГ, рдореНрд╣рдгрдЬреЗ. рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдХреНрд▓реЛрди github.com/gcolman/quarkus-hello-world.git

рдкрд╣рд┐рд▓реА рдкрд╛рдпрд░реА рдореНрд╣рдгрдЬреЗ рдХреНрд╡рд╛рд░реНрдХрд╕ рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░рдгреЗ. рддреБрдореНрд╣реА рдХрдзреАрд╣реА Quarkus.io рд╕рд╣ рдХрд╛рдо рдХреЗрд▓реЗ рдирд╕реЗрд▓ рддрд░ рдШрд╛рдмрд░реВ рдирдХрд╛ - рд╣реЗ рд╕реЛрдкреЗ рдЖрд╣реЗ. рддреБрдореНрд╣реА рдлрдХреНрдд рдкреНрд░рдХрд▓реНрдкрд╛рдд рд╡рд╛рдкрд░реВ рдЗрдЪреНрдЫрд┐рдд рдЕрд╕рд▓реЗрд▓реЗ рдШрдЯрдХ рдирд┐рд╡рдбрд╛ (RestEasy, Hibernate, Amazon SQS, Camel, рдЗ.), рдЖрдгрд┐ рдирдВрддрд░ Quarkus рд╕реНрд╡рддрдГ, рддреБрдордЪреНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рд╕рд╣рднрд╛рдЧрд╛рд╢рд┐рд╡рд╛рдп, maven archetype рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рддреЗ рдЖрдгрд┐ рд╕рд░реНрд╡рдХрд╛рд╣реА github рд╡рд░ рдареЗрд╡рддреЗ. рдореНрд╣рдгрдЬреЗрдЪ, рдЕрдХреНрд╖рд░рд╢рдГ рдорд╛рдЙрд╕рдЪреНрдпрд╛ рдПрдХрд╛ рдХреНрд▓рд┐рдХрд╡рд░ рдЖрдгрд┐ рддреБрдореНрд╣реА рдкреВрд░реНрдг рдХреЗрд▓реЗ. рдореНрд╣рдгреВрдирдЪ рдЖрдореНрд╣рд╛рд▓рд╛ рдХреНрд╡рд╛рд░реНрдХрд╕ рдЖрд╡рдбрддрд╛рдд.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬрдордзреНрдпреЗ рдЖрдордЪреЗ "рд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдб" рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкрд╛ рдорд╛рд░реНрдЧ рдореНрд╣рдгрдЬреЗ рдбреЙрдХрд░рд╕рд╛рдареА рдХреНрд╡рд╛рд░реНрдХрд╕-рдорд╛рд╡реЗрди рд╡рд┐рд╕реНрддрд╛рд░ рд╡рд╛рдкрд░рдгреЗ, рдЬреЗ рд╕рд░реНрд╡ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдп рдХрд░реЗрд▓. рдХреНрд╡рд╛рд░реНрдХрд╕рдЪреНрдпрд╛ рдЖрдЧрдордирд╛рдиреЗ, рд╣реЗ рдЦрд░реЛрдЦрд░ рд╕реЛрдкреЗ рдЖрдгрд┐ рд╕реЛрдкреЗ рдЭрд╛рд▓реЗ рдЖрд╣реЗ: рдХрдВрдЯреЗрдирд░-рдЗрдореЗрдЬ-рдбреЙрдХрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдЬреЛрдбрд╛ рдЖрдгрд┐ рддреБрдореНрд╣реА рдореЕрд╡реЗрди рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛.

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

рд╢реЗрд╡рдЯреА, рдЖрдореНрд╣реА рдорд╛рд╡реЗрди рд╡рд╛рдкрд░реВрди рдЖрдордЪреА рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рддреЛ. рдкрд░рд┐рдгрд╛рдореА, рдЖрдордЪрд╛ рд╕реЛрд░реНрд╕ рдХреЛрдб рд░реЗрдбреАрдореЗрдб рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬрдордзреНрдпреЗ рдмрджрд▓рддреЛ рдЬреЛ рдХрдВрдЯреЗрдирд░ рд░рдирдЯрд╛рдЗрдо рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рдЖрдзреАрдкрд╛рд╕реВрди рдЪрд╛рд▓рд╡рд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

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

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

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдХрдВрдЯреЗрдирд░ рдЙрджрд╛рд╣рд░рдг рд╕реБрд░реВ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рдЖрдордЪреА рд╕реЗрд╡рд╛ рдЪрд╛рд▓реВ рдЖрд╣реЗ рдХреА рдХрд░реНрд▓ рдХрдорд╛рдВрдб рддрдкрд╛рд╕рдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ:

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рддреНрдпрд╛рдореБрд│реЗ рд╕рд░реНрд╡рдХрд╛рд╣реА рдХрд╛рд░реНрдп рдХрд░рддреЗ рдЖрдгрд┐ рддреЗ рдЦрд░реЛрдЦрд░ рд╕реЛрдкреЗ рдЖрдгрд┐ рд╕реЛрдкреЗ рд╣реЛрддреЗ.

рдкрд╛рдпрд░реА 2 тАУ рдЖрдордЪрд╛ рдХрдВрдЯреЗрдирд░ рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рдкрд╛рдард╡рд╛

рдЖрддреНрддрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реА рдкреНрд░рддрд┐рдорд╛ рдЖрдордЪреНрдпрд╛ рд╕реНрдерд╛рдирд┐рдХ рдХрдВрдЯреЗрдирд░ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рд╕реНрдерд╛рдирд┐рдХрд░рд┐рддреНрдпрд╛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реА рдЖрд╣реЗ. рдЬрд░ рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реА рдкреНрд░рддрд┐рдорд╛ рдЖрдордЪреНрдпрд╛ COOK рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рд╡рд╛рдкрд░рд╛рдпрдЪреА рдЕрд╕реЗрд▓, рддрд░ рддреА рдЗрддрд░ рдХреЛрдард▓реНрдпрд╛рддрд░реА рднрд╛рдВрдбрд╛рд░рд╛рдд рдареЗрд╡рд▓реА рдкрд╛рд╣рд┐рдЬреЗ. рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдордзреНрдпреЗ рдЕрд╢реА рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рдирд╛рд╣реАрдд, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдбреЙрдХрд░рд╣рдм рд╡рд╛рдкрд░реВ. рдХрд╛рд░рдг, рдкреНрд░рдердо, рддреЗ рд╡рд┐рдирд╛рдореВрд▓реНрдп рдЖрд╣реЗ, рдЖрдгрд┐ рджреБрд╕рд░реЗ рдореНрд╣рдгрдЬреЗ, (рдЬрд╡рд│рдЬрд╡рд│) рдкреНрд░рддреНрдпреЗрдХрдЬрдг рддреЗ рдХрд░рддреЛ.

рд╣реЗ рджреЗрдЦреАрд▓ рдЕрдЧрджреА рд╕реЛрдкреЗ рдЖрд╣реЗ, рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдбреЙрдХрд░рд╣рдм рдЦрд╛рддреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ.

рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА рдбреЙрдХрд░рд╣рдм рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рдЖрдордЪреА рдкреНрд░рддрд┐рдорд╛ рддреЗрдереЗ рдкрд╛рдард╡рддреЛ.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдкрд╛рдпрд░реА 3 - Kubernetes рд▓рд╛рдБрдЪ рдХрд░рд╛

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

рдкреНрд░рдердо, рдорд┐рдиреАрдХреНрдпреВрдм рдХреНрд▓рд╕реНрдЯрд░ рд▓рд╛рдБрдЪ рдХрд░реВрдпрд╛:

minikube start

рдЪрд░рдг 4 - рдЖрдордЪреА рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдорд╛ рддреИрдирд╛рдд рдХрд░рд╛

рдЖрддрд╛ рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪрд╛ рдХреЛрдб рдЖрдгрд┐ рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬ kubernetes рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ. рджреБрд╕рд▒реНрдпрд╛ рд╢рдмреНрджрд╛рдВрдд, рдЖрдореНрд╣рд╛рд▓рд╛ рдбреЙрдХрд░рд╣рдмрд╡рд░реАрд▓ рдЖрдордЪреНрдпрд╛ рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдореЗрдХрдбреЗ рдирд┐рд░реНрджреЗрд╢ рдХрд░рдгрд╛рд░реА рдкреЙрдб рдЖрдгрд┐ рдЙрдкрдпреЛрдЬрди рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╣реЗ рдХрд░рдгреНрдпрд╛рдЪрд╛ рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкрд╛ рдорд╛рд░реНрдЧ рдореНрд╣рдгрдЬреЗ рдЖрдордЪреНрдпрд╛ рдкреНрд░рддрд┐рдореЗрдХрдбреЗ рдирд┐рд░реНрджреЗрд╢ рдХрд░рдгрд╛рд░реА create deployment рдХрдорд╛рдВрдб рдЪрд╛рд▓рд╡рдгреЗ:

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

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

рдкрд╛рдпрд░реА 5 - рдЖрдордЪреНрдпрд╛ рд╕реЗрд╡реЗрдЪрд╛ рдкреНрд░рд╡реЗрд╢ рдЙрдШрдбрд╛

рдЖрддрд╛ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЙрдкрдпреЛрдЬрд┐рдд рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдорд╛ рдЖрд╣реЗ, рдпрд╛ рд░реЗрд╕реНрдЯрдлреБрд▓ рд╕реЗрд╡реЗрдЪрд╛ рдмрд╛рд╣реНрдп рдкреНрд░рд╡реЗрд╢ рдХрд╕рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рд╛рдпрдЪрд╛ рдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ, рдЬреА рдЦрд░рдВ рддрд░ рдЖрдордЪреНрдпрд╛ рдХреЛрдбрдордзреНрдпреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗрд▓реЗрд▓реА рдЖрд╣реЗ.

рдпреЗрдереЗ рдЕрдиреЗрдХ рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╕реЗрд╡рд╛ рдЖрдгрд┐ рдПрдВрдбрдкреЙрдЗрдВрдЯреНрд╕ рдпрд╛рдВрд╕рд╛рд░рдЦреЗ рдпреЛрдЧреНрдп Kubernetes рдШрдЯрдХ рдЖрдкреЛрдЖрдк рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА expose рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рд╡рд╛рд╕реНрддрд╡рд┐рдХ, рдЖрдордЪреНрдпрд╛ рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдСрдмреНрдЬреЗрдХреНрдЯрд╕рд╛рдареА expose рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░реВрди рдЖрдореНрд╣реА рд╣реЗрдЪ рдХрд░реВ:

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

рдПрдХреНрд╕рдкреЛрдЬ рдХрдорд╛рдВрдбрдЪрд╛ "-type" рдкрд░реНрдпрд╛рдп рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рдереЛрдбрд╛ рд╡реЗрд│ рдШреЗрдК рдпрд╛.

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

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд▓рд┐рд╣реВрди type=рд▓реЛрдбрдмреЕрд▓рдиреНрд╕рд░, рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ Kubernetes рдХреНрд▓рд╕реНрдЯрд░рд╢реА рдХрдиреЗрдХреНрдЯ рд╣реЛрдгреНрдпрд╛рд╕рд╛рдареА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдбрдордзреНрдпреЗ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░рдЪреА рддрд░рддреВрдж рдХрд░рддреЛ. рд╣реЗ рдЕрд░реНрдерд╛рддрдЪ рдЙрддреНрддрдо рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдХреА рдЕрд╕реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдПрдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдбрд╢реА рдХрд╛рдЯреЗрдХреЛрд░рдкрдгреЗ рдмрд╛рдВрдзрд▓реЗ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдЪреНрдпрд╛ рдШрдЯрдирд╛рдВрдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХрд░рдгреЗ рдЕрдзрд┐рдХ рдХрдареАрдг рд╣реЛрдИрд▓.

рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд type=NodePort, рдореНрд╣рдгрдЬреЗ, рдЖрдордЪреА рд╕реЗрд╡рд╛ рдиреЛрдбрдЪрд╛ IP рдкрддреНрддрд╛ рдЖрдгрд┐ рдкреЛрд░реНрдЯ рдирдВрдмрд░ рджреНрд╡рд╛рд░реЗ рдНрдХреНрд╕реЗрд╕ рдХреЗрд▓реА рдЬрд╛рддреЗ. рд╣рд╛ рдкрд░реНрдпрд╛рдп рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЛрдгрддреЗрд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдврдЧ рди рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ, рдкрд░рдВрддреБ рддреНрдпрд╛рд╕рд╛рдареА рдЕрдиреЗрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд╛рдпрд▒реНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд. рд╕рд░реНрд╡рдкреНрд░рдердо, рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░ рд╣рд╡рд╛ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ NGINX рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░ рддреИрдирд╛рдд рдХрд░реВ.

рдкрд╛рдпрд░реА 6 - рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛

minikube рдордзреНрдпреЗ рдЕрдиреЗрдХ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдлрдВрдХреНрд╢рдиреНрд╕ рдЖрд╣реЗрдд рдЬреЗ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдШрдЯрдХ рддрдпрд╛рд░ рдХрд░рдгреЗ рд╕реЛрдкреЗ рдХрд░рддрд╛рдд, рдЬрд╕реЗ рдХреА рдкреНрд░рд╡реЗрд╢ рдирд┐рдпрдВрддреНрд░рдХ. Minikube Nginx рдЗрдВрдЧреНрд░реЗрд╕ рдХрдВрдЯреНрд░реЛрд▓рд░рд╕рд╣ рдПрдХрддреНрд░рд┐рдд рдпреЗрддреЗ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рддреЗ рд╕рдХреНрд╖рдо рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ рдЖрдгрд┐ рддреЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ.

minikube addons enable ingress

рдЖрддрд╛ рдЖрдореНрд╣реА рдлрдХреНрдд рдПрдХрд╛ рдХрдорд╛рдВрдбрд╕рд╣ рдПрдХ Nginx рдкреНрд░рд╡реЗрд╢ рдирд┐рдпрдВрддреНрд░рдХ рддрдпрд╛рд░ рдХрд░реВ, рдЬреЛ рдЖрдордЪреНрдпрд╛ minikube рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдХрд╛рд░реНрдп рдХрд░реЗрд▓:

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

рдкрд╛рдпрд░реА 7 - рдкреНрд░рд╡реЗрд╢ рд╕реЗрдЯ рдХрд░рдгреЗ

рдЖрддрд╛ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ Nginx рдЗрдВрдЧреНрд░реЗрд╕ рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЬреЗрдгреЗрдХрд░реВрди рддреЗ рд╣реЕрд▓реЛ-рдХреНрд╡рд╛рд░реНрдХрд╕ рд╡рд┐рдирдВрддреНрдпрд╛ рд╕реНрд╡реАрдХрд╛рд░реЗрд▓.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдЖрдгрд┐ рд╢реЗрд╡рдЯреА, рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд▓рд╛рдЧреВ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

kubectl apply -f ingress.yml

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдЖрдореНрд╣реА рд╣реЗ рд╕рд░реНрд╡ рдЖрдордЪреНрдпрд╛ рд╕реНрд╡рдд:рдЪреНрдпрд╛ рд╕рдВрдЧрдгрдХрд╛рд╡рд░ рдХрд░рдд рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдорд┐рдиреАрдХреНрдпреБрдмрд▓рд╛ HTTP рд╡рд┐рдирдВрддреНрдпрд╛ NGINX рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░рд╡рд░ рд░реВрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдордЪреНрдпрд╛ рдиреЛрдбрдЪрд╛ IP рдкрддреНрддрд╛ /etc/ рд╣реЛрд╕реНрдЯ рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЬреЛрдбрддреЛ.

192.168.99.100 hello-quarkus.info

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

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдмрд░рдВ, рддреЗ рд╕реЛрдкреЗ рд╣реЛрддреЗ, рдмрд░реЛрдмрд░? рдХрд┐рдВрд╡рд╛ рдЦрд░реЛрдЦрд░ рдирд╛рд╣реА?

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

рдЖрддрд╛ рд╣реЗ рд╕рд░реНрд╡ Red Hat OpenShift рдХрдВрдЯреЗрдирд░ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо (OCP) рд╡рд░ рдХрд╕реЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рддреЗ рдкрд╛рд╣реВ.

minikube рдкреНрд░рдорд╛рдгреЗ, рдЖрдореНрд╣реА рдХреЛрдб рд░реЗрдбреА рдХрдВрдЯреЗрдирд░реНрд╕ (CRC) рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд╕рд┐рдВрдЧрд▓-рдиреЛрдб рдУрдкрдирд╢рд┐рдлреНрдЯ рдХреНрд▓рд╕реНрдЯрд░ рдбрд┐рдЭрд╛рдЗрди рдирд┐рд╡рдбрддреЛ. рдкреВрд░реНрд╡реА, рдпрд╛рд▓рд╛ рдорд┐рдирд┐рд╢рд┐рдлреНрдЯ рдореНрд╣рдЯрд▓реЗ рдЬрд╛рдд рдЕрд╕реЗ рдЖрдгрд┐ рддреЗ рдУрдкрдирд╢рд┐рдлреНрдЯ рдУрд░рд┐рдЬрд┐рди рдкреНрд░рдХрд▓реНрдкрд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреЗ, рдкрд░рдВрддреБ рдЖрддрд╛ рддреЗ рд╕реАрдЖрд░рд╕реА рдЖрд╣реЗ рдЖрдгрд┐ рд░реЗрдб рд╣реЕрдЯрдЪреНрдпрд╛ рдУрдкрдирд╢рд┐рдлреНрдЯ рдХрдВрдЯреЗрдирд░ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЖрд╣реЗ.

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

рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛, рдЖрдореНрд╣реА рд╣реЗ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдХреА OpenShift рд╡рд░реАрд▓ рд╡рд┐рдХрд╛рд╕ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рд╡рд░реАрд▓ рд╡рд┐рдХрд╛рд╕рд╛рдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│рд╛ рдирд╛рд╣реА. рдЖрдгрд┐ рдереЛрдбрдХреНрдпрд╛рдд рд╣реЗ рдЕрд╕реЗ рдЖрд╣реЗ. рдкрд░рдВрддреБ рд╣реЗ рдкреЛрд╕реНрдЯ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрдд, рддреБрдордЪреНрдпрд╛рдХрдбреЗ OpenShift рдирд╕рддрд╛рдирд╛ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд┐рддреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╣рд╛рд▓рдЪрд╛рд▓реА рдХрд░рд╛рд╡реНрдпрд╛ рд▓рд╛рдЧрддреАрд▓ рд╣реЗ рдЖрдореНрд╣реА рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд▓реЗ рдЖрдгрд┐ рдореНрд╣рдгреВрдирдЪ, рдкреБрдиреНрд╣рд╛, рд╣реЗ рдЖрд╢реНрдЪрд░реНрдпрдХрд╛рд░рдХ рдЖрд╣реЗ. рдЬреЗрд╡реНрд╣рд╛ рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕рд╣рдЬрддреЗрдиреЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рддреЗрд╡реНрд╣рд╛ рдЖрдореНрд╣рд╛рд▓рд╛ рддреЗ рдЖрд╡рдбрддреЗ рдЖрдгрд┐ minikube рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд OpenShift рд╡рд░ рдЙрдкрдпреЛрдЬрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рдЪрд╛рд▓рд╡рдгреЗ рд╣реЗ рдЖрдордЪреЗ рдЙрджрд╛рд╣рд░рдг рдХрд┐рддреА рд╕реЛрдкреЗ рдЖрд╣реЗ рд╣реЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реЗ рдкреЛрд╕реНрдЯ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕ рдкреНрд░рд╡реГрддреНрдд рдХрд░рддреЗ.

рдЪрд▓рд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрддреВрди рдЬрд╛рдК рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдХрд╛рдп рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ рддреЗ рдкрд╛рд╣реВрдпрд╛.

рддрд░, рдорд┐рдиреАрдХреБрдм рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рдЖрдореНрд╣реА рдбреЙрдХрд░рдиреЗ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реА... рдерд╛рдВрдмрд╛, рдЖрдореНрд╣рд╛рд▓рд╛ рдпрд╛рдкреБрдвреЗ рдорд╢реАрдирд╡рд░ рдбреЙрдХрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА.

рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕реНрдерд╛рдирд┐рдХ рдЧрд┐рдЯрдЪреА рдЧрд░рдЬ рдирд╛рд╣реА.
рдЖрдгрд┐ рдорд╛рд╡реЗрдирдЪреА рдЧрд░рдЬ рдирд╛рд╣реА.
рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЖрдкрд▓реНрдпрд╛ рд╣рд╛рддрд╛рдВрдиреА рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА.
рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░ рдкреНрд░рддрд┐рдорд╛рдВрдЪреЗ рдХреЛрдгрддреЗрд╣реА рднрд╛рдВрдбрд╛рд░ рд╢реЛрдзрдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА.
рдЖрдгрд┐ рдкреНрд░рд╡реЗрд╢ рдирд┐рдпрдВрддреНрд░рдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА.
рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкреНрд░рд╡реЗрд╢ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА.

рддреБрд▓рд╛ рд╕рдордЬрд▓реЗ, рдмрд░реЛрдмрд░? OpenShift рд╡рд░ рдЖрдордЪрд╛ рдЕрд░реНрдЬ рдЙрдкрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд░реАрд▓рдкреИрдХреА рдХрд╢рд╛рдЪреАрд╣реА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА. рдЖрдгрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рддрдГрдЪ рдпрд╛рд╕рд╛рд░рдЦреА рджрд┐рд╕рддреЗ.

рдкрд╛рдпрд░реА 1 - рддреБрдордЪрд╛ OpenShift рдХреНрд▓рд╕реНрдЯрд░ рд▓рд╛рдБрдЪ рдХрд░рд╛

рдЖрдореНрд╣реА Red Hat рдордзреАрд▓ рдХреЛрдб рд░реЗрдбреА рдХрдВрдЯреЗрдирд░ рд╡рд╛рдкрд░рддреЛ, рдЬреЗ рдореВрд▓рдд: рд╕рдорд╛рди Minikube рдЖрд╣реЗ, рдкрд░рдВрддреБ рдХреЗрд╡рд│ рдкреВрд░реНрдг рд╡рд╛рдв рдЭрд╛рд▓реЗрд▓реНрдпрд╛ рд╕рд┐рдВрдЧрд▓-рдиреЛрдб рдУрдкрдирд╢рд┐рдлреНрдЯ рдХреНрд▓рд╕реНрдЯрд░рд╕рд╣.

crc start

рдкрд╛рдпрд░реА 2 - OpenShift рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рддрдпрд╛рд░ рдХрд░рд╛ рдЖрдгрд┐ рддреИрдирд╛рдд рдХрд░рд╛

рдпрд╛ рдкрд╛рдпрд░реАрд╡рд░рдЪ рдУрдкрдирд╢рд┐рдлреНрдЯрдЪреА рд╕рд╛рдзреЗрдкрдгрд╛ рдЖрдгрд┐ рд╕реБрд╡рд┐рдзрд╛ рд╕рд░реНрд╡ рд╡реИрднрд╡рд╛рдд рдкреНрд░рдХрдЯ рдЭрд╛рд▓реА рдЖрд╣реЗ. рд╕рд░реНрд╡ Kubernetes рд╡рд┐рддрд░рдгрд╛рдкреНрд░рдорд╛рдгреЗ, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреЗ рдЕрдиреЗрдХ рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд. рдЖрдгрд┐, KUK рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдЖрдореНрд╣реА рд╡рд┐рд╢реЗрд╖рддрдГ рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкрд╛ рдирд┐рд╡рдбрддреЛ.

OpenShift рдиреЗрд╣рдореА рдХрдВрдЯреЗрдирд░реАрдХреГрдд рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рд╡реНрдпрд╛рд╕рдкреАрда рдореНрд╣рдгреВрди рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. рдХрдВрдЯреЗрдирд░ рдмрд┐рд▓реНрдбрд┐рдВрдЧ рд╣рд╛ рдиреЗрд╣рдореАрдЪ рдпрд╛ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдордЪрд╛ рдЕрд╡рд┐рднрд╛рдЬреНрдп рднрд╛рдЧ рд░рд╛рд╣рд┐рд▓рд╛ рдЖрд╣реЗ, рддреНрдпрд╛рдореБрд│реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рдорд╛рдВрд╕рд╛рдареА рдЕрддрд┐рд░рд┐рдХреНрдд рдХреБрдмрд░рдиреЗрдЯ рд╕рдВрд╕рд╛рдзрдиреЗ рдЖрд╣реЗрдд.

рдЖрдореНрд╣реА OpenShift рдЪреА рд╕реЛрд░реНрд╕ 2 рдЗрдореЗрдЬ (S2I) рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡рд╛рдкрд░рдгрд╛рд░ рдЖрд╣реЛрдд, рдЬреНрдпрд╛рдордзреНрдпреЗ рдЖрдордЪрд╛ рд╕реНрд░реЛрдд (рдХреЛрдб рдХрд┐рдВрд╡рд╛ рдмрд╛рдпрдирд░реА) рдШреЗрдгреНрдпрд╛рдЪреЗ рдЖрдгрд┐ рдУрдкрдирд╢рд┐рдлреНрдЯ рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рдЪрд╛рд▓рдгрд╛рд░реНтАНрдпрд╛ рдХрдВрдЯреЗрдирд░рд╛рдЗрдЬреНрдб рдЗрдореЗрдЬрдордзреНрдпреЗ рдмрджрд▓рдгреНрдпрд╛рдЪреЗ рд╡реЗрдЧрд╡реЗрдЧрд│реЗ рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд.

рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣рд╛рд▓рд╛ рджреЛрди рдЧреЛрд╖реНрдЯреАрдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:

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

Red Hat рджреНрд╡рд╛рд░реЗ рдЖрдгрд┐ рд╕рдореБрджрд╛рдп рд╕реНрддрд░рд╛рд╡рд░ рдЕрд╢рд╛ рдЕрдиреЗрдХ рдкреНрд░рддрд┐рдорд╛ рдЖрд╣реЗрдд рдЖрдгрд┐ рдЖрдореНрд╣реА OpenJDK рдкреНрд░рддрд┐рдорд╛ рд╡рд╛рдкрд░реВ, рдХрд╛рд░рдг рдореА Java рдНрдкреНрд▓рд┐рдХреЗрд╢рди рддрдпрд╛рд░ рдХрд░рдд рдЖрд╣реЗ.

рддреБрдореНрд╣реА рдУрдкрдирд╢рд┐рдлреНрдЯ рдбреЗрд╡реНрд╣рд▓рдкрд░ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдХрдиреНрд╕реЛрд▓ рдЖрдгрд┐ рдХрдорд╛рдВрдб рд▓рд╛рдЗрдирд╡рд░реВрди S2I рдмрд┐рд▓реНрдб рдЪрд╛рд▓рд╡реВ рд╢рдХрддрд╛. рдмрд┐рд▓реНрдбрд░ рдЗрдореЗрдЬ рдЖрдгрд┐ рдЖрдордЪрд╛ рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреБрдареЗ рдорд┐рд│рд╡рд╛рдпрдЪрд╛ рд╣реЗ рд╕рд╛рдВрдЧреВрди рдЖрдореНрд╣реА new-app рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВ.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

рддреЗрдЪ, рдЖрдордЪрд╛ рдЕрд░реНрдЬ рддрдпрд╛рд░ рдЭрд╛рд▓рд╛ рдЖрд╣реЗ. рдЕрд╕реЗ рдХрд░рддрд╛рдирд╛, S2I рдкреНрд░рдХреНрд░рд┐рдпреЗрдиреЗ рдЦрд╛рд▓реАрд▓ рдЧреЛрд╖реНрдЯреА рдХреЗрд▓реНрдпрд╛:

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

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

рддреБрдореНрд╣реА рдХрдиреНрд╕реЛрд▓рдордзреНрдпреЗ S2I рд▓рд╛рдБрдЪ рдХрд░рдгреНрдпрд╛рдЪреЗ рджреГрд╢реНрдпрдорд╛рдирдкрдгреЗ рдирд┐рд░реАрдХреНрд╖рдг рдХреЗрд▓реНрдпрд╛рд╕, рдмрд┐рд▓реНрдб рдкреВрд░реНрдг рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рдмрд┐рд▓реНрдб рдкреЙрдб рдХрд╕реЗ рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рддреЗ рддреБрдореНрд╣реА рдкрд╛рд╣реВ рд╢рдХрддрд╛.

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

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

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рддреЗрдЪ, рдмрд┐рд▓реНрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реНрдг рдЭрд╛рд▓реА рдЖрд╣реЗ. рдЖрддрд╛ рдЖрдордЪреНрдпрд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рдирдЪреНрдпрд╛ рдкреЙрдбреНрд╕ рдЖрдгрд┐ рд╕реЗрд╡рд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдЪрд╛рд▓реВ рдЖрд╣реЗрдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВрдпрд╛.

oc get service

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдЗрддрдХрдВрдЪ. рдЖрдгрд┐ рдлрдХреНрдд рдПрдХ рд╕рдВрдШ. рдЖрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢рд╛рд╕рд╛рдареА рд╣реА рд╕реЗрд╡рд╛ рдЙрдШрдб рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ.

рдкрд╛рдпрд░реА 3 - рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢рд╛рд╕рд╛рдареА рд╕реЗрд╡рд╛ рдЙрдШрдб рдХрд░рд╛

KUC рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдУрдкрдирд╢рд┐рдлреНрдЯ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╡рд░ рдЖрдордЪреНрдпрд╛ "рд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдб" рд▓рд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рд╕реЗрд╡реЗрдХрдбреЗ рдмрд╛рд╣реНрдп рд░рд╣рджрд╛рд░реА рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд░рд╛рдЙрдЯрд░рдЪреА рджреЗрдЦреАрд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. OpenShift рд╣реЗ рдЦреВрдк рд╕реЛрдкреЗ рдХрд░рддреЗ. рдкреНрд░рдердо, HAProxy рд░рд╛рдЙрдЯрд┐рдВрдЧ рдШрдЯрдХ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ (рддреЛ рддреНрдпрд╛рдЪ NGINX рдордзреНрдпреЗ рдмрджрд▓рд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ). рджреБрд╕рд░реЗ рдореНрд╣рдгрдЬреЗ, рд░реВрдЯреНрд╕ рдирд╛рд╡рд╛рдЪреА рд╡рд┐рд╢реЗрд╖ рдЖрдгрд┐ рдЕрддреНрдпрдВрдд рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рд╕рдВрд╕рд╛рдзрдиреЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рдЬреБрдиреНрдпрд╛ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдордзреНрдпреЗ рдЗрдВрдЧреНрд░реЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреА рдЖрдард╡рдг рдХрд░реВрди рджреЗрддрд╛рдд (рдЦрд░рдВ рддрд░, рдУрдкрдирд╢рд┐рдлреНрдЯрдЪреНрдпрд╛ рд░реВрдЯреНрд╕рдиреЗ рдЗрдВрдЧреНрд░реЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреНрдпрд╛ рдбрд┐рдЭрд╛рдЗрдирд╡рд░ рдЦреВрдк рдкреНрд░рднрд╛рд╡ рдкрд╛рдбрд▓рд╛ рдЖрд╣реЗ, рдЬреЛ рдЖрддрд╛ рдУрдкрдирд╢рд┐рдлреНрдЯрдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ) рдкрд░рдВрддреБ рдЖрдордЪреНрдпрд╛ тАЬрд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдбтАЭ рд╕рд╛рдареА. , рдЖрдгрд┐ рдЬрд╡рд│рдЬрд╡рд│ рдЗрддрд░ рд╕рд░реНрд╡ рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ, рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╢рд┐рд╡рд╛рдп рдорд╛рдирдХ рдорд╛рд░реНрдЧ рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рдкреБрд░реЗрд╕рд╛ рдЖрд╣реЗ.

тАЬрд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдбтАЭ рд╕рд╛рдареА рд░рд╛рдЙрдЯреЗрдмрд▓ FQDN рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА (рд╣реЛрдп, рд╕реЗрд╡реЗрдЪреНрдпрд╛ рдирд╛рд╡рд╛рдВрдиреБрд╕рд╛рд░ рд░рд╛рдЙрдЯрд┐рдВрдЧрд╕рд╛рдареА рдУрдкрдирд╢рд┐рдлреНрдЯрдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ DNS рдЖрд╣реЗ), рдЖрдореНрд╣реА рдлрдХреНрдд рдЖрдордЪреА рд╕реЗрд╡рд╛ рдЙрдШрдб рдХрд░реВ:

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

oc expose service quarkus-hello-world

рддреБрдореНрд╣реА рдирд╡реНрдпрд╛рдиреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓рд╛ рдорд╛рд░реНрдЧ рдкрд╛рд╣рд┐рд▓реНрдпрд╛рд╕, рддреБрдореНрд╣рд╛рд▓рд╛ рддреЗрдереЗ FQDN рдЖрдгрд┐ рдЗрддрд░ рд░рд╛рдЙрдЯрд┐рдВрдЧ рдорд╛рд╣рд┐рддреА рдорд┐рд│реЗрд▓:

oc get route

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдЖрдгрд┐ рд╢реЗрд╡рдЯреА, рдЖрдореНрд╣реА рдмреНрд░рд╛рдЙрдЭрд░рд╡рд░реВрди рдЖрдордЪреНрдпрд╛ рд╕реЗрд╡реЗрдд рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЛ:

рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛, OpenShift, рдЖрдореНрд╣реА рддреБрдордЪреЗ рдкреБрд░реЗрд╕реЗ рдХреМрддреБрдХ рдХреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреГрд╣реАрдд рдзрд░рд▓реЗ

рдкрдг рдЖрддрд╛ рддреЗ рдЦрд░реЛрдЦрд░ рд╕реЛрдкреЗ рд╣реЛрддреЗ!

рдЖрдореНрд╣рд╛рд▓рд╛ Kubernetes рдЖрдгрд┐ рд╣реЗ рддрдВрддреНрд░рдЬреНрдЮрд╛рди рдЖрдореНрд╣рд╛рд▓рд╛ рдХрд░реВ рджреЗрддреЗ рддреНрдпрд╛ рд╕рд░реНрд╡ рдЧреЛрд╖реНрдЯреА рдЖрд╡рдбрддрд╛рдд рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдзреЗрдкрдгрд╛ рдЖрдгрд┐ рд╕рд╣рдЬрддрд╛ рджреЗрдЦреАрд▓ рдЖрд╡рдбрддреЗ. Kubernetes рд╡рд┐рддрд░рд┐рдд, рд╕реНрдХреЗрд▓реЗрдмрд▓ рдХрдВрдЯреЗрдирд░рдЪреЗ рдСрдкрд░реЗрд╢рди рдЖрд╢реНрдЪрд░реНрдпрдХрд╛рд░рдХрдкрдгреЗ рд╕реБрд▓рдн рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдЪреА рд╕рд╛рдзреЗрдкрдгрд╛ рдЖрдЬ рдЙрддреНрдкрд╛рджрдирд╛рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдареЗрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрд░реЗрд╕рд╛ рдирд╛рд╣реА. рдЗрдереВрдирдЪ OpenShift рдХрд╛рд░реНрдпрд╛рдд рдпреЗрддреЗ, рдХрд╛рд│рд╛рдЪреНрдпрд╛ рдЕрдиреБрд╖рдВрдЧрд╛рдиреЗ рдЖрдгрд┐ Kubernetes рдСрдлрд░ рдХрд░рддреЗ, рдореБрдЦреНрдпрддрдГ рд╡рд┐рдХрд╛рд╕рдХрд╛рд▓рд╛ рдЙрджреНрджреЗрд╢реВрди. S2I, ODI, рд╡рд┐рдХрд╕рдХ рдкреЛрд░реНрдЯрд▓, OpenShift рдСрдкрд░реЗрдЯрд░ рдлреНрд░реЗрдорд╡рд░реНрдХ, IDE рдЗрдВрдЯрд┐рдЧреНрд░реЗрд╢рди, рдбреЗрд╡реНрд╣рд▓рдкрд░ рдХреЕрдЯрд▓реЙрдЧ, рд╣реЗрд▓реНрдо рдЗрдВрдЯрд┐рдЧреНрд░реЗрд╢рди, рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдЖрдгрд┐ рдЗрддрд░ рдЕрдиреЗрдХ рд╕рд╛рдзрдирд╛рдВрдЪреНрдпрд╛ рдирд┐рд░реНрдорд┐рддреАрд╕рд╣, рд╡рд┐рд╢реЗрд╖рддрдГ рд╡рд┐рдХрд╕рдХрд╛рдВрд╕рд╛рдареА OpenShift рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдмрд░реЗрдЪ рдкреНрд░рдпрддреНрди рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд.

рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрд╢рд╛ рдЖрд╣реЗ рдХреА рд╣рд╛ рд▓реЗрдЦ рдЖрдкрд▓реНрдпрд╛рд╕рд╛рдареА рдордиреЛрд░рдВрдЬрдХ рдЖрдгрд┐ рдЙрдкрдпреБрдХреНрдд рд╣реЛрддрд╛. рдкреЛрд░реНрдЯрд▓рд╡рд░реАрд▓ OpenShift рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╡рд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд┐рдХрд╛рд╕рд╛рд╕рд╛рдареА рдЙрдкрдпреБрдХреНрдд рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрдиреЗ, рд╕рд╛рд╣рд┐рддреНрдп рдЖрдгрд┐ рдЗрддрд░ рдЧреЛрд╖реНрдЯреА рдорд┐рд│реВ рд╢рдХрддрд╛рдд рд░реЗрдб рд╣реЕрдЯ рдбреЗрд╡реНрд╣рд▓рдкрд░реНрд╕.

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛