{"id":67239,"date":"2024-06-18T22:37:51","date_gmt":"2024-06-18T19:07:51","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/"},"modified":"2024-06-18T22:37:51","modified_gmt":"2024-06-18T19:07:51","slug":"how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/","title":{"rendered":"\u0686\u06af\u0648\u0646\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628 \u062e\u0648\u062f \u0631\u0627 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631\u06cc \u06a9\u0646\u06cc\u062f &#8211; \u06cc\u06a9 \u0622\u0645\u0648\u0632\u0634 \u0645\u0628\u062a\u062f\u06cc \u0628\u0631\u0627\u06cc Dockerfile"},"content":{"rendered":"<div data-article-id=\"1892703\" id=\"article-body\">\n<p>\u0628\u0647 \u0642\u0633\u0645\u062a 2 \u0633\u0631\u06cc\u0627\u0644 \u062e\u0648\u0634 \u0622\u0645\u062f\u06cc\u062f <code>Docker for Dummies<\/code> \u062f\u0631 \u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u062a\u0635\u0648\u06cc\u0631\u06cc \u0627\u0632 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628 \u06a9\u0648\u0686\u06a9 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u0648 \u062f\u0631 \u0645\u0648\u0631\u062f \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u06a9\u0647 \u0647\u0631 \u0645\u0631\u062d\u0644\u0647 \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u062f\u0647\u062f \u06cc\u0627\u062f \u0628\u06af\u06cc\u0631\u06cc\u0645.  \u0628\u062f\u0648\u0646 \u0647\u06cc\u0686 \u0645\u0642\u062f\u0645\u0647 \u0627\u06cc \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u0645.  \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af\u060c \u0645\u0646 \u0642\u0635\u062f \u062f\u0627\u0631\u0645 \u0627\u0632 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0645\u0633\u0627\u0628\u0642\u0647 \u0633\u0627\u062f\u0647 vue-app \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u0645 \u06a9\u0647 \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u0646\u0627\u0645 \u06a9\u062a\u0627\u0628 \u0631\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u062e\u0637 \u0627\u0648\u0644 \u062d\u062f\u0633 \u0628\u0632\u0646\u06cc\u062f.  \u0627\u06af\u0631 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0631\u0627 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0646\u06cc\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u067e\u06cc\u0648\u0646\u062f GitHub \u0628\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628 \u0631\u0627 \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u062e\u0648\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0627\u062f\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f. <code>hello-world<\/code> \u0628\u0631\u0646\u0627\u0645\u0647 \u062f\u0631 \u06af\u0631\u0647 \u06cc\u0627 \u0641\u0631\u06cc\u0645\u0648\u0631\u06a9\/\u0632\u0628\u0627\u0646 \u0627\u0646\u062a\u062e\u0627\u0628\u06cc \u0634\u0645\u0627.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 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\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#%D8%A8%DB%8C%D8%A7%DB%8C%DB%8C%D8%AF_%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D9%85\" >\u0628\u06cc\u0627\u06cc\u06cc\u062f \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#Dockerfile\" >Dockerfile<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%A8%D8%B3%D8%A7%D8%B2%DB%8C%D8%AF\" >\u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0628\u0633\u0627\u0632\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#%D8%A7%D8%AC%D8%B1%D8%A7%DB%8C_%DB%8C%DA%A9_%D8%AF%D8%A7%DA%A9%D8%B1_%DA%A9%D8%A7%D9%86%D8%AA%DB%8C%D9%86%D8%B1\" >\u0627\u062c\u0631\u0627\u06cc \u06cc\u06a9 \u062f\u0627\u06a9\u0631 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631<\/a><\/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\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#%D8%B8%D8%B1%D9%81_%D8%B1%D8%A7_%D9%85%D8%AA%D9%88%D9%82%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0638\u0631\u0641 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/how-to-containerize-your-web-app-a-beginner-friendly-tutorial-for-dockerfile-282e\/#%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%AF%D8%B1_%D8%AF%D8%A7%DA%A9%D8%B1_%D9%87%D8%A7%D8%A8_%D9%85%D9%86%D8%AA%D8%B4%D8%B1_%DA%A9%D9%86%DB%8C%D8%AF\" >\u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062f\u0627\u06a9\u0631 \u0647\u0627\u0628 \u0645\u0646\u062a\u0634\u0631 \u06a9\u0646\u06cc\u062f<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D8%A8%DB%8C%D8%A7%DB%8C%DB%8C%D8%AF_%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D9%85\"><\/span>\n<p>  \u0628\u06cc\u0627\u06cc\u06cc\u062f \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<blockquote>\n<p>\u062a\u0648\u062c\u0647: \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u067e\u06cc\u0631\u0648\u06cc \u0645\u06cc \u06a9\u0646\u062f \u0627\u0645\u0627 \u0628\u0627\u06cc\u062f \u0628\u0631\u0627\u06cc \u0633\u0627\u06cc\u0631 \u0633\u06cc\u0633\u062a\u0645 \u0639\u0627\u0645\u0644 \u0647\u0627 \u0646\u06cc\u0632 \u0645\u0634\u0627\u0628\u0647 \u0628\u0627\u0634\u062f<\/p>\n<\/blockquote>\n<p>\u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u06a9\u0644\u0648\u0646 \u06a9\u0646\u06cc\u0645 \u0648 \u0628\u0647 \u062f\u0627\u062e\u0644 \u0622\u0646 \u0628\u0631\u0648\u06cc\u0645<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>git clone https:\/\/github.com\/SwikritiT\/Guessthebook-blog\n<span class=\"nb\">cd <\/span>Guessthebook-blog\n\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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\u0627 \u0645\u06cc \u062e\u0648\u0627\u0647\u06cc\u0645 \u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0628\u0647 \u0646\u0627\u0645 \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u0645 <code>Dockerfile<\/code> \u062f\u0631 \u0631\u06cc\u0634\u0647 \u0645\u062e\u0632\u0646 \u0645\u0627.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">touch <\/span>Dockerfile\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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=\"Dockerfile\"><\/span>\n<p>  Dockerfile<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Dockerfile \u06cc\u06a9 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0627\u0633\u062a \u06a9\u0647 \u0634\u0627\u0645\u0644 \u062a\u0645\u0627\u0645 \u0645\u0631\u0627\u062d\u0644 \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u0627\u0633\u062a.  Dockerfile \u0628\u0627 \u0686\u06cc\u0632\u06cc \u0628\u0647 \u0646\u0627\u0645 \u0634\u0631\u0648\u0639 \u0645\u06cc \u0634\u0648\u062f <code>base image<\/code>.  \u0622 <code>base image<\/code> \u06cc\u06a9 \u0645\u062d\u06cc\u0637 \u0627\u0632 \u067e\u06cc\u0634 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u062a\u0635\u0627\u0648\u06cc\u0631 \u0645\u0627 \u0628\u0631 \u0631\u0648\u06cc \u0622\u0646 \u0633\u0627\u062e\u062a\u0647 \u0645\u06cc \u0634\u0648\u0646\u062f.  \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u06cc\u06a9 \u0633\u06cc\u0633\u062a\u0645 \u0639\u0627\u0645\u0644 \u0645\u0627\u0646\u0646\u062f \u0644\u06cc\u0646\u0648\u06a9\u0633\u060c \u0622\u0644\u067e\u0627\u06cc\u0646 \u06cc\u0627 \u067e\u0634\u062a\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0627\u0634\u062f.  \u0627\u0646\u062a\u062e\u0627\u0628 \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u0627\u0646\u062f\u0627\u0632\u0647 \u06a9\u0644\u06cc \u0648 \u0628\u0647\u0631\u0647 \u0648\u0631\u06cc \u062a\u0635\u0648\u06cc\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0645\u0627 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a.  \u062f\u0631 \u0642\u0633\u0645\u062a \u0628\u0639\u062f\u06cc \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647 \u0628\u06cc\u0634\u062a\u0631 \u062f\u0631 \u0645\u0648\u0631\u062f \u0646\u062d\u0648\u0647 \u0627\u0646\u062a\u062e\u0627\u0628 \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0645\u0646\u0627\u0633\u0628 \u0635\u062d\u0628\u062a \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f\u060c \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u062f\u0631 \u062d\u0627\u0644 \u062d\u0627\u0636\u0631 \u0628\u0647 \u062e\u0627\u0637\u0631 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u06a9\u0647 \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0633\u0628\u06a9 \u062a\u0631\u060c \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0628\u06a9 \u062a\u0631 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f (\u0627\u06cc\u0646 \u0628\u0627 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u0647\u0627\u06cc\u06cc \u0647\u0645\u0631\u0627\u0647 \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0645\u0648\u0631\u062f \u0622\u0646 \u0635\u062d\u0628\u062a \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f. \u062c\u0632\u0626\u06cc\u0627\u062a \u0628\u06cc\u0634\u062a\u0631 \u062f\u0631 \u0642\u0633\u0645\u062a \u0628\u0639\u062f\u06cc \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647).  \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646\u060c \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0628\u0631\u0646\u0627\u0645\u0647\u060c \u0645\u0627 \u0645\u06cc \u062e\u0648\u0627\u0647\u06cc\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645 <code>node:alpine<\/code> images \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u067e\u0627\u06cc\u0647\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0646\u0633\u062e\u0647 \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0627\u0632 \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0631\u0627 \u0627\u0632 \u06cc\u06a9 \u0631\u062c\u06cc\u0633\u062a\u0631\u06cc \u062a\u0635\u0648\u06cc\u0631 \u0645\u0627\u0646\u0646\u062f Docker Hub \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f.<\/p>\n<blockquote>\n<p>\u062a\u0648\u062c\u0647: \u0627\u06af\u0631 \u062a\u0635\u0648\u06cc\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u06af\u0631\u0647 \u0631\u0627 \u0646\u0645\u06cc \u0633\u0627\u0632\u06cc\u062f\u060c \u0628\u0627\u06cc\u062f \u062a\u0635\u0648\u06cc\u0631 \u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u067e\u0634\u062a\u0647 \u062e\u0648\u062f \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f<\/p>\n<\/blockquote>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Start with a base image<\/span>\n<span class=\"k\">FROM<\/span><span class=\"s\"> node:alpine<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<blockquote>\n<p><code>FROM<\/code>: \u062a\u0635\u0648\u06cc\u0631 \u067e\u0627\u06cc\u0647 \u0645\u0648\u0631\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f.  \u0647\u0631 Dockerfile \u0628\u0627 \u0627\u06cc\u0646 \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644 \u0634\u0631\u0648\u0639 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<\/blockquote>\n<p>\u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u06cc \u062a\u0646\u0638\u06cc\u0645 <code>WORKDIR<\/code> \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u06a9\u0627\u0631 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0645\u0627 \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f \u0648 \u0641\u0627\u06cc\u0644 \u0647\u0627 \u0628\u0647 \u0637\u0648\u0631 \u067e\u06cc\u0634 \u0641\u0631\u0636 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc \u0634\u0648\u0646\u062f.  \u0628\u0647 \u0637\u0648\u0631 \u0645\u0639\u0645\u0648\u0644\u060c \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0628\u060c Workdir \u0631\u0648\u06cc \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a <code>\/usr\/src\/app<\/code> \u0627\u0645\u0627 \u0634\u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0622\u0646 \u0631\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Set the working directory<\/span>\n<span class=\"k\">WORKDIR<\/span><span class=\"s\"> \/usr\/src\/app<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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>\u062d\u0627\u0644\u0627 \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0644\u0627\u0632\u0645 \u0631\u0627 \u062f\u0631 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u062e\u0648\u062f \u06a9\u067e\u06cc \u06a9\u0646\u06cc\u0645\u060c \u062f\u0631 \u0645\u0648\u0631\u062f \u0645\u0627\u060c package.json \u0648 lockfile.  \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f <code>COPY<\/code> \u0641\u0631\u0645\u0627\u0646<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Copy package.json and package-lock.json to the working directory<\/span>\n<span class=\"k\">COPY<\/span><span class=\"s\"> package*.json .\/<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<blockquote>\n<p><code>COPY or ADD<\/code>: \u0641\u0627\u06cc\u0644 \u0647\u0627 \u0631\u0627 \u0627\u0632 \u0633\u06cc\u0633\u062a\u0645 \u0641\u0627\u06cc\u0644 \u0645\u062d\u0644\u06cc \u0634\u0645\u0627 \u062f\u0631 \u0638\u0631\u0641 \u06a9\u067e\u06cc \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<\/blockquote>\n<p>\u06af\u0627\u0645 \u0628\u0639\u062f\u06cc \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0647\u0627 \u0631\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0627\u0646\u0646\u062f \u0622\u0646\u0686\u0647 \u062f\u0631 \u062f\u0633\u062a\u06af\u0627\u0647 \u0645\u06cc\u0632\u0628\u0627\u0646 \u062e\u0648\u062f \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u062f\u0647\u06cc\u0645 \u0648 \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0646\u0635\u0628 \u0645\u06cc \u06a9\u0646\u06cc\u0645 <code>RUN<\/code> \u0645\u06cc \u062a\u0648\u0627\u0646 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0631\u062f<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Install the application dependencies<\/span>\n<span class=\"k\">RUN <\/span>npm <span class=\"nb\">install<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<blockquote>\n<p><code>RUN<\/code>: \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0631\u0627 \u062f\u0631 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0628\u0631\u0627\u06cc \u0646\u0635\u0628 \u0628\u0633\u062a\u0647 \u0647\u0627\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u0646\u062f.<\/p>\n<\/blockquote>\n<p>\u062d\u0627\u0644\u0627 \u0628\u0642\u06cc\u0647 \u0641\u0627\u06cc\u0644 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u067e\u0648\u0634\u0647 \u06a9\u0627\u0631\u06cc \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u062e\u0648\u062f \u06a9\u067e\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Copy the current directory contents into the container at \/usr\/src\/app<\/span>\n<span class=\"k\">COPY<\/span><span class=\"s\"> . .<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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\u0633\u062a\u0648\u0631 \u0628\u0627\u0644\u0627 \u0647\u0631 \u0641\u0627\u06cc\u0644 \u0648 \u067e\u0648\u0634\u0647 \u0627\u06cc \u0631\u0627 \u06a9\u0647 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0634\u0645\u0627 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u062f\u0631 \u067e\u0648\u0634\u0647 \u06a9\u0627\u0631\u06cc \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u06a9\u067e\u06cc \u0645\u06cc \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0634\u0627\u0645\u0644 \u0641\u0627\u06cc\u0644 \u0633\u0627\u062e\u062a\u060c \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 IDE \u06cc\u0627 \u0633\u0627\u06cc\u0631 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\/\u067e\u0648\u0634\u0647\u200c\u0647\u0627\u06cc \u0645\u062a\u0641\u0631\u0642\u0647 \u0627\u0633\u062a \u06a9\u0647 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u062a\u0635\u0648\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u0646\u0628\u0627\u0634\u062f.  \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646\u060c \u0627\u06cc\u0646 \u06cc\u06a9 \u062a\u0645\u0631\u06cc\u0646 \u062e\u0648\u0628 \u0627\u0633\u062a \u06a9\u0647 \u06cc\u0627 \u0641\u0642\u0637 \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc \u0636\u0631\u0648\u0631\u06cc \u0631\u0627 \u06a9\u067e\u06cc \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>.dockerignore<\/code> \u0641\u0627\u06cc\u0644 \u0628\u0627 \u0644\u06cc\u0633\u062a\u06cc \u0627\u0632 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627 \u0648 \u067e\u0648\u0634\u0647\u200c\u0647\u0627\u06cc\u06cc \u06a9\u0647 \u0646\u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0631 \u062f\u0627\u062e\u0644 \u0638\u0631\u0641 \u06a9\u067e\u06cc \u0634\u0648\u0646\u062f.  \u0646\u062d\u0648 \u0627\u0632 <code>.dockerignore<\/code> \u0641\u0627\u06cc\u0644 \u0645\u0634\u0627\u0628\u0647 \u0641\u0627\u06cc\u0644 <code>.gitignore<\/code>.  \u0627\u06cc\u0646\u062c\u0627 \u0628\u06cc\u0634\u062a\u0631 \u0628\u06cc\u0627\u0645\u0648\u0632\u06cc\u062f<\/p>\n<p>\u0642\u062f\u0645 \u0628\u0639\u062f\u06cc \u0633\u0627\u062e\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0645\u0627\u0633\u062a<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Build the application<\/span>\n<span class=\"k\">RUN <\/span>npm run build\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u06cc \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 <code>Expose<\/code> \u062f\u0631\u06af\u0627\u0647 \u0647\u0627\u06cc\u06cc \u06a9\u0647 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631\u06cc \u0628\u0647 \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0634\u0628\u06a9\u0647 \u06af\u0648\u0634 \u0645\u06cc \u062f\u0647\u062f<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Make port 3000 available to the world outside the container<\/span>\n<span class=\"k\">EXPOSE<\/span><span class=\"s\"> 3000<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<blockquote>\n<p><code>EXPOSE<\/code>  \u0631\u0648\u0634\u06cc \u0628\u0631\u0627\u06cc \u0645\u0633\u062a\u0646\u062f\u0633\u0627\u0632\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u062f\u0631 \u062f\u0627\u062e\u0644 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0627\u0632 \u06a9\u062f\u0627\u0645 \u067e\u0648\u0631\u062a \u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062e\u0648\u0627\u0647\u062f \u06a9\u0631\u062f.  \u0627\u06cc\u0646 \u067e\u0648\u0631\u062a \u0631\u0627 \u0628\u0647 \u067e\u0648\u0631\u062a \u0647\u0627\u06cc \u0645\u0627\u0634\u06cc\u0646 \u0645\u06cc\u0632\u0628\u0627\u0646 \u0646\u06af\u0627\u0634\u062a \u0646\u0645\u06cc \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0628\u0647 \u0633\u0627\u062f\u06af\u06cc \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u06a9\u062f\u0627\u0645 \u067e\u0648\u0631\u062a \u0647\u0627 \u0642\u0627\u0628\u0644 \u062f\u0633\u062a\u0631\u0633\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<\/blockquote>\n<p>\u0645\u0627 \u0628\u0647 \u0645\u0631\u062d\u0644\u0647 \u0646\u0647\u0627\u06cc\u06cc \u0631\u0633\u06cc\u062f\u0647 \u0627\u06cc\u0645 \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u06cc\u0645.  \u062f\u0648 \u062f\u0633\u062a\u0648\u0631 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0627\u0632 \u0622\u0646\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645 <code>CMD<\/code> \u0648 <code>ENTRYPOINT<\/code> \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0642\u0633\u0645\u062a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f <code>CMD<\/code> \u0648 \u062f\u0631 \u0645\u0648\u0631\u062f \u0622\u0646 \u0635\u062d\u0628\u062a \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f <code>ENTRYPOINT<\/code> \u062f\u0631 \u0642\u0633\u0645\u062a \u0647\u0627\u06cc \u0628\u0639\u062f\u06cc<\/p>\n<p>\u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u062f\u0631 production env \u0627\u062c\u0631\u0627 \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f\u060c \u0627\u0632 \u0622\u0646 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f <code>preview<\/code> \u062f\u0633\u062a\u0648\u0631 \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646  \u0628\u0639\u062f\u0627\u064b \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u0647 dockerized \u0646\u06cc\u0632 \u0627\u06cc\u062c\u0627\u062f \u062e\u0648\u0627\u0647\u06cc\u0645 \u06a9\u0631\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Define the command to run the app<\/span>\n<span class=\"k\">CMD<\/span><span class=\"s\"> [\"npm\",\"run\",\"preview\"]<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<blockquote>\n<p><code>CMD<\/code>: \u062f\u0633\u062a\u0648\u0631\u06cc \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u0647\u0646\u06af\u0627\u0645 \u0634\u0631\u0648\u0639 \u06cc\u06a9 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0627\u0632 \u062a\u0635\u0648\u06cc\u0631 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f.  \u0641\u0642\u0637 \u06cc\u06a9 \u062f\u0633\u062a\u0648\u0631 CMD \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0631 Dockerfile \u0648\u062c\u0648\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f.<\/p>\n<\/blockquote>\n<p>\u062d\u0627\u0644\u0627 \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0647 \u06a9\u0644 \u0646\u06af\u0627\u0647 \u06a9\u0646\u06cc\u0645 <code>Dockerfile<\/code><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight docker\"><code><span class=\"c\"># Start with a base image<\/span>\n<span class=\"k\">FROM<\/span><span class=\"s\"> node:alpine<\/span>\n\n<span class=\"c\"># Set the working directory<\/span>\n<span class=\"k\">WORKDIR<\/span><span class=\"s\"> \/usr\/src\/app<\/span>\n\n<span class=\"c\"># Copy package.json and package-lock.json to the working directory<\/span>\n<span class=\"k\">COPY<\/span><span class=\"s\"> package*.json .\/<\/span>\n\n<span class=\"c\"># Install the application dependencies<\/span>\n<span class=\"k\">RUN <\/span>npm <span class=\"nb\">install<\/span>\n\n<span class=\"c\"># Copy the current directory contents into the container at \/usr\/src\/app<\/span>\n<span class=\"k\">COPY<\/span><span class=\"s\"> . .<\/span>\n\n<span class=\"c\"># Build the application<\/span>\n<span class=\"k\">RUN <\/span>npm run build\n\n<span class=\"c\"># Make port 3000 available to the world outside the container<\/span>\n<span class=\"k\">EXPOSE<\/span><span class=\"s\"> 3000<\/span>\n\n<span class=\"c\"># Define the command to run the app<\/span>\n<span class=\"k\">CMD<\/span><span class=\"s\"> [\"npm\",\"run\",\"preview\"]<\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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 Docker\u060c \u0647\u0631 \u062e\u0637 \u062f\u0631 Dockerfile \u0634\u0645\u0627 \u06cc\u06a9 \u0644\u0627\u06cc\u0647 \u062c\u062f\u06cc\u062f \u062f\u0631 \u062a\u0635\u0648\u06cc\u0631 \u0646\u0647\u0627\u06cc\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u0627\u0641\u0632\u0648\u062f\u0646 \u0645\u0648\u0627\u062f \u0628\u0647 \u06cc\u06a9 \u0633\u0627\u0646\u062f\u0648\u06cc\u0686.  \u0627\u06cc\u0646 \u0644\u0627\u06cc\u0647 \u0647\u0627 \u0631\u0648\u06cc \u0647\u0645 \u0642\u0631\u0627\u0631 \u0645\u06cc \u06af\u06cc\u0631\u0646\u062f \u0648 \u0647\u0631 \u0644\u0627\u06cc\u0647 \u0646\u0634\u0627\u0646 \u062f\u0647\u0646\u062f\u0647 \u06cc\u06a9 \u062a\u063a\u06cc\u06cc\u0631 \u06cc\u0627 \u0627\u0636\u0627\u0641\u0647 \u0627\u0633\u062a\u060c \u0645\u0627\u0646\u0646\u062f \u06a9\u067e\u06cc \u06a9\u0631\u062f\u0646 \u0641\u0627\u06cc\u0644 \u0647\u0627 \u06cc\u0627 \u0646\u0635\u0628 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631.  Docker \u0627\u06cc\u0646 \u0644\u0627\u06cc\u0647\u200c\u0647\u0627 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0627\u06af\u0631 \u062a\u0635\u0648\u06cc\u0631 \u062e\u0648\u062f \u0631\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u0628\u0633\u0627\u0632\u06cc\u062f \u0648 \u0628\u0631\u062e\u06cc \u0627\u0632 \u0644\u0627\u06cc\u0647\u200c\u0647\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u0646\u06a9\u0631\u062f\u0647 \u0628\u0627\u0634\u0646\u062f\u060c Docker \u0627\u0632 \u0622\u0646\u0647\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0631\u0648\u0646\u062f \u0633\u0627\u062e\u062a \u0631\u0627 \u0633\u0631\u0639\u062a \u0645\u06cc\u200c\u0628\u062e\u0634\u062f \u0648 \u0627\u0641\u0632\u0648\u0646\u06af\u06cc \u0631\u0627 \u06a9\u0627\u0647\u0634 \u0645\u06cc\u200c\u062f\u0647\u062f.  \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u062f\u0631 \u0641\u0627\u06cc\u0644 docker \u0628\u0627\u0644\u0627 8 \u0644\u0627\u06cc\u0647 \u062f\u0627\u0631\u06cc\u0645.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%A8%D8%B3%D8%A7%D8%B2%DB%8C%D8%AF\"><\/span>\n<p>  \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0628\u0633\u0627\u0632\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u06a9\u0647 \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647 \u0627\u06cc\u0645\u060c \u0632\u0645\u0627\u0646 \u0633\u0627\u062e\u062a \u0622\u0646 \u0648 \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u0641\u0631\u0627 \u0631\u0633\u06cc\u062f\u0647 \u0627\u0633\u062a.  \u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u0627\u0632 \u0631\u06cc\u0634\u0647 \u0645\u062e\u0632\u0646 \u062e\u0648\u062f \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u0645 \u062a\u0627 \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 \u062f\u0627\u06a9\u0631 \u0628\u0633\u0627\u0632\u06cc\u0645<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nv\">$ <\/span>docker build <span class=\"nb\">.<\/span> <span class=\"nt\">-t<\/span> guessthebook:v1\n\n<span class=\"o\">[<\/span>+] Building 1.1s <span class=\"o\">(<\/span>11\/11<span class=\"o\">)<\/span> FINISHED                               docker:default\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">[<\/span>internal] load build definition from Dockerfile                       0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> transferring dockerfile: 191B                                       0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">[<\/span>internal] load metadata <span class=\"k\">for <\/span>docker.io\/library\/node:20-alpine          0.9s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">[<\/span>internal] load .dockerignore                                          0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> transferring context: 129B                                          0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">[<\/span>1\/6] FROM docker.io\/library\/node:20-alpine@sha256:66c7d989b6dabba6b4  0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">[<\/span>internal] load build context                                          0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> transferring context: 1.41kB                                        0.0s\n <span class=\"o\">=&gt;<\/span> CACHED <span class=\"o\">[<\/span>2\/6] WORKDIR \/usr\/src\/app                                      0.0s\n <span class=\"o\">=&gt;<\/span> CACHED <span class=\"o\">[<\/span>3\/6] COPY package<span class=\"k\">*<\/span>.json .\/                                     0.0s\n <span class=\"o\">=&gt;<\/span> CACHED <span class=\"o\">[<\/span>4\/6] RUN npm <span class=\"nb\">install                                           <\/span>0.0s\n <span class=\"o\">=&gt;<\/span> CACHED <span class=\"o\">[<\/span>5\/6] COPY <span class=\"nb\">.<\/span> <span class=\"nb\">.<\/span>                                                  0.0s\n <span class=\"o\">=&gt;<\/span> CACHED <span class=\"o\">[<\/span>6\/6] RUN npm run build                                         0.0s\n <span class=\"o\">=&gt;<\/span> exporting to image                                                     0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> exporting layers                                                    0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> writing image sha256:08f32d7f583b7e65a844accafff8fc19930849204c5ae  0.0s\n <span class=\"o\">=&gt;<\/span> <span class=\"o\">=&gt;<\/span> naming to docker.io\/library\/guessthebook:v1                         0.0s\n\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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\u0627 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0647\u0631 \u0644\u0627\u06cc\u0647 \u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647\u060c \u062e\u0631\u0648\u062c\u06cc \u0645\u0634\u0627\u0628\u0647\u06cc \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f.  \u062f\u0633\u062a\u0648\u0631 <code>docker build . -t guessthebook:v1<\/code> Dockerfile \u0631\u0627 \u062f\u0631 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0641\u0639\u0644\u06cc \u0645\u06cc \u062e\u0648\u0627\u0646\u062f\u060c \u06cc\u06a9 \u062a\u0635\u0648\u06cc\u0631 Docker \u0645\u0637\u0627\u0628\u0642 \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644 \u0622\u0646 \u0645\u06cc \u0633\u0627\u0632\u062f \u0648 \u0627\u06cc\u0646 \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0628\u0631\u0686\u0633\u0628 \u06af\u0630\u0627\u0631\u06cc \u0645\u06cc \u06a9\u0646\u062f. <code>guessthebook<\/code> \u0628\u0627 \u0646\u0633\u062e\u0647 <code>v1<\/code>.<\/p>\n<p>\u062d\u0627\u0644 \u0627\u06af\u0631 \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u062e\u0648\u062f \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f\u060c \u0628\u0627\u06cc\u062f \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u062f\u0631 \u0645\u0648\u0631\u062f \u062a\u0635\u0648\u06cc\u0631\u06cc \u06a9\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647 \u0627\u06cc\u0645 \u0645\u0634\u0627\u0647\u062f\u0647 \u06a9\u0646\u06cc\u062f<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>docker images\n\nREPOSITORY                                   TAG            IMAGE ID       CREATED         SIZE\nguessthebook                                 v1             08f32d7f583b   5 minutes ago   275MB\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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><span class=\"ez-toc-section\" id=\"%D8%A7%D8%AC%D8%B1%D8%A7%DB%8C_%DB%8C%DA%A9_%D8%AF%D8%A7%DA%A9%D8%B1_%DA%A9%D8%A7%D9%86%D8%AA%DB%8C%D9%86%D8%B1\"><\/span>\n<p>  \u0627\u062c\u0631\u0627\u06cc \u06cc\u06a9 \u062f\u0627\u06a9\u0631 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0633\u0627\u062e\u062a\u06cc\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0622\u0646 \u0631\u0627 \u0628\u0627 <code>docker run<\/code> \u062f\u0633\u062a\u0648\u0631:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>docker run <span class=\"nt\">-p<\/span> 3000:3000 guessthebook:v1\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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 \u062f\u0633\u062a\u0648\u0631 \u06cc\u06a9 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f <code>guessthebook:v1<\/code> \u062a\u0635\u0648\u06cc\u0631\u060c \u067e\u0648\u0631\u062a \u0646\u0642\u0634\u0647 \u0628\u0631\u062f\u0627\u0631\u06cc <code>3000<\/code> \u0627\u0632 \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0628\u0647 \u0628\u0646\u062f\u0631 <code>3000<\/code> \u062f\u0631 \u062f\u0633\u062a\u06af\u0627\u0647 \u0645\u06cc\u0632\u0628\u0627\u0646  \u0645\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u0645 <code>-p<\/code> \u0628\u0631\u0627\u06cc \u0646\u0642\u0634\u0647 \u0628\u0631\u062f\u0627\u0631\u06cc \u067e\u0648\u0631\u062a<\/p>\n<p>\u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06af\u0632\u06cc\u0646\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u062f\u0633\u062a\u0648\u0631 \u0628\u0627\u0644\u0627 \u0631\u0627 \u0628\u062f\u0627\u0647\u0647 \u06a9\u0646\u06cc\u0645 <code>-d<\/code> \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u062f\u0631 \u062d\u0627\u0644\u062a \u062c\u062f\u0627<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code> docker run  <span class=\"nt\">-d<\/span> <span class=\"nt\">-p<\/span> 3000:3000 guessthebook:v1\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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>\u067e\u0633 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u062f\u0627\u06a9\u0631 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u0631\u0627\u062c\u0639\u0647 \u06a9\u0646\u06cc\u062f <code>http:\/\/localhost:3000<\/code> \u0628\u0631\u0627\u06cc \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u0647\u0645\u0647 \u0686\u06cc\u0632 \u062e\u0648\u0628 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f  \u0627\u06af\u0631 \u0647\u0645\u0647 \u0686\u06cc\u0632 \u062f\u0631\u0633\u062a \u0627\u0633\u062a \u0648 \u062f\u0631\u0633\u062a \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0628\u0627\u06cc\u062f \u0628\u0627 \u0627\u06cc\u0646 \u0635\u0641\u062d\u0647 \u062e\u0648\u0634\u0627\u0645\u062f\u06af\u0648\u06cc\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p><\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u0633\u062a\u0631\u0627\u062d\u062a \u06a9\u0646\u06cc\u062f \u0648 \u0645\u0633\u0627\u0628\u0642\u0647 \u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u062f\u0647\u06cc\u062f \u062a\u0627 \u0628\u0628\u06cc\u0646\u06cc\u062f \u0686\u0647 \u062a\u0639\u062f\u0627\u062f \u062f\u0631\u0633\u062a \u0634\u062f\u0647\u200c\u0627\u06cc\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%B8%D8%B1%D9%81_%D8%B1%D8%A7_%D9%85%D8%AA%D9%88%D9%82%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0638\u0631\u0641 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0627 \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u06a9\u0627\u0646\u062a\u06cc\u0646\u0631 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u06a9\u0646\u06cc\u062f<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>docker stop <container_name or=\"\" class=\"nb\">id<span class=\"o\">&gt;<\/span> <span class=\"c\"># can run `docker ps` to get the name and id<\/span>\n<\/container_name><\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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><span class=\"ez-toc-section\" id=\"%D8%AA%D8%B5%D9%88%DB%8C%D8%B1_%D8%B1%D8%A7_%D8%AF%D8%B1_%D8%AF%D8%A7%DA%A9%D8%B1_%D9%87%D8%A7%D8%A8_%D9%85%D9%86%D8%AA%D8%B4%D8%B1_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062f\u0627\u06a9\u0631 \u0647\u0627\u0628 \u0645\u0646\u062a\u0634\u0631 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u06af\u0631 \u0628\u062e\u0648\u0627\u0647\u06cc\u0645 \u06cc\u06a9 \u0642\u062f\u0645 \u062c\u0644\u0648\u062a\u0631 \u0628\u0631\u0648\u06cc\u0645\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062f\u0627\u06a9\u0631 \u0647\u0627\u0628 \u0645\u0646\u062a\u0634\u0631 \u06a9\u0646\u06cc\u0645.  \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0627\u06af\u0631 \u0642\u0628\u0644\u0627\u064b \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0631\u0627 \u0646\u06a9\u0631\u062f\u0647 \u0627\u06cc\u062f\u060c \u06cc\u06a9 \u062d\u0633\u0627\u0628 \u06a9\u0627\u0631\u0628\u0631\u06cc \u062f\u0631 Docker Hub \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.  \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 \u0645\u062e\u0632\u0646 \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl9l3ctp3zg0qxnl46ckw.png\" alt=\"\u062f\u0627\u06a9\u0631 \u0647\u0627\u0628 \u0627\u06cc\u062c\u0627\u062f \u0635\u0641\u062d\u0647 \u0645\u062e\u0632\u0646\" loading=\"lazy\" width=\"751\" height=\"526\" title=\"\"><\/p>\n<ol>\n<li>\u0627\u0632 \u0637\u0631\u06cc\u0642 docker CLI \u0628\u0647 \u062f\u0627\u06a9\u0631 \u0647\u0627\u0628 \u062e\u0648\u062f \u0648\u0627\u0631\u062f \u0634\u0648\u06cc\u062f\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>docker login\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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<ol>\n<li>\u062a\u0635\u0648\u06cc\u0631 \u0645\u062d\u0644\u06cc \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0628\u0642\u062a \u0628\u0627 \u062a\u0635\u0648\u06cc\u0631 \u0645\u062e\u0632\u0646 \u062a\u06af \u06a9\u0646\u06cc\u062f\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"c\"># docker tag local-image:tagname new-repo:tagname<\/span>\ndocker tag guessthebook:v1 <your-docker-username>\/guessthebook\n<\/your-docker-username><\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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<ol>\n<li>\u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0641\u0634\u0627\u0631 \u062f\u0647\u06cc\u062f\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"c\"># docker push new-repo:tagname<\/span>\ndocker push <your-docker-username>\/guessthebook\n<\/your-docker-username><\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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\u06a9\u0646\u0648\u0646\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0631\u0648\u06cc\u062f \u0648 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u0647\u0627\u0628 \u062f\u0627\u06a9\u0631 \u0634\u0645\u0627 \u062a\u0635\u0648\u06cc\u0631\u06cc \u0631\u0627 \u062f\u0627\u0631\u062f \u06a9\u0647 \u0627\u062e\u06cc\u0631\u0627\u064b \u0641\u0634\u0627\u0631 \u062f\u0627\u062f\u0647\u200c\u0627\u06cc\u062f.<\/p>\n<p>\u0628\u0631\u0627\u06cc \u0622\u0632\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\u060c \u0627\u06a9\u0646\u0648\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062a\u0635\u0648\u06cc\u0631 \u0631\u0627 \u0628\u0627 \u06a9\u0634\u06cc\u062f\u0646 \u0645\u0633\u062a\u0642\u06cc\u0645 \u0627\u0632 \u0622\u0646 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f <code>Docker Hub<\/code><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"c\"># let's remove the locally tagged image first<\/span>\ndocker rmi <your-docker-username>\/guessthebook\n\n<span class=\"c\"># run the container<\/span>\ndocker run <span class=\"nt\">-p<\/span> 3000:3000 <your-docker-username>\/guessthebook\n<\/your-docker-username><\/your-docker-username><\/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>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\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 \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u0627\u0633\u062a.  \u0627\u0645\u06cc\u062f\u0648\u0627\u0631\u0645 \u0627\u0632 \u0627\u06cc\u0646 \u06cc\u06a9\u06cc \u0644\u0630\u062a \u0628\u0631\u062f\u0647 \u0628\u0627\u0634\u06cc\u062f \u0648 \u0647\u0645\u0686\u0646\u06cc\u0646 \u0686\u06cc\u0632 \u062c\u062f\u06cc\u062f\u06cc \u06cc\u0627\u062f \u06af\u0631\u0641\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f!  \u0634\u0645\u0627 \u0631\u0627 \u062f\u0631 \u0642\u0633\u0645\u062a \u0628\u0639\u062f\u06cc \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647 \u0645\u06cc \u0628\u06cc\u0646\u06cc\u0645.  \u0627\u06af\u0631 \u0633\u0624\u0627\u0644 \u06cc\u0627 \u067e\u06cc\u0634\u0646\u0647\u0627\u062f\u06cc \u062f\u0627\u0631\u06cc\u062f\u060c \u0644\u0637\u0641\u0627\u064b \u0622\u0646\u0647\u0627 \u0631\u0627 \u062f\u0631 \u0632\u06cc\u0631 \u0646\u0638\u0631 \u062f\u0647\u06cc\u062f!<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0628\u0647 \u0642\u0633\u0645\u062a 2 \u0633\u0631\u06cc\u0627\u0644 \u062e\u0648\u0634 \u0622\u0645\u062f\u06cc\u062f Docker for Dummies \u062f\u0631 \u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u062a\u0635\u0648\u06cc\u0631\u06cc \u0627\u0632 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628 \u06a9\u0648\u0686\u06a9 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u0648 \u062f\u0631 \u0645\u0648\u0631\u062f \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u06a9\u0647 \u0647\u0631 \u0645\u0631\u062d\u0644\u0647 \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u062f\u0647\u062f \u06cc\u0627\u062f \u0628\u06af\u06cc\u0631\u06cc\u0645. \u0628\u062f\u0648\u0646 \u0647\u06cc\u0686 \u0645\u0642\u062f\u0645\u0647 \u0627\u06cc \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u0645. \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af\u060c \u0645\u0646 \u0642\u0635\u062f \u062f\u0627\u0631\u0645 \u0627\u0632 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0645\u0633\u0627\u0628\u0642\u0647 \u0633\u0627\u062f\u0647 vue-app \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u0645 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":67240,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-67239","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\/67239","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=67239"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/67239\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/67240"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=67239"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=67239"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=67239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}