{"id":101567,"date":"2025-03-15T00:51:42","date_gmt":"2025-03-14T21:21:42","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/"},"modified":"2025-03-15T00:51:42","modified_gmt":"2025-03-14T21:21:42","slug":"%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/","title":{"rendered":"\u062a\u0646\u0638\u06cc\u0645 \u062e\u0637 \u0644\u0648\u0644\u0647 \u0633\u0627\u062e\u062a \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u062c\u0627\u0648\u0627 \u0628\u0627 AWS CodeArtifact"},"content":{"rendered":"<div data-article-id=\"2333483\" id=\"article-body\">\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D9%82%D8%AF%D9%85%D9%87\" >\u0645\u0642\u062f\u0645\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\" >\u0645\u0631\u062d\u0644\u0647 1: \u062a\u0646\u0638\u06cc\u0645 \u0646\u0645\u0648\u0646\u0647 EC2<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#11_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DB%8C%DA%A9_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\" >1.1 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 EC2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#12_%D8%A7%D8%AA%D8%B5%D8%A7%D9%84_%D8%A8%D9%87_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\" >1.2 \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u0646\u0645\u0648\u0646\u0647 EC2<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D9%86%D8%B5%D8%A8_%D8%AC%D8%A7%D9%88%D8%A7_%D9%88_%D9%85%D9%88%D9%86\" >\u0645\u0631\u062d\u0644\u0647 2: \u0646\u0635\u0628 \u062c\u0627\u0648\u0627 \u0648 \u0645\u0648\u0646<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#21_%D9%86%D8%B5%D8%A8_%D8%AC%D8%A7%D9%88%D8%A7_%D8%A2%D9%85%D8%A7%D8%B2%D9%88%D9%86_%D8%B5%D8%AD%DB%8C%D8%AD_8\" >2.1 \u0646\u0635\u0628 \u062c\u0627\u0648\u0627 \u0622\u0645\u0627\u0632\u0648\u0646 \u0635\u062d\u06cc\u062d 8<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#22_%D9%86%D8%B5%D8%A8_Maven_352\" >2.2 \u0646\u0635\u0628 Maven 3.5.2<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%DA%A9%D9%84%D9%88%D9%86%DB%8C%D9%86%DA%AF_%D9%88_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D8%AC%D8%A7%D9%88%D8%A7\" >\u0645\u0631\u062d\u0644\u0647 3: \u06a9\u0644\u0648\u0646\u06cc\u0646\u06af \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u067e\u0631\u0648\u0698\u0647 \u062c\u0627\u0648\u0627<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_AWS_CodeArtifact\" >\u0645\u0631\u062d\u0644\u0647 4: \u062a\u0646\u0638\u06cc\u0645 AWS CodeArtifact<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#41_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%AE%D8%B2%D9%86_codeartifact_%D9%88_%D8%AF%D8%A7%D9%85%D9%86%D9%87\" >4.1 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u062e\u0632\u0646 codeartifact \u0648 \u062f\u0627\u0645\u0646\u0647<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_AWS_CodeArtifact-2\" >\u0645\u0631\u062d\u0644\u0647 4: \u062a\u0646\u0638\u06cc\u0645 AWS CodeArtifact<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#42_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D9%85%D8%AC%D9%88%D8%B2%D9%87%D8%A7%DB%8C_IAM\" >4.2 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0645\u062c\u0648\u0632\u0647\u0627\u06cc IAM<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#43_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%86%D8%B4%D8%A7%D9%86%D9%87_%D9%85%D8%AC%D9%88%D8%B2\" >4.3 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0646\u0634\u0627\u0646\u0647 \u0645\u062c\u0648\u0632<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_Maven_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_Codeartifact\" >\u0645\u0631\u062d\u0644\u0647 5: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Maven \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Codeartifact<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_%D8%B4%D8%B4%D9%85_%D8%A7%D9%86%D8%AA%D8%B4%D8%A7%D8%B1_%D8%A8%D8%B3%D8%AA%D9%87_%D8%A8%D9%87_CodeArtifact\" >\u0645\u0631\u062d\u0644\u0647 \u0634\u0634\u0645: \u0627\u0646\u062a\u0634\u0627\u0631 \u0628\u0633\u062a\u0647 \u0628\u0647 CodeArtifact<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nabfollower.com\/blog\/%d8%aa%d9%86%d8%b8%db%8c%d9%85-%d8%ae%d8%b7-%d9%84%d9%88%d9%84%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d8%a7%d8%b3%d8%aa%d9%82%d8%b1%d8%a7%d8%b1-%d8%ae%d9%88%d8%af%da%a9%d8%a7%d8%b1-%d8%ac%d8%a7%d9%88\/#%D9%BE%D8%A7%DB%8C%D8%A7%D9%86\" >\u067e\u0627\u06cc\u0627\u0646<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D9%82%D8%AF%D9%85%D9%87\"><\/span>\n<p>  <strong>\u0645\u0642\u062f\u0645\u0647<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u060c \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0646\u062d\u0648\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 EC2 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u060c \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0648 \u0627\u0646\u062a\u0634\u0627\u0631 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 Maven \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u062c\u0627\u0648\u0627 \u0628\u0647 AWS CodeArtifact \u067e\u06cc\u0627\u062f\u0647 \u0631\u0648\u06cc \u062e\u0648\u0627\u0647\u0645 \u06a9\u0631\u062f. \u0627\u06cc\u0646 \u062a\u0646\u0638\u06cc\u0645 \u06cc\u06a9 \u0641\u0631\u0622\u06cc\u0646\u062f \u0645\u062f\u06cc\u0631\u06cc\u062a \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0642\u0648\u06cc \u0648 \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f \u0631\u0627 \u062f\u0631 \u06cc\u06a9 \u062e\u0637 \u0644\u0648\u0644\u0647 CI\/CD \u0628\u0648\u0645\u06cc \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u062f\u0647\u062f.  <\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 1: \u062a\u0646\u0638\u06cc\u0645 \u0646\u0645\u0648\u0646\u0647 EC2<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"11_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DB%8C%DA%A9_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\"><\/span>\n<p>  <strong>1.1 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 EC2<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0645\u0646 \u0628\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06cc\u06a9 \u0634\u0631\u0648\u0639 \u06a9\u0631\u062f\u0645 <strong>\u0622\u0645\u0627\u0632\u0648\u0646 \u0644\u06cc\u0646\u0648\u06a9\u0633 2023 T3.Micro<\/strong> \u0646\u0645\u0648\u0646\u0647 EC2 \u0628\u0627 \u0645\u0634\u062e\u0635\u0627\u062a \u0632\u06cc\u0631:  <\/p>\n<ul>\n<li>\n<strong>\u0622\u0645\u06cc:<\/strong> \u0622\u0645\u0627\u0632\u0648\u0646 \u0644\u06cc\u0646\u0648\u06a9\u0633 2023\n<\/li>\n<li>\n<strong>\u0646\u0648\u0639 \u0646\u0645\u0648\u0646\u0647:<\/strong> t3.micro\n<\/li>\n<li>\n<strong>\u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc:<\/strong> 8 \u06af\u06cc\u06af\u0627\u0628\u0627\u06cc\u062a (\u067e\u06cc\u0634 \u0641\u0631\u0636)\n<\/li>\n<li>\n<strong>\u06af\u0631\u0648\u0647 \u0627\u0645\u0646\u06cc\u062a\u06cc:<\/strong> \u0645\u062c\u0627\u0632 SSH (\u067e\u0648\u0631\u062a 22) \u0648 HTTP (\u0628\u0646\u062f\u0631 80)\n<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"12_%D8%A7%D8%AA%D8%B5%D8%A7%D9%84_%D8%A8%D9%87_%D9%86%D9%85%D9%88%D9%86%D9%87_EC2\"><\/span>\n<p>  <strong>1.2 \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u0646\u0645\u0648\u0646\u0647 EC2<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u067e\u0633 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0646\u0645\u0648\u0646\u0647 \u060c \u0645\u0646 \u0627\u0632 \u0637\u0631\u06cc\u0642 SSH \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>ssh <span class=\"nt\">-i<\/span> my-key.pem ec2-user@<ec2-public-ip>\n<\/ec2-public-ip><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u06cc\u0646 \u0627\u0645\u0631 \u062f\u0633\u062a\u0631\u0633\u06cc \u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u0647 \u0646\u0645\u0648\u0646\u0647 \u0628\u0631\u0627\u06cc \u0646\u0635\u0628 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u06a9\u0631\u062f.  <\/p>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D9%86%D8%B5%D8%A8_%D8%AC%D8%A7%D9%88%D8%A7_%D9%88_%D9%85%D9%88%D9%86\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 2: \u0646\u0635\u0628 \u062c\u0627\u0648\u0627 \u0648 \u0645\u0648\u0646<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Maven \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u062c\u0627\u0648\u0627 \u0645\u0648\u0638\u0641 \u0627\u0633\u062a \u060c \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u062c\u0627\u0648\u0627 \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 Maven \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a.  <\/p>\n<h3><span class=\"ez-toc-section\" id=\"21_%D9%86%D8%B5%D8%A8_%D8%AC%D8%A7%D9%88%D8%A7_%D8%A2%D9%85%D8%A7%D8%B2%D9%88%D9%86_%D8%B5%D8%AD%DB%8C%D8%AD_8\"><\/span>\n<p>  <strong>2.1 \u0646\u0635\u0628 \u062c\u0627\u0648\u0627 \u0622\u0645\u0627\u0632\u0648\u0646 \u0635\u062d\u06cc\u062d 8<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Amazon Corretto 8 \u062a\u0648\u0632\u06cc\u0639 \u0631\u0627\u06cc\u06af\u0627\u0646 \u0648 \u0622\u0645\u0627\u062f\u0647 \u062a\u0648\u0644\u06cc\u062f OpenJDK \u0627\u0633\u062a. \u0645\u0646 \u0622\u0646 \u0631\u0627 \u0628\u0627:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">sudo <\/span>dnf <span class=\"nb\">install<\/span> <span class=\"nt\">-y<\/span> java-1.8.0-amazon-corretto-devel\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0633\u067e\u0633 \u060c \u0645\u0646 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u0645\u062d\u06cc\u0637 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0631\u062f\u0645 \u062a\u0627 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u0634\u0648\u062f \u06a9\u0647 \u062c\u0627\u0648\u0627 \u0628\u0647 \u062f\u0631\u0633\u062a\u06cc \u0634\u0646\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">export <\/span><span class=\"nv\">JAVA_HOME<\/span><span class=\"o\">=<\/span>\/usr\/lib\/jvm\/java-1.8.0-amazon-corretto.x86_64\n<span class=\"nb\">export <\/span><span class=\"nv\">PATH<\/span><span class=\"o\">=<\/span><span class=\"nv\">$JAVA_HOME<\/span>\/bin:<span class=\"nv\">$PATH<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0628\u0631\u0627\u06cc \u062f\u0627\u0626\u0645\u06cc \u0627\u06cc\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u060c \u0645\u0633\u06cc\u0631\u0647\u0627 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0645 <code>~\/.bashrc<\/code>:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">echo<\/span> <span class=\"s1\">'export JAVA_HOME=\/usr\/lib\/jvm\/java-1.8.0-amazon-corretto.x86_64'<\/span> <span class=\"o\">&gt;&gt;<\/span> ~\/.bashrc\n<span class=\"nb\">echo<\/span> <span class=\"s1\">'export PATH=$JAVA_HOME\/bin:$PATH'<\/span> <span class=\"o\">&gt;&gt;<\/span> ~\/.bashrc\n<span class=\"nb\">source<\/span> ~\/.bashrc\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0645\u0646 \u0646\u0635\u0628 \u0631\u0627 \u0628\u0627:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>java <span class=\"nt\">-version<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"22_%D9%86%D8%B5%D8%A8_Maven_352\"><\/span>\n<p>  <strong>2.2 \u0646\u0635\u0628 Maven 3.5.2<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Maven 3.5.2 \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628 \u062c\u0627\u0648\u0627 \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0628\u0648\u062f. \u0645\u0646 \u0622\u0646 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0633\u062a\u06cc \u0628\u0627\u0631\u06af\u06cc\u0631\u06cc \u0648 \u0627\u0633\u062a\u062e\u0631\u0627\u062c \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>wget https:\/\/archive.apache.org\/dist\/maven\/maven-3\/3.5.2\/binaries\/apache-maven-3.5.2-bin.tar.gz\n<span class=\"nb\">sudo tar<\/span> <span class=\"nt\">-xzf<\/span> apache-maven-3.5.2-bin.tar.gz <span class=\"nt\">-C<\/span> \/opt\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0633\u067e\u0633 \u060c \u0622\u0646 \u0631\u0627 \u0628\u0647 \u0645\u0633\u06cc\u0631 \u0633\u06cc\u0633\u062a\u0645 \u062e\u0648\u062f \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">echo<\/span> <span class=\"s2\">\"export PATH=\/opt\/apache-maven-3.5.2\/bin:<\/span><span class=\"nv\">$PATH<\/span><span class=\"s2\">\"<\/span> <span class=\"o\">&gt;&gt;<\/span> ~\/.bashrc\n<span class=\"nb\">source<\/span> ~\/.bashrc\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0645\u0646 \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0631\u062f\u0645 \u06a9\u0647 Maven \u0628\u0627 \u0627\u062c\u0631\u0627 \u0646\u0635\u0628 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn <span class=\"nt\">-version<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%DA%A9%D9%84%D9%88%D9%86%DB%8C%D9%86%DA%AF_%D9%88_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D8%AC%D8%A7%D9%88%D8%A7\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 3: \u06a9\u0644\u0648\u0646\u06cc\u0646\u06af \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u067e\u0631\u0648\u0698\u0647 \u062c\u0627\u0648\u0627<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0645\u0646 \u06cc\u06a9 \u0645\u062e\u0632\u0646 GIT \u0631\u0627 \u062f\u0631 \u0646\u0645\u0648\u0646\u0647 EC2 \u062e\u0648\u062f \u0622\u063a\u0627\u0632 \u06a9\u0631\u062f\u0645 \u0648 \u0622\u0646 \u0631\u0627 \u0628\u0647 \u0645\u062e\u0632\u0646 GitHub \u062e\u0648\u062f \u0648\u0635\u0644 \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>git init\ngit remote add origin https:\/\/github.com\/richardatodo\/nextwork-web-project.git\ngit pull origin main\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 \u062f\u0627\u062e\u0644 \u0641\u0647\u0631\u0633\u062a \u067e\u0631\u0648\u0698\u0647 \u060c \u0645\u0646 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0631\u062f\u0645 \u06a9\u0647 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u062f\u0631 \u0622\u0646 \u062a\u0639\u0631\u06cc\u0641 \u0634\u062f\u0647 \u0627\u0633\u062a <code>pom.xml<\/code>:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><dependencies\/><\/span>\n    <span class=\"nt\"><dependency\/><\/span>\n        <span class=\"nt\"><groupid\/><\/span>junit<span class=\"nt\"\/>\n        <span class=\"nt\"><artifactid\/><\/span>junit<span class=\"nt\"\/>\n        <span class=\"nt\"><version\/><\/span>3.8.1<span class=\"nt\"\/>\n        <span class=\"nt\"><scope\/><\/span>test<span class=\"nt\"\/>\n    <span class=\"nt\"\/>\n<span class=\"nt\"\/>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0633\u067e\u0633 \u060c \u0645\u0646 \u067e\u0631\u0648\u0698\u0647 \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0647\u0645\u0647 \u0686\u06cc\u0632 \u06a9\u0627\u0631 \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn compile\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_AWS_CodeArtifact\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 4: \u062a\u0646\u0638\u06cc\u0645 AWS CodeArtifact<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"41_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%AE%D8%B2%D9%86_codeartifact_%D9%88_%D8%AF%D8%A7%D9%85%D9%86%D9%87\"><\/span>\n<p>  <strong>4.1 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u062e\u0632\u0646 codeartifact \u0648 \u062f\u0627\u0645\u0646\u0647<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0622\u0646 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0631\u062f! \u0645\u0646 \u067e\u0633\u062a \u0648\u0628\u0644\u0627\u06af \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u0645\u06cc \u06a9\u0646\u0645 \u062a\u0627 \u0645\u0646\u0639\u06a9\u0633 \u06a9\u0646\u0646\u062f\u0647 \u0627\u06cc\u0646 \u0628\u0627\u0634\u062f \u06a9\u0647 \u0634\u0645\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647 \u0627\u06cc\u062f <strong>\u062f\u0627\u0645\u0646\u0647 \u0648 \u0645\u062e\u0632\u0646 codeartifact \u0627\u0632 \u0637\u0631\u06cc\u0642 \u06a9\u0646\u0633\u0648\u0644 AWS<\/strong> \u0628\u0647 \u062c\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 AWS CLI.  <\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0628\u062e\u0634 \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f:  <\/p>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_AWS_CodeArtifact-2\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 4: \u062a\u0646\u0638\u06cc\u0645 AWS CodeArtifact<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0645\u0646 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0645 <strong>\u062f\u0627\u0645\u0646\u0647 codeartifact<\/strong> \u0648\u062a <strong>\u0645\u062e\u0632\u0646<\/strong> \u0627\u0632 \u0637\u0631\u06cc\u0642 \u06a9\u0646\u0633\u0648\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a AWS:  <\/p>\n<ol>\n<li>\n<p><strong>\u062d\u0631\u06a9\u062a \u0628\u0647 AWS CodeArtifact:<\/strong>  <\/p>\n<ul>\n<li>\u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 <strong>\u06a9\u0646\u0633\u0648\u0644 AWS<\/strong> \u0648 \u0628\u0631\u0648 \u0628\u0647 <strong>\u06a9\u0627\u0631\u062f\u0633\u062a\u06cc<\/strong>\u0628\u0634\u0631\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>\u06cc\u06a9 \u062f\u0627\u0645\u0646\u0647 CodeArtifact \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/strong>  <\/p>\n<ul>\n<li>\u06a9\u0644\u06cc\u06a9 \u06a9\u0631\u062f\u0646 <strong>\u062f\u0627\u0645\u0646\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/strong>\u0628\u0634\u0631\n<\/li>\n<li>\u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0646 <strong>\u0646\u0627\u0645 \u062f\u0627\u0645\u0646\u0647<\/strong>: <code>nextwork<\/code>\u0628\u0634\u0631\n<\/li>\n<li>\u06a9\u0644\u06cc\u06a9 \u06a9\u0631\u062f\u0646 <strong>\u062f\u0627\u0645\u0646\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/strong>\u0628\u0634\u0631\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>\u06cc\u06a9 \u0645\u062e\u0632\u0646 codeartifact \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/strong>  <\/p>\n<ul>\n<li>\u06a9\u0644\u06cc\u06a9 \u06a9\u0631\u062f\u0646 <strong>\u0645\u062e\u0632\u0646 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/strong>\u0628\u0634\u0631\n<\/li>\n<li>\u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0646 <strong>\u0646\u0627\u0645 \u0645\u062e\u0632\u0646<\/strong>: <code>nextwork-devops-cicd<\/code>\u0628\u0634\u0631\n<\/li>\n<li>\u062f\u0627\u0645\u0646\u0647 \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f <code>nextwork<\/code>\u0628\u0634\u0631\n<\/li>\n<li>(\u0627\u062e\u062a\u06cc\u0627\u0631\u06cc) \u0641\u0639\u0627\u0644 \u06a9\u0646\u06cc\u062f <strong>\u0645\u062e\u0627\u0632\u0646 \u0628\u0627\u0644\u0627\u062f\u0633\u062a<\/strong> \u062f\u0631 \u0635\u0648\u0631\u062a \u0646\u06cc\u0627\u0632\n<\/li>\n<li>\u06a9\u0644\u06cc\u06a9 \u06a9\u0631\u062f\u0646 <strong>\u0645\u062e\u0632\u0646 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/strong>\u0628\u0634\u0631\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"42_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D9%85%D8%AC%D9%88%D8%B2%D9%87%D8%A7%DB%8C_IAM\"><\/span>\n<p>  <strong>4.2 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0645\u062c\u0648\u0632\u0647\u0627\u06cc IAM<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0628\u0631\u0627\u06cc \u0627\u06cc\u0646\u06a9\u0647 EC2 \u0628\u0627 CodeArtifact \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0631\u0642\u0631\u0627\u0631 \u06a9\u0646\u062f \u060c \u0645\u0646 \u06cc\u06a9 \u0633\u06cc\u0627\u0633\u062a IAM \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight json\"><code><span class=\"p\">{<\/span><span class=\"w\">\n    <\/span><span class=\"nl\">\"Version\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"2012-10-17\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n    <\/span><span class=\"nl\">\"Statement\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"p\">[<\/span><span class=\"w\">\n        <\/span><span class=\"p\">{<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Effect\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"Allow\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Action\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"p\">[<\/span><span class=\"w\">\n                <\/span><span class=\"s2\">\"codeartifact:GetAuthorizationToken\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n                <\/span><span class=\"s2\">\"codeartifact:GetRepositoryEndpoint\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n                <\/span><span class=\"s2\">\"codeartifact:ReadFromRepository\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n                <\/span><span class=\"s2\">\"codeartifact:PublishPackageVersion\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n                <\/span><span class=\"s2\">\"codeartifact:PutPackageMetadata\"<\/span><span class=\"w\">\n            <\/span><span class=\"p\">],<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Resource\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"*\"<\/span><span class=\"w\">\n        <\/span><span class=\"p\">},<\/span><span class=\"w\">\n        <\/span><span class=\"p\">{<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Effect\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"Allow\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Action\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"sts:GetServiceBearerToken\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Resource\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"*\"<\/span><span class=\"p\">,<\/span><span class=\"w\">\n            <\/span><span class=\"nl\">\"Condition\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"p\">{<\/span><span class=\"w\">\n                <\/span><span class=\"nl\">\"StringEquals\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"p\">{<\/span><span class=\"w\">\n                    <\/span><span class=\"nl\">\"sts:AWSServiceName\"<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"codeartifact.amazonaws.com\"<\/span><span class=\"w\">\n                <\/span><span class=\"p\">}<\/span><span class=\"w\">\n            <\/span><span class=\"p\">}<\/span><span class=\"w\">\n        <\/span><span class=\"p\">}<\/span><span class=\"w\">\n    <\/span><span class=\"p\">]<\/span><span class=\"w\">\n<\/span><span class=\"p\">}<\/span><span class=\"w\">\n<\/span><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0645\u0646 \u0627\u06cc\u0646 \u0633\u06cc\u0627\u0633\u062a \u0631\u0627 \u0628\u0647 \u0646\u0642\u0634 IAM \u067e\u06cc\u0648\u0633\u062a\u0645 \u0648 \u0622\u0646 \u0631\u0627 \u0628\u0627 \u0646\u0645\u0648\u0646\u0647 EC2 \u062e\u0648\u062f \u0645\u0631\u062a\u0628\u0637 \u06a9\u0631\u062f\u0645.  <\/p>\n<h3><span class=\"ez-toc-section\" id=\"43_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%86%D8%B4%D8%A7%D9%86%D9%87_%D9%85%D8%AC%D9%88%D8%B2\"><\/span>\n<p>  <strong>4.3 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0646\u0634\u0627\u0646\u0647 \u0645\u062c\u0648\u0632<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0628\u0631\u0627\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0627\u0639\u062a\u0628\u0627\u0631 Maven \u0628\u0627 CodeArtifact \u060c \u0645\u0646 \u06cc\u06a9 \u0646\u0634\u0627\u0646\u0647 \u062a\u0648\u0644\u06cc\u062f \u06a9\u0631\u062f\u0645 \u0648 \u0622\u0646 \u0631\u0627 \u062f\u0631 \u06cc\u06a9 \u0645\u062a\u063a\u06cc\u0631 \u0645\u062d\u06cc\u0637 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">export <\/span><span class=\"nv\">CODEARTIFACT_AUTH_TOKEN<\/span><span class=\"o\">=<\/span><span class=\"si\">$(<\/span>aws codeartifact get-authorization-token <span class=\"nt\">--domain<\/span> nextwork <span class=\"nt\">--query<\/span> authorizationToken <span class=\"nt\">--output<\/span> text<span class=\"si\">)<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_Maven_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_Codeartifact\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 5: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Maven \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Codeartifact<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0645\u0646 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0645 <code>settings.xml<\/code> \u067e\u0631\u0648\u0646\u062f\u0647 \u062f\u0631 \u0641\u0647\u0631\u0633\u062a \u067e\u0631\u0648\u0698\u0647 \u0645\u0646:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><settings\/><\/span>\n  <span class=\"nt\"><servers\/><\/span>\n    <span class=\"nt\"><server\/><\/span>\n      <span class=\"nt\"><id\/><\/span>nextwork-nextwork-devops-cicd<span class=\"nt\"\/>\n      <span class=\"nt\"><username\/><\/span>aws<span class=\"nt\"\/>\n      <span class=\"nt\"><password\/><\/span>${env.CODEARTIFACT_AUTH_TOKEN}<span class=\"nt\"\/>\n    <span class=\"nt\"\/>\n  <span class=\"nt\"\/>\n  <span class=\"nt\"><profiles\/><\/span>\n    <span class=\"nt\"><profile\/><\/span>\n      <span class=\"nt\"><id\/><\/span>nextwork-nextwork-devops-cicd<span class=\"nt\"\/>\n      <span class=\"nt\"><activation\/><\/span>\n        <span class=\"nt\"><activebydefault\/><\/span>true<span class=\"nt\"\/>\n      <span class=\"nt\"\/>\n      <span class=\"nt\"><repositories\/><\/span>\n        <span class=\"nt\"><repository\/><\/span>\n          <span class=\"nt\"><id\/><\/span>nextwork-nextwork-devops-cicd<span class=\"nt\"\/>\n          <span class=\"nt\"><url\/><\/span>https:\/\/nextwork-617439230997.d.codeartifact.us-east-1.amazonaws.com\/maven\/nextwork-devops-cicd\/<span class=\"nt\"\/>\n        <span class=\"nt\"\/>\n      <span class=\"nt\"\/>\n    <span class=\"nt\"\/>\n  <span class=\"nt\"\/>\n<span class=\"nt\"\/>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2>\n<p>  <img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9f1y97wfwg7lopuof1r7.png\" alt=\"\u0634\u0631\u062d \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"449\" title=\"\"><br \/>\n<\/h2>\n<p>\u0633\u067e\u0633 \u060c \u062f\u0633\u062a\u0648\u0631 Maven Compile \u0631\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f \u060c \u06a9\u0647 \u0627\u0632 \u067e\u0631\u0648\u0646\u062f\u0647 Settings.xml \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0645\u0627 \u0641\u0642\u0637 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0631\u062f\u06cc\u0645 ::<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn <span class=\"nt\">-s<\/span> settings.xml compile\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fulahx9kqkroxapeofm9s.png\" alt=\"\u0634\u0631\u062d \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"449\" title=\"\"><\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_%D8%B4%D8%B4%D9%85_%D8%A7%D9%86%D8%AA%D8%B4%D8%A7%D8%B1_%D8%A8%D8%B3%D8%AA%D9%87_%D8%A8%D9%87_CodeArtifact\"><\/span>\n<p>  <strong>\u0645\u0631\u062d\u0644\u0647 \u0634\u0634\u0645: \u0627\u0646\u062a\u0634\u0627\u0631 \u0628\u0633\u062a\u0647 \u0628\u0647 CodeArtifact<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0645\u0646 \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0631\u062f\u0645 <code>pom.xml<\/code> \u0628\u0631\u0627\u06cc \u06af\u0646\u062c\u0627\u0646\u062f\u0646 <code>distributionManagement<\/code>:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><distributionmanagement\/><\/span>\n  <span class=\"nt\"><repository\/><\/span>\n    <span class=\"nt\"><id\/><\/span>nextwork-nextwork-devops-cicd<span class=\"nt\"\/>\n    <span class=\"nt\"><url\/><\/span>https:\/\/nextwork-617439230997.d.codeartifact.us-east-1.amazonaws.com\/maven\/nextwork-devops-cicd\/<span class=\"nt\"\/>\n  <span class=\"nt\"\/>\n<span class=\"nt\"\/>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9xhxi9n03r90lre5k4jv.png\" alt=\"\u0634\u0631\u062d \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"449\" title=\"\"><br \/>\u0633\u067e\u0633 \u060c \u0645\u0646 \u0628\u0633\u062a\u0647 \u0631\u0627 \u0645\u0633\u062a\u0642\u0631 \u06a9\u0631\u062f\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn <span class=\"nt\">-s<\/span> settings.xml deploy\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h2><span class=\"ez-toc-section\" id=\"%D9%BE%D8%A7%DB%8C%D8%A7%D9%86\"><\/span>\n<p>  <strong>\u067e\u0627\u06cc\u0627\u0646<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u0646\u062d\u0648\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06cc\u06a9 \u0645\u062e\u0632\u0646 CodeArtifact AWS \u060c \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 EC2 \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0627\u0639\u062a\u0628\u0627\u0631 \u0628\u0627 \u0622\u0646 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0631\u062f\u0645 \u0648 \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u06cc\u06a9 \u0628\u0633\u062a\u0647 Maven \u0631\u0627 \u0645\u0633\u062a\u0642\u0631 \u06a9\u0631\u062f\u0645. \u0627\u06cc\u0646 \u0641\u0631\u0622\u06cc\u0646\u062f \u067e\u0627\u06cc\u0647 \u0648 \u0627\u0633\u0627\u0633 \u0627\u062f\u063a\u0627\u0645 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0628\u0633\u062a\u0647 \u062f\u0631 \u062e\u0637 \u0644\u0648\u0644\u0647 CI\/CD \u0631\u0627 \u062a\u0634\u06a9\u06cc\u0644 \u0645\u06cc \u062f\u0647\u062f \u0648 \u0627\u0632 \u0627\u0631\u0627\u0626\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0627\u06cc\u0645\u0646 \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f.  <\/p>\n<hr\/><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0645\u0642\u062f\u0645\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u060c \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0646\u062d\u0648\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 EC2 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u060c \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0648 \u0627\u0646\u062a\u0634\u0627\u0631 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 Maven \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u062c\u0627\u0648\u0627 \u0628\u0647 AWS CodeArtifact \u067e\u06cc\u0627\u062f\u0647 \u0631\u0648\u06cc \u062e\u0648\u0627\u0647\u0645 \u06a9\u0631\u062f. \u0627\u06cc\u0646 \u062a\u0646\u0638\u06cc\u0645 \u06cc\u06a9 \u0641\u0631\u0622\u06cc\u0646\u062f \u0645\u062f\u06cc\u0631\u06cc\u062a \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0642\u0648\u06cc \u0648 \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f \u0631\u0627 \u062f\u0631 \u06cc\u06a9 \u062e\u0637 \u0644\u0648\u0644\u0647 CI\/CD \u0628\u0648\u0645\u06cc \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc &hellip;<\/p>\n","protected":false},"author":2,"featured_media":101568,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/media2.dev.to\/dynamic\/image\/width=1000,height=500,fit=cover,gravity=auto,format=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkcgc0t7un3qvqmk0001f.png","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-101567","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/101567","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=101567"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/101567\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/101568"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=101567"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=101567"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=101567"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}