{"id":560,"date":"2025-08-25T18:09:20","date_gmt":"2025-08-25T14:39:20","guid":{"rendered":"https:\/\/rayka-co.ir\/new\/?post_type=lesson&#038;p=560"},"modified":"2025-11-09T12:01:18","modified_gmt":"2025-11-09T08:31:18","slug":"11-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d9%85%d8%af%db%8c%d8%b1%db%8c%d8%aa-%d9%85%d8%ad%db%8c%d8%b7%d9%87%d8%a7%db%8c-%da%86%d9%86%d8%af-container-%d8%a8%d8%a7-docker-compose","status":"publish","type":"lesson","link":"https:\/\/rayka-co.ir\/new\/\u062f\u0631\u0633\/11-%d8%b3%d8%a7%d8%ae%d8%aa-%d9%88-%d9%85%d8%af%db%8c%d8%b1%db%8c%d8%aa-%d9%85%d8%ad%db%8c%d8%b7%d9%87%d8%a7%db%8c-%da%86%d9%86%d8%af-container-%d8%a8%d8%a7-docker-compose\/","title":{"rendered":"\u06f1\u06f1. \u0633\u0627\u062e\u062a \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u0686\u0646\u062f Container \u0628\u0627 Docker Compose"},"content":{"rendered":"\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u062f\u0631\u0633 \u06cc\u0627\u062f \u0645\u06cc\u200c\u06af\u06cc\u0631\u06cc\u0645 \u06a9\u0647 Docker Compose \u0627\u0628\u0632\u0627\u0631\u06cc \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u0627\u062c\u0631\u0627\u06cc \u0686\u0646\u062f container \u0628\u0647 \u0635\u0648\u0631\u062a \u0647\u0645\u0632\u0645\u0627\u0646 \u0627\u0633\u062a. \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 services \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 container\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u0648 \u0628\u0631\u0627\u06cc \u0647\u0631 \u06a9\u062f\u0627\u0645 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0645\u0627\u0646\u0646\u062f \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u0634\u0628\u06a9\u0647 \u0648 IP \u0645\u0634\u062e\u0635 \u0631\u0627 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0646\u06cc\u0645. \u0639\u0644\u0627\u0648\u0647 \u0628\u0631 \u0627\u06cc\u0646\u060c \u0628\u0627 \u062a\u0646\u0638\u06cc\u0645 environment \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u062f\u0644\u062e\u0648\u0627\u0647 \u0628\u0631\u0627\u06cc \u0647\u0631 container \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f\u060c \u0628\u0627 privileged \u062f\u0633\u062a\u0631\u0633\u06cc\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 \u0633\u06cc\u0633\u062a\u0645 \u0628\u0647 container \u0628\u062f\u0647\u06cc\u062f\u060c \u0648 \u0628\u0627 cap_add \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc \u062e\u0627\u0635 \u0645\u0627\u0646\u0646\u062f \u0645\u062f\u06cc\u0631\u06cc\u062a \u0634\u0628\u06a9\u0647 \u06cc\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 raw sockets \u0631\u0627 \u0641\u0639\u0627\u0644 \u06a9\u0646\u06cc\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 volume \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u06cc\u06a9 \u0641\u0648\u0644\u062f\u0631 \u0627\u0632 \u0647\u0627\u0633\u062a \u0631\u0627 \u0628\u0647 container \u0645\u0627\u0646\u062a \u06a9\u0646\u06cc\u0645 \u062a\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0627\u062e\u0644 container \u0630\u062e\u06cc\u0631\u0647 \u0634\u0648\u0646\u062f \u0648 \u062d\u062a\u06cc \u067e\u0633 \u0627\u0632 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u0648 \u062d\u0630\u0641 containe<strong>r<\/strong>\u0647\u0627\u060c \u0647\u0645\u0686\u0646\u0627\u0646 \u0628\u0647 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u0645. \u062f\u0631 \u0627\u06cc\u0646 \u062f\u0631\u0633 \u0634\u0645\u0627 \u0646\u062d\u0648\u0647 \u062a\u0639\u0631\u06cc\u0641 server \u0648 client\u060c \u0627\u062a\u0635\u0627\u0644 \u0622\u0646\u200c\u0647\u0627 \u0628\u0647 \u06cc\u06a9 network \u0628\u0627 subnet \u0645\u0634\u062e\u0635\u060c \u0627\u062e\u062a\u0635\u0627\u0635 static IP\u060c \u0648 \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631\u0627\u062a ping \u0648 curl \u0628\u0631\u0627\u06cc \u062a\u0633\u062a \u0627\u0631\u062a\u0628\u0627\u0637 \u0631\u0627 \u06cc\u0627\u062f \u0645\u06cc\u200c\u06af\u06cc\u0631\u06cc\u062f.<br>\u0645\u0648\u0627\u0631\u062f\u06cc \u06a9\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u062f\u0631\u0633 \u0628\u062d\u062b \u0648 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u06cc\u200c\u0634\u0648\u0646\u062f \u0639\u0628\u0627\u0631\u062a\u0646\u062f \u0627\u0632<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Docker Compose \u0648 \u06a9\u0627\u0631\u0628\u0631\u062f \u0622\u0646 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0686\u0646\u062f container \u0647\u0645\u0632\u0645\u0627\u0646<\/li>\n\n\n\n<li>\u0627\u06cc\u062c\u0627\u062f \u0648 \u062a\u0639\u0631\u06cc\u0641 services \u0645\u062e\u062a\u0644\u0641 (\u0645\u062b\u0644 server \u0648 client)<\/li>\n\n\n\n<li>\u0627\u062a\u0635\u0627\u0644 container\u0647\u0627 \u0628\u0647 \u06cc\u06a9 network \u0628\u0627 subnet \u0645\u0634\u062e\u0635<\/li>\n\n\n\n<li>\u0627\u062e\u062a\u0635\u0627\u0635 static IP \u0628\u0647 \u0647\u0631 container<\/li>\n\n\n\n<li>\u062a\u0639\u0631\u06cc\u0641 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u0645\u062d\u06cc\u0637\u06cc \u0628\u0627 environment<\/li>\n\n\n\n<li>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 privileged \u0648 cap_add \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc\u200c\u0647\u0627 \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647<\/li>\n\n\n\n<li>\u0645\u0627\u0646\u062a \u06a9\u0631\u062f\u0646 \u0641\u0648\u0644\u062f\u0631\u0647\u0627 \u0628\u0627 volume \u0627\u0632 \u0647\u0627\u0633\u062a \u0628\u0647 container \u0648 \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062d\u062a\u06cc \u067e\u0633 \u0627\u0632 \u062d\u0630\u0641 container<\/li>\n\n\n\n<li>\u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0634\u0628\u06a9\u0647 \u0645\u0627\u0646\u0646\u062f ping \u0648 curl \u0628\u0631\u0627\u06cc \u062a\u0633\u062a \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u06cc\u0646 container\u0647\u0627<\/li>\n\n\n\n<li>\u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u0645\u062d\u06cc\u0637 \u0628\u0627 docker compose down \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<\/ul>\n\n\n<div class=\"sensei-block-wrapper\">\n<div class=\"wp-block-sensei-lms-lesson-actions\"><div class=\"sensei-buttons-container\">\n\n\n\n\n\n\n\n<\/div><\/div>\n<\/div>\n\n\n<style>.h_iframe-aparat_embed_frame{position:relative;}.h_iframe-aparat_embed_frame .ratio{display:block;width:100%;height:auto;}.h_iframe-aparat_embed_frame iframe{position:absolute;top:0;left:0;width:100%;height:100%;}<\/style><div class=\"h_iframe-aparat_embed_frame\"><span style=\"display: block;padding-top: 57%\"><\/span><iframe src=\"https:\/\/www.aparat.com\/video\/video\/embed\/videohash\/pxn2999\/vt\/frame\"  allowFullScreen=\"true\" webkitallowfullscreen=\"true\" mozallowfullscreen=\"true\"><\/iframe><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"_initial_content":"","_new_post":false,"_quiz_has_questions":false,"_lesson_complexity":"easy","_lesson_length":10,"_lesson_course":338,"_lesson_preview":"preview"},"lesson-tag":[],"class_list":["post-560","lesson","type-lesson","status-publish","hentry","module-ci-cd-with-forgejo","post"],"_links":{"self":[{"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/lessons\/560","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/lessons"}],"about":[{"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/types\/lesson"}],"replies":[{"embeddable":true,"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/comments?post=560"}],"version-history":[{"count":7,"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/lessons\/560\/revisions"}],"predecessor-version":[{"id":982,"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/lessons\/560\/revisions\/982"}],"wp:attachment":[{"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/media?parent=560"}],"wp:term":[{"taxonomy":"lesson-tag","embeddable":true,"href":"https:\/\/rayka-co.ir\/new\/wp-json\/wp\/v2\/lesson-tag?post=560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}