{"id":5847,"date":"2026-10-04T12:23:05","date_gmt":"2026-10-04T09:23:05","guid":{"rendered":"https:\/\/maram.iq\/blogs\/docker-compose-for-beginners-vps\/"},"modified":"2026-10-04T12:34:38","modified_gmt":"2026-10-04T09:34:38","slug":"docker-compose-for-beginners-vps","status":"publish","type":"post","link":"https:\/\/maram.iq\/blogs\/docker-compose-for-beginners-vps\/","title":{"rendered":"Docker Compose \u0644\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646: \u0634\u063a\u0651\u0644 \u062a\u0637\u0628\u064a\u0642\u0643 \u0648\u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a\u0647 \u0628\u0645\u0644\u0641 \u0648\u0627\u062d\u062f \u0639\u0644\u0649 VPS (2026)"},"content":{"rendered":"\n<p>\u0645\u0639\u0638\u0645 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u062d\u0642\u064a\u0642\u064a\u0629 \u0644\u064a\u0633\u062a \u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629\u060c \u0628\u0644 \u0639\u062f\u0651\u0629 \u0623\u062c\u0632\u0627\u0621 \u062a\u0639\u0645\u0644 \u0645\u0639\u064b\u0627: \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u060c \u0648\u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a\u0647\u060c \u0648\u0631\u0628\u0645\u0627 \u0643\u0627\u0634 Redis. \u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u064a\u062f\u0648\u064a\u064b\u0627 \u0628\u0623\u0648\u0627\u0645\u0631 <code>docker run<\/code> \u0645\u0646\u0641\u0635\u0644\u0629\u060c \u0648\u0631\u0628\u0637\u0647\u0627 \u0628\u0634\u0628\u0643\u0629\u060c \u0648\u062a\u0630\u0643\u0651\u0631 \u062a\u0631\u062a\u064a\u0628\u0647\u0627 \u0648\u0645\u0646\u0627\u0641\u0630\u0647\u0627 \u0641\u064a \u0643\u0644 \u0645\u0631\u0651\u0629 \u2014 \u0645\u062a\u0639\u0628 \u0648\u0645\u0639\u0631\u0651\u0636 \u0644\u0644\u062e\u0637\u0623. \u0647\u0646\u0627 \u064a\u0623\u062a\u064a <strong>Docker Compose<\/strong> \u0644\u0644\u0625\u0646\u0642\u0627\u0630: \u062a\u0635\u0641 \u0643\u0644 \u0623\u062c\u0632\u0627\u0621 \u0645\u0634\u0631\u0648\u0639\u0643 \u0641\u064a \u0645\u0644\u0641 \u0648\u0627\u062d\u062f\u060c \u0648\u062a\u0634\u063a\u0651\u0644\u0647\u0627 \u0643\u0644\u0647\u0627 \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f. \u0641\u064a \u0647\u0630\u0627 \u0627\u0644\u062f\u0644\u064a\u0644 \u0644\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646 \u0645\u0646 \u0645\u0631\u0627\u0645 \u0647\u0648\u0633\u062a\u060c \u062a\u062a\u0639\u0644\u0651\u0645 \u0643\u064a\u0641 \u062a\u0634\u063a\u0651\u0644 \u062a\u0637\u0628\u064a\u0642\u0643 \u0648\u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a\u0647 \u0645\u0639\u064b\u0627 \u0639\u0644\u0649 VPS \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 Compose \u2014 \u062e\u0637\u0648\u0629 \u0628\u062e\u0637\u0648\u0629\u060c \u0628\u0645\u062b\u0627\u0644 \u062d\u0642\u064a\u0642\u064a.<\/p>\n\n\n\n<p>\ud83d\udce6 \u0625\u0646 \u0643\u0646\u062a \u062c\u062f\u064a\u062f\u064b\u0627 \u062a\u0645\u0627\u0645\u064b\u0627 \u0639\u0644\u0649 \u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a\u060c \u0627\u0628\u062f\u0623 \u0623\u0648\u0644\u064b\u0627 \u0628\u062f\u0644\u064a\u0644 <a href=\"https:\/\/maram.iq\/blogs\/docker-%d8%a7%d9%84%d8%ad%d8%a7%d9%88%d9%8a%d8%a7%d8%aa-%d8%a7%d9%84%d8%af%d9%84%d9%8a%d9%84-%d8%a7%d9%84%d8%b4%d8%a7%d9%85%d9%84-%d8%a7%d9%84%d8%b5%d9%81%d8%b1-%d8%a7%d9%84%d8%a5%d9%86%d8%aa%d8%a7\/\">Docker \u0648\u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a \u0645\u0646 \u0627\u0644\u0635\u0641\u0631<\/a>\u060c \u062b\u0645 \u0639\u064f\u062f \u0625\u0644\u0649 \u0647\u0646\u0627.<\/p>\n\n\n\n<div style=\"background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;padding:1.25rem 1.5rem;margin:1.5rem 0\"><p style=\"font-weight:800;color:#0369a1;margin:0 0 .5rem;font-size:1.05rem\">\u26a1 \u0627\u0644\u0625\u062c\u0627\u0628\u0629 \u0627\u0644\u0645\u062e\u062a\u0635\u0631\u0629<\/p><div style=\"margin:0;line-height:1.9\"><strong>Docker Compose<\/strong> \u0623\u062f\u0627\u0629 \u062a\u0635\u0641 \u0628\u0647\u0627 \u062e\u062f\u0645\u0627\u062a \u0645\u0634\u0631\u0648\u0639\u0643 (\u0627\u0644\u062a\u0637\u0628\u064a\u0642\u060c \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u060c \u0627\u0644\u0643\u0627\u0634\u2026) \u0641\u064a \u0645\u0644\u0641 <code>docker-compose.yml<\/code> \u0648\u0627\u062d\u062f\u060c \u062b\u0645 \u062a\u0634\u063a\u0651\u0644\u0647\u0627 \u062c\u0645\u064a\u0639\u064b\u0627 \u0628\u0623\u0645\u0631 <code>docker compose up -d<\/code>. \u064a\u062a\u0643\u0641\u0651\u0644 Compose \u0628\u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0634\u0628\u0643\u0629 \u0628\u064a\u0646\u0647\u0627\u060c \u0648\u062a\u0631\u062a\u064a\u0628 \u062a\u0634\u063a\u064a\u0644\u0647\u0627\u060c \u0648\u062d\u0641\u0638 \u0628\u064a\u0627\u0646\u0627\u062a\u0647\u0627 \u0641\u064a volumes. \u0627\u0644\u0646\u062a\u064a\u062c\u0629: \u0628\u064a\u0626\u0629 \u0645\u062a\u0643\u0627\u0645\u0644\u0629 \u062a\u064f\u0634\u063a\u064e\u0651\u0644 \u0648\u062a\u064f\u0648\u0642\u064e\u0641 \u0648\u062a\u064f\u0646\u0642\u064e\u0644 \u0628\u064a\u0646 \u0627\u0644\u0633\u064a\u0631\u0641\u0631\u0627\u062a \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f \u2014 \u0628\u062f\u0644 \u0639\u0634\u0631\u0627\u062a \u0623\u0648\u0627\u0645\u0631 docker run \u0627\u0644\u064a\u062f\u0648\u064a\u0629.<\/div><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/maram.iq\/blogs\/wp-content\/uploads\/2026\/09\/docker-compose-beginners.png\" alt=\"Docker Compose \u0644\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646: \u0645\u0642\u0627\u0631\u0646\u0629 \u0628\u064a\u0646 \u0627\u0644\u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u064a\u062f\u0648\u064a \u0648\u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u0648\u0627\u062d\u062f\u060c \u0648\u062a\u0634\u0631\u064a\u062d \u0645\u0644\u0641 docker-compose.yml \u0648\u0627\u0644\u0623\u0648\u0627\u0645\u0631\" width=\"2400\" height=\"1480\"\/><figcaption class=\"wp-element-caption\">Docker Compose: \u0645\u0644\u0641 \u0648\u0627\u062d\u062f \u064a\u0635\u0641 \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u0648\u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a\u0647\u060c \u0648\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0644\u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u0645\u0639\u064b\u0627.<\/figcaption><\/figure>\n\n\n\n<nav class=\"table-of-contents\" style=\"background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.1rem 1.4rem;margin:1.5rem 0\"><p style=\"font-weight:800;color:#0f172a;margin:0 0 .6rem;font-size:1.05rem\">\u0645\u062d\u062a\u0648\u064a\u0627\u062a \u0627\u0644\u0645\u0642\u0627\u0644<\/p><ol style=\"margin:0;padding-inline-start:1.3rem;line-height:2\"><li><a href=\"#what\">\u0645\u0627 \u0647\u0648 Docker Compose \u0648\u0644\u0645\u0627\u0630\u0627 \u064a\u0633\u0647\u0651\u0644 \u062d\u064a\u0627\u062a\u0643\u061f<\/a><\/li><li><a href=\"#when\">\u0645\u062a\u0649 \u062a\u062d\u062a\u0627\u062c\u0647\u061f \u0648\u0645\u062a\u0649 \u064a\u0643\u0641\u064a\u0643 docker run\u061f<\/a><\/li><li><a href=\"#concepts\">\u0627\u0644\u0645\u0641\u0627\u0647\u064a\u0645 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0642\u0628\u0644 \u0623\u0648\u0644 \u0645\u0644\u0641<\/a><\/li><li><a href=\"#example\">\u0623\u0648\u0644 \u0645\u062b\u0627\u0644: \u062a\u0637\u0628\u064a\u0642 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a \u0628\u0645\u0644\u0641 Compose<\/a><\/li><li><a href=\"#commands\">\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0641\u064a Compose<\/a><\/li><li><a href=\"#volumes\">\u062d\u0641\u0638 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a: \u0644\u0627 \u062a\u0641\u0642\u062f \u0642\u0627\u0639\u062f\u062a\u0643 \u0639\u0646\u062f \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0634\u063a\u064a\u0644<\/a><\/li><li><a href=\"#production\">\u0645\u0646 \u0627\u0644\u062a\u062c\u0631\u0628\u0629 \u0625\u0644\u0649 \u0627\u0644\u0625\u0646\u062a\u0627\u062c<\/a><\/li><li><a href=\"#mistakes\">\u0623\u062e\u0637\u0627\u0621 \u0634\u0627\u0626\u0639\u0629 \u0639\u0646\u062f \u0627\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646<\/a><\/li><li><a href=\"#faq\">\u0627\u0644\u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0634\u0627\u0626\u0639\u0629<\/a><\/li><li><a href=\"#end\">\u0627\u0644\u062e\u0644\u0627\u0635\u0629<\/a><\/li><\/ol><\/nav>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what\">\u0645\u0627 \u0647\u0648 Docker Compose \u0648\u0644\u0645\u0627\u0630\u0627 \u064a\u0633\u0647\u0651\u0644 \u062d\u064a\u0627\u062a\u0643\u061f<\/h2>\n\n\n\n<p><strong>Docker Compose<\/strong> \u0623\u062f\u0627\u0629 \u0631\u0633\u0645\u064a\u0629 \u0645\u0646 Docker \u0644\u062a\u0639\u0631\u064a\u0641 \u0648\u062a\u0634\u063a\u064a\u0644 \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0645\u062a\u0639\u062f\u0651\u062f\u0629 \u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a. \u0628\u062f\u0644 \u0623\u0646 \u062a\u0643\u062a\u0628 \u0623\u0645\u0631\u064b\u0627 \u0637\u0648\u064a\u0644\u064b\u0627 \u0644\u0643\u0644 \u062d\u0627\u0648\u064a\u0629 \u0648\u062a\u0631\u0628\u0637\u0647\u0627 \u064a\u062f\u0648\u064a\u064b\u0627\u060c \u062a\u0636\u0639 \u0643\u0644 \u0634\u064a\u0621 \u0641\u064a \u0645\u0644\u0641 \u0646\u0635\u0651\u064a \u0648\u0627\u062d\u062f \u064a\u064f\u0633\u0645\u0651\u0649 <code>docker-compose.yml<\/code>. \u0645\u0627 \u064a\u0648\u0641\u0651\u0631\u0647 Compose:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>\u0623\u0645\u0631 \u0648\u0627\u062d\u062f \u0644\u0643\u0644 \u0634\u064a\u0621:<\/strong> <code>docker compose up<\/code> \u064a\u0634\u063a\u0651\u0644 \u0643\u0644 \u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0645\u0639\u064b\u0627.<\/li><li><strong>\u0634\u0628\u0643\u0629 \u062a\u0644\u0642\u0627\u0626\u064a\u0629:<\/strong> \u062a\u062a\u062d\u062f\u0651\u062b \u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a \u0645\u0639 \u0628\u0639\u0636\u0647\u0627 \u0628\u0627\u0644\u0627\u0633\u0645 \u062f\u0648\u0646 \u0625\u0639\u062f\u0627\u062f \u0634\u0628\u0643\u0629 \u064a\u062f\u0648\u064a.<\/li><li><strong>\u062a\u0631\u062a\u064a\u0628 \u0627\u0644\u062a\u0634\u063a\u064a\u0644:<\/strong> \u062a\u062d\u062f\u0651\u062f \u0623\u0646 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u062a\u0628\u062f\u0623 \u0642\u0628\u0644 \u0627\u0644\u062a\u0637\u0628\u064a\u0642.<\/li><li><strong>\u0642\u0627\u0628\u0644\u064a\u0629 \u0627\u0644\u0646\u0642\u0644:<\/strong> \u0627\u0644\u0645\u0644\u0641 \u0646\u0641\u0633\u0647 \u064a\u0639\u0645\u0644 \u0639\u0644\u0649 \u062c\u0647\u0627\u0632\u0643 \u0648\u0639\u0644\u0649 \u0633\u064a\u0631\u0641\u0631\u0643 \u2014 \u0646\u0641\u0633 \u0627\u0644\u0628\u064a\u0626\u0629 \u0628\u0627\u0644\u0636\u0628\u0637.<\/li><\/ul>\n\n\n\n<p>\u062a\u0648\u062b\u0651\u0642 <a href=\"https:\/\/docs.docker.com\/compose\/\" target=\"_blank\" rel=\"noopener\">\u0635\u0641\u062d\u0629 Docker Compose \u0627\u0644\u0631\u0633\u0645\u064a\u0629<\/a> \u0643\u0644 \u062e\u064a\u0627\u0631\u0627\u062a\u0647\u060c \u0644\u0643\u0646 \u0645\u0627 \u0633\u062a\u062a\u0639\u0644\u0651\u0645\u0647 \u0647\u0646\u0627 \u064a\u0643\u0641\u064a\u0643 \u0644\u062a\u0634\u063a\u064a\u0644 \u0645\u0639\u0638\u0645 \u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"when\">\u0645\u062a\u0649 \u062a\u062d\u062a\u0627\u062c\u0647\u061f \u0648\u0645\u062a\u0649 \u064a\u0643\u0641\u064a\u0643 docker run\u061f<\/h2>\n\n\n\n<p>\u062a\u062d\u062a\u0627\u062c\u0647 \u0645\u062a\u0649 \u0643\u0627\u0646 \u0645\u0634\u0631\u0648\u0639\u0643 \u0623\u0643\u062b\u0631 \u0645\u0646 \u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629\u060c \u0648\u0647\u0648 \u0627\u0644\u063a\u0627\u0644\u0628:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u062a\u0637\u0628\u064a\u0642 \u0648\u064a\u0628 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a (\u0627\u0644\u0623\u0643\u062b\u0631 \u0634\u064a\u0648\u0639\u064b\u0627).<\/li><li>\u062a\u0637\u0628\u064a\u0642 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + \u0643\u0627\u0634 Redis.<\/li><li>\u0639\u062f\u0651\u0629 \u062e\u062f\u0645\u0627\u062a \u062e\u0644\u0641\u064a\u0629 (Backend + Worker + \u0637\u0627\u0628\u0648\u0631 \u0645\u0647\u0627\u0645).<\/li><li>\u0623\u064a \u0628\u064a\u0626\u0629 \u062a\u0631\u064a\u062f \u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u0628\u0646\u0641\u0633 \u0627\u0644\u0634\u0643\u0644 \u0639\u0644\u0649 \u062c\u0647\u0627\u0632\u0643 \u0648\u0639\u0644\u0649 \u0627\u0644\u0633\u064a\u0631\u0641\u0631.<\/li><\/ul>\n\n\n\n<p>\u0644\u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 \u0642\u062f \u064a\u0643\u0641\u064a\u0643 <code>docker run<\/code>\u060c \u0644\u0643\u0646 \u0628\u0645\u062c\u0631\u0651\u062f \u0625\u0636\u0627\u0641\u0629 \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a \u064a\u0635\u0628\u062d Compose \u0623\u0648\u0636\u062d \u0648\u0623\u0633\u0647\u0644.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"concepts\">\u0627\u0644\u0645\u0641\u0627\u0647\u064a\u0645 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0642\u0628\u0644 \u0623\u0648\u0644 \u0645\u0644\u0641<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>\u0627\u0644\u062e\u062f\u0645\u0629 (service):<\/strong> \u0643\u0644 \u062d\u0627\u0648\u064a\u0629 \u0641\u064a \u0645\u0634\u0631\u0648\u0639\u0643 (app\u060c db\u2026) \u062a\u064f\u0639\u0631\u064e\u0651\u0641 \u0643\u062e\u062f\u0645\u0629.<\/li><li><strong>\u0627\u0644\u0635\u0648\u0631\u0629 (image):<\/strong> \u0627\u0644\u0642\u0627\u0644\u0628 \u0627\u0644\u0630\u064a \u062a\u064f\u0628\u0646\u0649 \u0645\u0646\u0647 \u0627\u0644\u062d\u0627\u0648\u064a\u0629 (\u0645\u062b\u0644 <code>postgres:16<\/code>).<\/li><li><strong>\u0627\u0644\u0645\u0646\u0627\u0641\u0630 (ports):<\/strong> \u0631\u0628\u0637 \u0645\u0646\u0641\u0630 \u062f\u0627\u062e\u0644\u064a \u0628\u0627\u0644\u062d\u0627\u0648\u064a\u0629 \u0628\u0645\u0646\u0641\u0630 \u0639\u0644\u0649 \u0627\u0644\u0633\u064a\u0631\u0641\u0631.<\/li><li><strong>\u0627\u0644\u062a\u062e\u0632\u064a\u0646 (volumes):<\/strong> \u0645\u0633\u0627\u062d\u0629 \u062f\u0627\u0626\u0645\u0629 \u062a\u062d\u0641\u0638 \u0628\u064a\u0627\u0646\u0627\u062a \u0642\u0627\u0639\u062f\u062a\u0643 \u062d\u062a\u0649 \u0644\u0648 \u062d\u064f\u0630\u0641\u062a \u0627\u0644\u062d\u0627\u0648\u064a\u0629.<\/li><li><strong>\u0627\u0644\u0634\u0628\u0643\u0629 (network):<\/strong> \u064a\u0646\u0634\u0626\u0647\u0627 Compose \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627 \u0644\u062a\u062a\u062d\u062f\u0651\u062b \u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0628\u0627\u0644\u0627\u0633\u0645.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"example\">\u0623\u0648\u0644 \u0645\u062b\u0627\u0644: \u062a\u0637\u0628\u064a\u0642 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a \u0628\u0645\u0644\u0641 Compose<\/h2>\n\n\n\n<p>\u062b\u0628\u0651\u062a Docker \u0639\u0644\u0649 \u0633\u064a\u0631\u0641\u0631\u0643 (\u0628\u0639\u062f <a href=\"https:\/\/maram.iq\/blogs\/maram-linux-server-first-steps\/\">\u062a\u062c\u0647\u064a\u0632 Ubuntu<\/a>)\u060c \u062b\u0645 \u0623\u0646\u0634\u0626 \u0645\u0644\u0641 <code>docker-compose.yml<\/code> \u064a\u0635\u0641 \u062a\u0637\u0628\u064a\u0642 Node \u0648\u0642\u0627\u0639\u062f\u0629 PostgreSQL:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>services:\n  app:\n    image: node:20\n    working_dir: \/app\n    volumes:\n      - .\/:\/app\n    command: npm start\n    ports:\n      - &quot;3000:3000&quot;\n    depends_on:\n      - db\n\n  db:\n    image: postgres:16\n    environment:\n      POSTGRES_PASSWORD: &quot;\u0636\u0639_\u0643\u0644\u0645\u0629_\u0645\u0631\u0648\u0631_\u0642\u0648\u064a\u0629&quot;\n      POSTGRES_DB: myapp\n    volumes:\n      - dbdata:\/var\/lib\/postgresql\/data\n\nvolumes:\n  dbdata:<\/code><\/pre>\n\n\n\n<p>\u0644\u0627\u062d\u0638: \u062e\u062f\u0645\u062a\u0627\u0646 (<code>app<\/code> \u0648<code>db<\/code>)\u060c \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u064a\u0646\u062a\u0638\u0631 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0639\u0628\u0631 <code>depends_on<\/code>\u060c \u0648\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0642\u0627\u0639\u062f\u0629 \u0645\u062d\u0641\u0648\u0638\u0629 \u0641\u064a volume \u0627\u0633\u0645\u0647 <code>dbdata<\/code> \u0641\u0644\u0627 \u062a\u0636\u064a\u0639. \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u064a\u062a\u0651\u0635\u0644 \u0628\u0642\u0627\u0639\u062f\u062a\u0647 \u0628\u0627\u0633\u0645 \u0627\u0644\u062e\u062f\u0645\u0629 <code>db<\/code> \u0645\u0628\u0627\u0634\u0631\u0629 \u062f\u0648\u0646 \u0639\u0646\u0648\u0627\u0646 IP.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"commands\">\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0641\u064a Compose<\/h2>\n\n\n\n<p>\u0645\u0646 \u062f\u0627\u062e\u0644 \u0645\u062c\u0644\u0651\u062f \u0627\u0644\u0645\u0644\u0641\u060c \u0647\u0630\u0647 \u0643\u0644 \u0645\u0627 \u062a\u062d\u062a\u0627\u062c\u0647 \u064a\u0648\u0645\u064a\u064b\u0627:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>docker compose up -d      # \u064a\u0634\u063a\u0651\u0644 \u0643\u0644 \u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0641\u064a \u0627\u0644\u062e\u0644\u0641\u064a\u0629\ndocker compose ps         # \u064a\u0639\u0631\u0636 \u062d\u0627\u0644\u0629 \u0627\u0644\u062e\u062f\u0645\u0627\u062a\ndocker compose logs -f    # \u064a\u062a\u0627\u0628\u0639 \u0627\u0644\u0633\u062c\u0644\u0651\u0627\u062a \u0644\u062d\u0638\u064a\u064b\u0627\ndocker compose down       # \u064a\u0648\u0642\u0641 \u0648\u064a\u0632\u064a\u0644 \u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a (\u062a\u0628\u0642\u0649 \u0627\u0644\u0640 volumes)<\/code><\/pre>\n\n\n\n<p>\u0623\u0645\u0631 <code>up -d<\/code> \u0648\u062d\u062f\u0647 \u064a\u0628\u0646\u064a \u0627\u0644\u0634\u0628\u0643\u0629 \u0648\u064a\u0634\u063a\u0651\u0644 \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u0648\u0642\u0627\u0639\u062f\u062a\u0647 \u0645\u0639\u064b\u0627 \u0628\u0627\u0644\u062a\u0631\u062a\u064a\u0628 \u0627\u0644\u0635\u062d\u064a\u062d. \u0648\u0639\u0646\u062f \u0627\u0644\u062a\u0639\u062f\u064a\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0644\u0641\u060c <code>docker compose up -d<\/code> \u0645\u0631\u0651\u0629 \u0623\u062e\u0631\u0649 \u064a\u0637\u0628\u0651\u0642 \u0627\u0644\u062a\u063a\u064a\u064a\u0631 \u0641\u0642\u0637.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"volumes\">\u062d\u0641\u0638 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a: \u0644\u0627 \u062a\u0641\u0642\u062f \u0642\u0627\u0639\u062f\u062a\u0643 \u0639\u0646\u062f \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0634\u063a\u064a\u0644<\/h2>\n\n\n\n<p>\u0623\u0647\u0645\u0651 \u062f\u0631\u0633 \u0644\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646: \u0627\u0644\u062d\u0627\u0648\u064a\u0629 \u0645\u0624\u0642\u0651\u062a\u0629\u060c \u0641\u0625\u0646 \u062e\u0632\u0651\u0646\u062a \u0628\u064a\u0627\u0646\u0627\u062a \u0642\u0627\u0639\u062f\u062a\u0643 \u062f\u0627\u062e\u0644\u0647\u0627 \u0641\u0642\u062f\u062a\u0647\u0627 \u0639\u0646\u062f \u0623\u0648\u0644 <code>down<\/code>. \u0627\u0644\u062d\u0644\u0651 \u0647\u0648 <strong>volume<\/strong> \u0643\u0645\u0627 \u0641\u064a \u0627\u0644\u0645\u062b\u0627\u0644 (<code>dbdata<\/code>): \u0645\u0633\u0627\u062d\u0629 \u0639\u0644\u0649 \u0642\u0631\u0635 \u0627\u0644\u0633\u064a\u0631\u0641\u0631 \u062a\u0628\u0642\u0649 \u0645\u0633\u062a\u0642\u0644\u0651\u0629 \u0639\u0646 \u0627\u0644\u062d\u0627\u0648\u064a\u0629. \u0645\u0639 \u0630\u0644\u0643\u060c \u0627\u0644\u0640 volume \u0644\u064a\u0633 \u0646\u0633\u062e\u0629 \u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629 \u2014 \u0645\u0627 \u0632\u0644\u062a \u062a\u062d\u062a\u0627\u062c \u0646\u0633\u062e\u064b\u0627 \u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629 \u062d\u0642\u064a\u0642\u064a\u0629 \u062e\u0627\u0631\u062c \u0627\u0644\u0633\u064a\u0631\u0641\u0631.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"production\">\u0645\u0646 \u0627\u0644\u062a\u062c\u0631\u0628\u0629 \u0625\u0644\u0649 \u0627\u0644\u0625\u0646\u062a\u0627\u062c<\/h2>\n\n\n\n<p>\u0628\u0639\u062f \u0623\u0646 \u064a\u0639\u0645\u0644 \u0645\u0634\u0631\u0648\u0639\u0643 \u0645\u062d\u0644\u064a\u064b\u0627 \u0628\u0640 Compose\u060c \u0644\u0646\u0634\u0631\u0647 \u0644\u0644\u0639\u0627\u0644\u0645: \u0636\u0639 <a href=\"https:\/\/maram.iq\/blogs\/maram-nginx-domain-free-ssl\/\">Nginx \u0643\u0648\u0643\u064a\u0644 \u0639\u0643\u0633\u064a \u0623\u0645\u0627\u0645 \u0627\u0644\u062d\u0627\u0648\u064a\u0629 \u0648\u0641\u0639\u0651\u0644 SSL \u0645\u062c\u0627\u0646\u064a\u064b\u0627<\/a>\u060c \u0648\u0637\u0628\u0651\u0642 <a href=\"https:\/\/maram.iq\/blogs\/vps-security-ssh-fail2ban-firewall\/\">\u062a\u0623\u0645\u064a\u0646 VPS \u0627\u0644\u0623\u0633\u0627\u0633\u064a<\/a>. \u0648\u0644\u0645\u0634\u0627\u0631\u064a\u0639 \u0623\u0643\u0628\u0631 \u062a\u062d\u062a\u0627\u062c \u062a\u0648\u0633\u0651\u0639\u064b\u0627\u060c \u0631\u0627\u062c\u0650\u0639 <a href=\"https:\/\/maram.iq\/blogs\/docker-compose-production-vs-kubernetes\/\">Docker Compose \u0641\u064a Production: \u0647\u0644 \u064a\u0643\u0641\u064a \u0623\u0645 \u062a\u062d\u062a\u0627\u062c Kubernetes\u061f<\/a>. \u0648\u062d\u0645\u0651\u0644 \u0627\u0644\u0635\u0648\u0631 \u0627\u0644\u0631\u0633\u0645\u064a\u0629 \u0645\u0646 <a href=\"https:\/\/hub.docker.com\/\" target=\"_blank\" rel=\"noopener\">Docker Hub<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"mistakes\">\u0623\u062e\u0637\u0627\u0621 \u0634\u0627\u0626\u0639\u0629 \u0639\u0646\u062f \u0627\u0644\u0645\u0628\u062a\u062f\u0626\u064a\u0646<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>\u0646\u0633\u064a\u0627\u0646 volume \u0644\u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a:<\/strong> \u062a\u0641\u0642\u062f \u0628\u064a\u0627\u0646\u0627\u062a\u0643 \u0639\u0646\u062f \u0623\u0648\u0644 <code>down<\/code>.<\/li><li><strong>\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0636\u0639\u064a\u0641\u0629 \u0641\u064a environment:<\/strong> \u0627\u0633\u062a\u062e\u062f\u0645 \u0643\u0644\u0645\u0629 \u0642\u0648\u064a\u0629\u060c \u0648\u0644\u0627 \u062a\u0631\u0641\u0639 \u0627\u0644\u0645\u0644\u0641 \u0644\u0645\u0633\u062a\u0648\u062f\u0639 \u0639\u0627\u0645 \u0628\u0647\u0627.<\/li><li><strong>\u062a\u0639\u0627\u0631\u0636 \u0627\u0644\u0645\u0646\u0627\u0641\u0630:<\/strong> \u0645\u0646\u0641\u0630 \u0645\u0634\u063a\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0633\u064a\u0631\u0641\u0631 \u064a\u0645\u0646\u0639 \u0627\u0644\u062a\u0634\u063a\u064a\u0644 \u2014 \u063a\u064a\u0651\u0631 \u0627\u0644\u0631\u0628\u0637 \u0641\u064a <code>ports<\/code>.<\/li><li><strong>\u062a\u0648\u0642\u0651\u0639 \u0623\u0646 <code>down<\/code> \u064a\u062d\u0641\u0638 \u0643\u0644 \u0634\u064a\u0621:<\/strong> \u064a\u0632\u064a\u0644 \u0627\u0644\u062d\u0627\u0648\u064a\u0627\u062a\u061b \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u062a\u0628\u0642\u0649 \u0641\u064a \u0627\u0644\u0640 volume \u0641\u0642\u0637.<\/li><li><strong>\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0644\u0623\u0645\u0631 \u0627\u0644\u0642\u062f\u064a\u0645 <code>docker-compose<\/code> (\u0628\u0634\u0631\u0637\u0629):<\/strong> \u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u062d\u062f\u064a\u062b\u0629 \u0647\u064a <code>docker compose<\/code> (\u0628\u0645\u0633\u0627\u0641\u0629).<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">\u0627\u0644\u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0634\u0627\u0626\u0639\u0629<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u0645\u0627 \u0627\u0644\u0641\u0631\u0642 \u0628\u064a\u0646 Docker \u0648Docker Compose\u061f<\/h3>\n\n\n\n<p>Docker \u064a\u0634\u063a\u0651\u0644 \u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629 \u0628\u0623\u0645\u0631 docker run\u060c \u0628\u064a\u0646\u0645\u0627 Docker Compose \u064a\u0635\u0641 \u0648\u064a\u0634\u063a\u0651\u0644 \u0639\u062f\u0651\u0629 \u062d\u0627\u0648\u064a\u0627\u062a \u0645\u0639\u064b\u0627 (\u062a\u0637\u0628\u064a\u0642 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + \u0643\u0627\u0634) \u0645\u0646 \u0645\u0644\u0641 \u0648\u0627\u062d\u062f \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f\u060c \u0645\u0639 \u0631\u0628\u0637\u0647\u0627 \u0648\u062a\u0631\u062a\u064a\u0628 \u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0647\u0644 Docker Compose \u0645\u0646\u0627\u0633\u0628 \u0644\u0644\u0625\u0646\u062a\u0627\u062c\u061f<\/h3>\n\n\n\n<p>\u0646\u0639\u0645 \u0644\u0644\u0645\u0634\u0627\u0631\u064a\u0639 \u0627\u0644\u0635\u063a\u064a\u0631\u0629 \u0648\u0627\u0644\u0645\u062a\u0648\u0633\u0651\u0637\u0629 \u0639\u0644\u0649 \u0633\u064a\u0631\u0641\u0631 \u0648\u0627\u062d\u062f\u060c \u062e\u0627\u0635\u0629 \u0645\u0639 Nginx \u0648SSL \u0623\u0645\u0627\u0645\u0647. \u0644\u0644\u0645\u0634\u0627\u0631\u064a\u0639 \u0627\u0644\u062a\u064a \u062a\u062d\u062a\u0627\u062c \u062a\u0648\u0633\u0651\u0639\u064b\u0627 \u0623\u0641\u0642\u064a\u064b\u0627 \u0639\u0628\u0631 \u0639\u062f\u0651\u0629 \u062e\u0648\u0627\u062f\u0645 \u0642\u062f \u062a\u062d\u062a\u0627\u062c \u0623\u062f\u0648\u0627\u062a \u062a\u0646\u0633\u064a\u0642 \u0623\u0643\u0628\u0631 \u0645\u062b\u0644 Kubernetes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0623\u064a\u0646 \u062a\u064f\u062d\u0641\u0638 \u0628\u064a\u0627\u0646\u0627\u062a \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u061f<\/h3>\n\n\n\n<p>\u0641\u064a volume \u062a\u0639\u0631\u0651\u0641\u0647 \u0641\u064a \u0627\u0644\u0645\u0644\u0641 (\u0645\u062b\u0644 dbdata)\u060c \u0648\u0647\u0648 \u0645\u0633\u0627\u062d\u0629 \u0639\u0644\u0649 \u0642\u0631\u0635 \u0627\u0644\u0633\u064a\u0631\u0641\u0631 \u0645\u0633\u062a\u0642\u0644\u0651\u0629 \u0639\u0646 \u0627\u0644\u062d\u0627\u0648\u064a\u0629 \u062a\u0628\u0642\u0649 \u0628\u0639\u062f \u062d\u0630\u0641\u0647\u0627. \u0644\u0643\u0646\u0647 \u0644\u064a\u0633 \u0628\u062f\u064a\u0644\u064b\u0627 \u0639\u0646 \u0627\u0644\u0646\u0633\u062e \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a \u062e\u0627\u0631\u062c \u0627\u0644\u0633\u064a\u0631\u0641\u0631.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0647\u0644 \u0623\u0643\u062a\u0628 docker-compose \u0623\u0645 docker compose\u061f<\/h3>\n\n\n\n<p>\u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u062d\u062f\u064a\u062b\u0629 \u0627\u0644\u0645\u062f\u0645\u062c\u0629 \u0647\u064a docker compose (\u0628\u0645\u0633\u0627\u0641\u0629). \u0627\u0644\u0623\u0645\u0631 \u0627\u0644\u0642\u062f\u064a\u0645 docker-compose (\u0628\u0634\u0631\u0637\u0629) \u0645\u0627 \u0632\u0627\u0644 \u064a\u0639\u0645\u0644 \u0641\u064a \u0628\u0639\u0636 \u0627\u0644\u0623\u0646\u0638\u0645\u0629 \u0644\u0643\u0646\u0647 \u0641\u064a \u0637\u0631\u064a\u0642\u0647 \u0644\u0644\u0625\u0647\u0645\u0627\u0644\u061b \u0627\u0639\u062a\u0645\u062f docker compose.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0647\u0644 \u0623\u062d\u062a\u0627\u062c \u0645\u0644\u0641\u064b\u0627 \u0644\u0643\u0644 \u0645\u0634\u0631\u0648\u0639\u061f<\/h3>\n\n\n\n<p>\u0646\u0639\u0645\u060c \u0644\u0643\u0644 \u0645\u0634\u0631\u0648\u0639 \u0645\u062c\u0644\u0651\u062f\u0647 \u0648\u0645\u0644\u0641 docker-compose.yml \u0627\u0644\u062e\u0627\u0635 \u0628\u0647. \u0647\u0630\u0627 \u064a\u0628\u0642\u064a \u0645\u0634\u0627\u0631\u064a\u0639\u0643 \u0645\u0639\u0632\u0648\u0644\u0629\u060c \u0648\u064a\u0633\u0647\u0651\u0644 \u0646\u0642\u0644 \u0623\u064a \u0645\u0634\u0631\u0648\u0639 \u0643\u0627\u0645\u0644\u064b\u0627 \u0625\u0644\u0649 \u0633\u064a\u0631\u0641\u0631 \u0622\u062e\u0631 \u0628\u0646\u0633\u062e \u0645\u062c\u0644\u0651\u062f\u0647.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"end\">\u0627\u0644\u062e\u0644\u0627\u0635\u0629<\/h2>\n\n\n\n<p><strong>Docker Compose<\/strong> \u0647\u0648 \u0623\u0633\u0647\u0644 \u0637\u0631\u064a\u0642\u0629 \u0644\u062a\u0634\u063a\u064a\u0644 \u062a\u0637\u0628\u064a\u0642 \u062d\u0642\u064a\u0642\u064a \u0628\u0623\u062c\u0632\u0627\u0626\u0647 \u0627\u0644\u0645\u062a\u0639\u062f\u0651\u062f\u0629 \u0639\u0644\u0649 VPS: \u062a\u0635\u0641 \u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0641\u064a \u0645\u0644\u0641 <code>docker-compose.yml<\/code>\u060c \u0648\u062a\u0634\u063a\u0651\u0644\u0647\u0627 \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f\u060c \u0648\u062a\u062d\u0641\u0638 \u0628\u064a\u0627\u0646\u0627\u062a\u0647\u0627 \u0641\u064a volumes\u060c \u0648\u062a\u0646\u0642\u0644\u0647\u0627 \u0628\u064a\u0646 \u0627\u0644\u0633\u064a\u0631\u0641\u0631\u0627\u062a \u0643\u0645\u0627 \u0647\u064a. \u0627\u0628\u062f\u0623 \u0628\u0627\u0644\u0645\u062b\u0627\u0644 \u0623\u0639\u0644\u0627\u0647\u060c \u0639\u062f\u0651\u0644\u0647 \u0644\u0645\u0634\u0631\u0648\u0639\u0643\u060c \u062b\u0645 \u0623\u0636\u0650\u0641 Nginx \u0648SSL \u0644\u0644\u0646\u0634\u0631. \u0628\u0647\u0630\u0627 \u062a\u0646\u062a\u0642\u0644 \u0645\u0646 \u0641\u0648\u0636\u0649 \u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u064a\u062f\u0648\u064a\u0629 \u0625\u0644\u0649 \u0628\u064a\u0626\u0629 \u0645\u0646\u0638\u0651\u0645\u0629 \u062a\u064f\u062f\u0627\u0631 \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f.<\/p>\n\n\n\n<div style=\"background:#eff6ff;border:1px solid #93c5fd;border-radius:12px;padding:1.25rem 1.5rem;margin:1.5rem 0\"><p style=\"font-weight:800;color:#1e40af;margin:0 0 .5rem;font-size:1.05rem\">\u062c\u0627\u0647\u0632 \u0644\u062a\u0634\u063a\u064a\u0644 \u0645\u0634\u0631\u0648\u0639\u0643 \u0628\u0640 Docker Compose\u061f<\/p><div style=\"margin:0;line-height:1.9\">\u062a\u062d\u062a\u0627\u062c \u0633\u064a\u0631\u0641\u0631\u064b\u0627 \u0628\u0635\u0644\u0627\u062d\u064a\u0629 root \u0648\u0645\u0648\u0627\u0631\u062f \u0645\u0631\u0646\u0629: <a href=\"https:\/\/maram.iq\/vps-host\">\u062e\u0648\u0627\u062f\u0645 VPS \u0645\u0646 \u0645\u0631\u0627\u0645 \u0647\u0648\u0633\u062a<\/a> \u0628\u0646\u0638\u0627\u0645 Ubuntu \u0648\u062a\u062e\u0632\u064a\u0646 NVMe \u2014 \u0628\u064a\u0626\u0629 \u0645\u062b\u0627\u0644\u064a\u0629 \u0644\u062a\u0634\u063a\u064a\u0644 \u062d\u0627\u0648\u064a\u0627\u062a\u0643 \u0648\u0646\u0642\u0644\u0647\u0627 \u0628\u0633\u0647\u0648\u0644\u0629. <a href=\"https:\/\/maram.iq\/vps-host\"><strong>\u0627\u0637\u0644\u0628 \u0633\u064a\u0631\u0641\u0631\u0643 \u0648\u0627\u0628\u062f\u0623 \u0627\u0644\u0622\u0646 \u2190<\/strong><\/a><\/div><\/div>\n\n\n\n<script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"\u0645\u0627 \u0627\u0644\u0641\u0631\u0642 \u0628\u064a\u0646 Docker \u0648Docker Compose\u061f\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Docker \u064a\u0634\u063a\u0651\u0644 \u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629 \u0628\u0623\u0645\u0631 docker run\u060c \u0628\u064a\u0646\u0645\u0627 Docker Compose \u064a\u0635\u0641 \u0648\u064a\u0634\u063a\u0651\u0644 \u0639\u062f\u0651\u0629 \u062d\u0627\u0648\u064a\u0627\u062a \u0645\u0639\u064b\u0627 (\u062a\u0637\u0628\u064a\u0642 + \u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + \u0643\u0627\u0634) \u0645\u0646 \u0645\u0644\u0641 \u0648\u0627\u062d\u062f \u0628\u0623\u0645\u0631 \u0648\u0627\u062d\u062f\u060c \u0645\u0639 \u0631\u0628\u0637\u0647\u0627 \u0648\u062a\u0631\u062a\u064a\u0628 \u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627.\"}},{\"@type\":\"Question\",\"name\":\"\u0647\u0644 Docker Compose \u0645\u0646\u0627\u0633\u0628 \u0644\u0644\u0625\u0646\u062a\u0627\u062c\u061f\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"\u0646\u0639\u0645 \u0644\u0644\u0645\u0634\u0627\u0631\u064a\u0639 \u0627\u0644\u0635\u063a\u064a\u0631\u0629 \u0648\u0627\u0644\u0645\u062a\u0648\u0633\u0651\u0637\u0629 \u0639\u0644\u0649 \u0633\u064a\u0631\u0641\u0631 \u0648\u0627\u062d\u062f\u060c \u062e\u0627\u0635\u0629 \u0645\u0639 Nginx \u0648SSL \u0623\u0645\u0627\u0645\u0647. \u0644\u0644\u0645\u0634\u0627\u0631\u064a\u0639 \u0627\u0644\u062a\u064a \u062a\u062d\u062a\u0627\u062c \u062a\u0648\u0633\u0651\u0639\u064b\u0627 \u0623\u0641\u0642\u064a\u064b\u0627 \u0639\u0628\u0631 \u0639\u062f\u0651\u0629 \u062e\u0648\u0627\u062f\u0645 \u0642\u062f \u062a\u062d\u062a\u0627\u062c \u0623\u062f\u0648\u0627\u062a \u062a\u0646\u0633\u064a\u0642 \u0623\u0643\u0628\u0631 \u0645\u062b\u0644 Kubernetes.\"}},{\"@type\":\"Question\",\"name\":\"\u0623\u064a\u0646 \u062a\u064f\u062d\u0641\u0638 \u0628\u064a\u0627\u0646\u0627\u062a \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u061f\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"\u0641\u064a volume \u062a\u0639\u0631\u0651\u0641\u0647 \u0641\u064a \u0627\u0644\u0645\u0644\u0641 (\u0645\u062b\u0644 dbdata)\u060c \u0648\u0647\u0648 \u0645\u0633\u0627\u062d\u0629 \u0639\u0644\u0649 \u0642\u0631\u0635 \u0627\u0644\u0633\u064a\u0631\u0641\u0631 \u0645\u0633\u062a\u0642\u0644\u0651\u0629 \u0639\u0646 \u0627\u0644\u062d\u0627\u0648\u064a\u0629 \u062a\u0628\u0642\u0649 \u0628\u0639\u062f \u062d\u0630\u0641\u0647\u0627. \u0644\u0643\u0646\u0647 \u0644\u064a\u0633 \u0628\u062f\u064a\u0644\u064b\u0627 \u0639\u0646 \u0627\u0644\u0646\u0633\u062e \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a \u062e\u0627\u0631\u062c \u0627\u0644\u0633\u064a\u0631\u0641\u0631.\"}},{\"@type\":\"Question\",\"name\":\"\u0647\u0644 \u0623\u0643\u062a\u0628 docker-compose \u0623\u0645 docker compose\u061f\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"\u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u062d\u062f\u064a\u062b\u0629 \u0627\u0644\u0645\u062f\u0645\u062c\u0629 \u0647\u064a docker compose (\u0628\u0645\u0633\u0627\u0641\u0629). \u0627\u0644\u0623\u0645\u0631 \u0627\u0644\u0642\u062f\u064a\u0645 docker-compose (\u0628\u0634\u0631\u0637\u0629) \u0645\u0627 \u0632\u0627\u0644 \u064a\u0639\u0645\u0644 \u0641\u064a \u0628\u0639\u0636 \u0627\u0644\u0623\u0646\u0638\u0645\u0629 \u0644\u0643\u0646\u0647 \u0641\u064a \u0637\u0631\u064a\u0642\u0647 \u0644\u0644\u0625\u0647\u0645\u0627\u0644\u061b \u0627\u0639\u062a\u0645\u062f docker compose.\"}},{\"@type\":\"Question\",\"name\":\"\u0647\u0644 \u0623\u062d\u062a\u0627\u062c \u0645\u0644\u0641\u064b\u0627 \u0644\u0643\u0644 \u0645\u0634\u0631\u0648\u0639\u061f\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"\u0646\u0639\u0645\u060c \u0644\u0643\u0644 \u0645\u0634\u0631\u0648\u0639 \u0645\u062c\u0644\u0651\u062f\u0647 \u0648\u0645\u0644\u0641 docker-compose.yml \u0627\u0644\u062e\u0627\u0635 \u0628\u0647. \u0647\u0630\u0627 \u064a\u0628\u0642\u064a \u0645\u0634\u0627\u0631\u064a\u0639\u0643 \u0645\u0639\u0632\u0648\u0644\u0629\u060c \u0648\u064a\u0633\u0647\u0651\u0644 \u0646\u0642\u0644 \u0623\u064a \u0645\u0634\u0631\u0648\u0639 \u0643\u0627\u0645\u0644\u064b\u0627 \u0625\u0644\u0649 \u0633\u064a\u0631\u0641\u0631 \u0622\u062e\u0631 \u0628\u0646\u0633\u062e \u0645\u062c\u0644\u0651\u062f\u0647.\"}}]}<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>\u0645\u0639\u0638\u0645 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u062d\u0642\u064a\u0642\u064a\u0629 \u0644\u064a\u0633\u062a \u062d\u0627\u0648\u064a\u0629 \u0648\u0627\u062d\u062f\u0629\u060c \u0628\u0644 \u0639\u062f\u0651\u0629 \u0623\u062c\u0632\u0627\u0621 \u062a\u0639\u0645\u0644 \u0645\u0639\u064b\u0627: \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u060c \u0648\u0642\u0627\u0639\u062f\u0629 \u0628\u064a\u0627\u0646\u0627\u062a\u0647\u060c \u0648\u0631\u0628\u0645\u0627 \u0643\u0627\u0634 Redis. \u062a\u0634\u063a\u064a\u0644\u0647\u0627 \u064a\u062f\u0648\u064a\u064b\u0627 \u0628\u0623\u0648\u0627\u0645\u0631 docker run \u0645\u0646\u0641\u0635\u0644\u0629\u060c \u0648\u0631\u0628\u0637\u0647\u0627 \u0628\u0634\u0628\u0643\u0629\u060c \u0648\u062a\u0630\u0643\u0651\u0631 \u062a\u0631\u062a\u064a\u0628\u0647\u0627 \u0648\u0645\u0646\u0627\u0641\u0630\u0647\u0627 \u0641\u064a \u0643\u0644&#8230;<\/p>\n","protected":false},"author":6,"featured_media":5850,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[322,180],"tags":[144,140],"class_list":["post-5847","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux-command-line","category-vps-cloud","tag-vps","tag-140"],"_links":{"self":[{"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/posts\/5847","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/comments?post=5847"}],"version-history":[{"count":2,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/posts\/5847\/revisions"}],"predecessor-version":[{"id":5849,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/posts\/5847\/revisions\/5849"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/media\/5850"}],"wp:attachment":[{"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/media?parent=5847"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/categories?post=5847"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/maram.iq\/blogs\/wp-json\/wp\/v2\/tags?post=5847"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}