{"id":32,"date":"2025-07-16T13:44:55","date_gmt":"2025-07-16T04:44:55","guid":{"rendered":"https:\/\/34.64.61.65\/?p=32"},"modified":"2025-07-16T14:32:00","modified_gmt":"2025-07-16T05:32:00","slug":"docker%eb%a1%9c_%ea%b0%9c%eb%b0%9c_%ed%99%98%ea%b2%bd_%ec%9e%90%eb%8f%99%ed%99%94%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/hed-g.me\/?p=32","title":{"rendered":"Docker\ub85c \uac1c\ubc1c \ud658\uacbd \uc790\ub3d9\ud654\ud558\uae30: &#8220;\uc81c \ucef4\ud4e8\ud130\uc5d0\uc11c\ub294 \ub418\ub294\ub370\uc694?&#8221; \ud0c8\ucd9c \uac00\uc774\ub4dc"},"content":{"rendered":"\n<p>\uc548\ub155\ud558\uc138\uc694, \ub3d9\ub8cc \uac1c\ubc1c\uc790 \uc5ec\ub7ec\ubd84!<\/p>\n\n\n\n<p>&#8220;\uc5b4, \uc774\uc0c1\ud558\ub2e4. \uc81c \ucef4\ud4e8\ud130\uc5d0\uc11c\ub294 \uc798 \ub418\ub294\ub370\uc694?&#8221;<\/p>\n\n\n\n<p>\uac1c\ubc1c\ud300\uc5d0\uc11c \uc77c\ud558\ub2e4 \ubcf4\uba74 \ud55c \ubc88\ucbe4\uc740 \ub4e4\uc5b4\ubd24\uac70\ub098, \ud639\uc740 \uc9c1\uc811 \ub9d0\ud574\ubcf8 \uacbd\ud5d8\uc774 \uc788\uc73c\uc2e4 \uac81\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \ud300\uc6d0\uc774 \ud569\ub958\ud560 \ub54c\ub9c8\ub2e4 \ubc18\ub098\uc808 \uc774\uc0c1 \uac1c\ubc1c \ud658\uacbd \uc124\uc815\uc5d0 \uc2dc\uac04\uc744 \uc3df\uace0, \ub3d9\ub8cc\uc640 \ub098\uc758 \ubbf8\ubb18\ud558\uac8c \ub2e4\ub978 \uc124\uc815 \ub54c\ubb38\uc5d0 \uc598\uae30\uce58 \uc54a\uc740 \ubc84\uadf8\uac00 \ud130\uc9c0\ub294 \uacbd\ud5d8. \uc6b0\ub9ac \ubaa8\ub450\uc758 \uc219\uba85\uacfc\ub3c4 \uac19\uc558\uc8e0.<\/p>\n\n\n\n<p>\ud558\uc9c0\ub9cc \ub354 \uc774\uc0c1\uc740 \uc544\ub2d9\ub2c8\ub2e4! \uc624\ub298 \uc18c\uac1c\ud574\ub4dc\ub9b4 <strong>Docker<\/strong>\ub294 \ubc14\ub85c \uc774\ub7f0 &#8216;\ud658\uacbd\uc758 \uc800\uc8fc&#8217;\uc5d0\uc11c \uc6b0\ub9ac\ub97c \ud574\ubc29\uc2dc\ucf1c \uc904 \uac15\ub825\ud55c \ub3c4\uad6c\uc785\ub2c8\ub2e4. \ubcf5\uc7a1\ud55c \uc124\uce58 \uacfc\uc815 \uc5c6\uc774, \uba85\ub839\uc5b4 \uba87 \uc904\ub9cc\uc73c\ub85c \ub204\uad6c\uc5d0\uac8c\ub098 \ub611\uac19\uc740 \uac1c\ubc1c \ud658\uacbd\uc744 \ub69d\ub531 \ub9cc\ub4e4\uc5b4\uc8fc\ub294 \ub9c8\ubc95. \ud568\uaed8 \ubc30\uc6cc\ubcfc\uae4c\uc694?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Docker\uac00 \ubb54\uac00\uc694? \ucee8\ud14c\uc774\ub108\uc5d0 \ub2f4\uc544 \ubc30\ub2ec\ud558\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4<\/h2>\n\n\n\n<p>Docker\ub97c \uc774\ud574\ud558\ub294 \uac00\uc7a5 \uc26c\uc6b4 \ubc29\ubc95\uc740 &#8216;\uc18c\ud504\ud2b8\uc6e8\uc5b4\uc6a9 \ubc30\uc1a1 \ucee8\ud14c\uc774\ub108&#8217;\ub77c\uace0 \uc0dd\uac01\ud558\ub294 \uac81\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uacfc\uac70\uc5d0\ub294 \uc11c\ubc84\ub77c\ub294 &#8216;\uc9d1&#8217;\uc5d0 \uc6b4\uc601\uccb4\uc81c, \ub77c\uc774\ube0c\ub7ec\ub9ac, \ub370\uc774\ud130\ubca0\uc774\uc2a4, \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ub4f1 \ub2e4\uc591\ud55c &#8216;\uac00\uad6c&#8217;\ub97c \uc9c1\uc811 \ub4e4\uc5ec\ub193\uc558\uc2b5\ub2c8\ub2e4. \uc9d1(\uc11c\ubc84) \uad6c\uc870\uac00 \ubc14\ub00c\uac70\ub098 \uac00\uad6c(\uc18c\ud504\ud2b8\uc6e8\uc5b4) \ubc84\uc804\uc774 \ub2ec\ub77c\uc9c0\uba74 \ubaa8\ub4e0 \uac8c \uc5c9\ub9dd\uc774 \ub418\uae30 \uc77c\uc464\uc600\uc8e0.<\/p>\n\n\n\n<p>Docker\ub294 \uc774 \ubaa8\ub4e0 \uac00\uad6c\ub97c &#8216;\ucee8\ud14c\uc774\ub108&#8217;\ub77c\ub294 \ud45c\uc900\ud654\ub41c \uc0c1\uc790\uc5d0 \ub2f4\uc544\ubc84\ub9bd\ub2c8\ub2e4. \uc774 \ucee8\ud14c\uc774\ub108 \uc548\uc5d0\ub294 \uc6b0\ub9ac \uc571\uc774 \ub3cc\uc544\uac00\ub294 \ub370 \ud544\uc694\ud55c \ubaa8\ub4e0 \uac83(\ucf54\ub4dc, \ub7f0\ud0c0\uc784, \uc2dc\uc2a4\ud15c \ub3c4\uad6c, \ub77c\uc774\ube0c\ub7ec\ub9ac \ub4f1)\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub9ac\uace0 \uc774 \ucee8\ud14c\uc774\ub108\ub294 \ub178\ud2b8\ubd81, \uac1c\ubc1c \uc11c\ubc84, \ud074\ub77c\uc6b0\ub4dc \ub4f1 \uc5b4\ub514\uc5d0\uc11c\ub4e0 \ub611\uac19\uc774 \uc791\ub3d9\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/github.com\/user-attachments\/assets\/e631a7c8-138a-418d-809c-01711311401c\" alt=\"\ucee8\ud14c\uc774\ub108 \uac1c\ub150\"><br>\n<em>(\uc774\ubbf8\uc9c0 \ucd9c\ucc98: Red Hat)<\/em><\/p>\n\n\n\n<p>\uc774\ub7f0 \ubc29\uc2dd\uc744 <strong>\ucee8\ud14c\uc774\ub108\ud654<\/strong>\ub77c\uace0 \ubd80\ub985\ub2c8\ub2e4. \ub355\ubd84\uc5d0 \uc6b0\ub9ac\ub294 \ub354 \uc774\uc0c1 \uac1c\ubc1c \ud658\uacbd \uc124\uc815\uc5d0 \uace8\uba38\ub9ac\ub97c \uc553\uc9c0 \uc54a\uace0, \uc624\ub86f\uc774 \ucf54\ub4dc\uc5d0\ub9cc \uc9d1\uc911\ud560 \uc218 \uc788\uac8c \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Docker\ub85c \uac1c\ubc1c \ud658\uacbd \uc790\ub3d9\ud654\ud558\uae30: 3\ub2e8\uacc4 \uc2e4\uc804 \uac00\uc774\ub4dc<\/h2>\n\n\n\n<p>\uc790, \uc774\uc81c \uc774\ub860\uc740 \ucda9\ubd84\ud569\ub2c8\ub2e4. \uac04\ub2e8\ud55c Node.js \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 Docker \ucee8\ud14c\uc774\ub108\uc5d0 \ub744\uc6b0\ub294 \uacfc\uc815\uc744 \ud1b5\ud574 Docker\uc758 \uac15\ub825\ud568\uc744 \uc9c1\uc811 \uccb4\ud5d8\ud574\ubd05\uc2dc\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1\ub2e8\uacc4: \uac1c\ubc1c \ud658\uacbd \uc124\uacc4\ub3c4 \uadf8\ub9ac\uae30 (<code>Dockerfile<\/code>)<\/h3>\n\n\n\n<p><code>Dockerfile<\/code>\uc740 \uc6b0\ub9ac\ub9cc\uc758 \ucee8\ud14c\uc774\ub108\ub97c \ub9cc\ub4e4\uae30 \uc704\ud55c &#8216;\uc124\uacc4\ub3c4&#8217; \ub610\ub294 &#8216;\ub808\uc2dc\ud53c&#8217;\uc785\ub2c8\ub2e4. \ud14d\uc2a4\ud2b8 \ud30c\uc77c\uc5d0 \uc6b0\ub9ac\uac00 \uc6d0\ud558\ub294 \ud658\uacbd\uc744 \uc21c\uc11c\ub300\ub85c \uc801\uc5b4\uc8fc\uae30\ub9cc \ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\ud504\ub85c\uc81d\ud2b8 \ub8e8\ud2b8\uc5d0 <code>Dockerfile<\/code>\uc774\ub77c\ub294 \uc774\ub984\uc758 \ud30c\uc77c\uc744 \ub9cc\ub4e4\uace0 \uc544\ub798\uc640 \uac19\uc774 \uc791\uc131\ud574 \ubcf4\uc138\uc694.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># 1. \ubca0\uc774\uc2a4 \uc774\ubbf8\uc9c0 \uc120\ud0dd\n# Node.js 18 \ubc84\uc804\uc774 \uc124\uce58\ub41c \uac00\ubcbc\uc6b4 \ub9ac\ub205\uc2a4 \ud658\uacbd\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.\nFROM node:18-alpine\n\n# 2. \uc791\uc5c5 \ub514\ub809\ud1a0\ub9ac \uc124\uc815\n# \ucee8\ud14c\uc774\ub108 \uc548\uc5d0\uc11c \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud560 \uae30\ubcf8 \ud3f4\ub354\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.\nWORKDIR \/usr\/src\/app\n\n# 3. \uc758\uc874\uc131 \uc124\uce58\n# \uba3c\uc800 package.json \ud30c\uc77c\uc744 \ubcf5\uc0ac\ud574\uc11c npm install\uc744 \uc2e4\ud589\ud569\ub2c8\ub2e4.\n# (\uc18c\uc2a4\ucf54\ub4dc\ubcf4\ub2e4 \uba3c\uc800 \ubcf5\uc0ac\ud558\uba74, \uc18c\uc2a4\ucf54\ub4dc\ub9cc \ubcc0\uacbd\ub420 \ub54c \ubd88\ud544\uc694\ud55c \uc7ac\uc124\uce58\ub97c \ud53c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.)\nCOPY package*.json .\/\nRUN npm install\n\n# 4. \uc18c\uc2a4\ucf54\ub4dc \ubcf5\uc0ac\n# \ud504\ub85c\uc81d\ud2b8\uc758 \ubaa8\ub4e0 \ud30c\uc77c\uc744 \uc791\uc5c5 \ub514\ub809\ud1a0\ub9ac\ub85c \ubcf5\uc0ac\ud569\ub2c8\ub2e4.\nCOPY . .\n\n# 5. \ud3ec\ud2b8 \uac1c\ubc29\n# \ucee8\ud14c\uc774\ub108\uac00 3000\ubc88 \ud3ec\ud2b8\ub85c \uc694\uccad\uc744 \ubc1b\uc744 \uc218 \uc788\ub3c4\ub85d \uc124\uc815\ud569\ub2c8\ub2e4.\nEXPOSE 3000\n\n# 6. \ucee8\ud14c\uc774\ub108 \uc2dc\uc791 \uba85\ub839\uc5b4\n# \ucee8\ud14c\uc774\ub108\uac00 \uc2dc\uc791\ub420 \ub54c \uc2e4\ud589\ud560 \uba85\ub839\uc5b4\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.\nCMD &#91; \"node\", \"server.js\" ]<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2\ub2e8\uacc4: \uc124\uacc4\ub3c4\ub85c \uc774\ubbf8\uc9c0 \ub9cc\ub4e4\uae30 (<code>docker build<\/code>)<\/h3>\n\n\n\n<p>\uc774\uc81c \uc124\uacc4\ub3c4\ub97c \ubc14\ud0d5\uc73c\ub85c \ucee8\ud14c\uc774\ub108\uc758 &#8216;\uc7ac\ub8cc&#8217;\uac00 \ub420 <strong>\uc774\ubbf8\uc9c0<\/strong>\ub97c \ub9cc\ub4e4\uc5b4 \ubd05\uc2dc\ub2e4. \uc774\ubbf8\uc9c0\ub294 \ucee8\ud14c\uc774\ub108\ub97c \uc2e4\ud589\ud558\uae30 \uc704\ud55c \uc2a4\ub0c5\uc0f7\uc774\ub77c\uace0 \uc0dd\uac01\ud558\uba74 \uc27d\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\ud130\ubbf8\ub110\uc5d0\uc11c \uc544\ub798 \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud558\uc138\uc694.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \ud604\uc7ac \ub514\ub809\ud1a0\ub9ac\uc758 Dockerfile\uc744 \uc0ac\uc6a9\ud558\uc5ec 'my-dev-app'\uc774\ub77c\ub294 \uc774\ub984\uc758 \uc774\ubbf8\uc9c0\ub97c \ub9cc\ub4e0\ub2e4\ndocker build .\/ -t my-dev-app<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>build .<\/code>: \ud604\uc7ac \ub514\ub809\ud1a0\ub9ac\uc5d0\uc11c <code>Dockerfile<\/code>\uc744 \ucc3e\uc544 \uc774\ubbf8\uc9c0\ub97c \ube4c\ub4dc\ud569\ub2c8\ub2e4.<\/li>\n\n\n\n<li><code>-t my-dev-app<\/code>: \uc774\ubbf8\uc9c0\uc5d0 <code>\uc774\ub984:\ud0dc\uadf8<\/code> \ud615\uc2dd\uc73c\ub85c <code>my-dev-app<\/code>\uc774\ub77c\ub294 \uc774\ub984\uc744 \ubd99\uc5ec\uc90d\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3\ub2e8\uacc4: \uc774\ubbf8\uc9c0\ub85c \ucee8\ud14c\uc774\ub108 \uc2e4\ud589\ud558\uae30 (<code>docker run<\/code>)<\/h3>\n\n\n\n<p>\ub4dc\ub514\uc5b4 \ub9c8\uc9c0\ub9c9 \ub2e8\uacc4\uc785\ub2c8\ub2e4! \ubc29\uae08 \ub9cc\ub4e0 \uc774\ubbf8\uc9c0\ub85c \uc2e4\uc81c \ub3d9\uc791\ud558\ub294 \ucee8\ud14c\uc774\ub108\ub97c \uc2e4\ud589\ud574 \ubd05\uc2dc\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># 'my-dev-app' \uc774\ubbf8\uc9c0\ub85c \ucee8\ud14c\uc774\ub108\ub97c \uc2e4\ud589\ud55c\ub2e4\ndocker run -d -p 3000:3000 my-dev-app<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>-d<\/code>: \ucee8\ud14c\uc774\ub108\ub97c \ubc31\uadf8\ub77c\uc6b4\ub4dc\uc5d0\uc11c \uc2e4\ud589\ud569\ub2c8\ub2e4. (detached mode)<\/li>\n\n\n\n<li><code>-p 3000:3000<\/code>: \ub0b4 \ucef4\ud4e8\ud130(\ud638\uc2a4\ud2b8)\uc758 3000\ubc88 \ud3ec\ud2b8\uc640 \ucee8\ud14c\uc774\ub108\uc758 3000\ubc88 \ud3ec\ud2b8\ub97c \uc5f0\uacb0\ud569\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p>\uc774\uc81c \uc6f9 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c <code>http:\/\/localhost:3000<\/code>\uc73c\ub85c \uc811\uc18d\ud574 \ubcf4\uc138\uc694. \uc5ec\ub7ec\ubd84\uc758 Node.js \uc571\uc774 \ucee8\ud14c\uc774\ub108 \uc548\uc5d0\uc11c \uba4b\uc9c0\uac8c \uc2e4\ud589\ub418\uace0 \uc788\uc744 \uac81\ub2c8\ub2e4!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uc2e4\uc804 \ud301: \ucee8\ud14c\uc774\ub108\uc5d0\uc11c \ub0b4 \ucef4\ud4e8\ud130(localhost)\uc758 \uc11c\ube44\uc2a4 \ud638\ucd9c\ud558\uae30<\/h2>\n\n\n\n<p>\uac1c\ubc1c\uc744 \ud558\ub2e4 \ubcf4\uba74 \ucee8\ud14c\uc774\ub108 \uc548\uc758 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \ub0b4 \ucef4\ud4e8\ud130(\ud638\uc2a4\ud2b8 \uba38\uc2e0)\uc5d0\uc11c \uc2e4\ud589 \uc911\uc778 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub098 \ub2e4\ub978 API\ub97c \ud638\ucd9c\ud574\uc57c \ud560 \ub54c\uac00 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc774\ub54c <code>localhost<\/code>\ub97c \uadf8\ub300\ub85c \uc0ac\uc6a9\ud558\uba74 \ub420\uae4c\uc694? \uc815\ub2f5\uc740 &#8216;\uc544\ub2c8\uc624&#8217;\uc785\ub2c8\ub2e4. \ucee8\ud14c\uc774\ub108\ub294 \uaca9\ub9ac\ub41c \ub124\ud2b8\uc6cc\ud06c \ud658\uacbd\uc744 \uac00\uc9c0\uae30 \ub54c\ubb38\uc5d0, \ucee8\ud14c\uc774\ub108\uc758 <code>localhost<\/code>\ub294 \ucee8\ud14c\uc774\ub108 \uc790\uae30 \uc790\uc2e0\uc744 \uac00\ub9ac\ud0b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc774 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uae30 \uc704\ud574 Docker\ub294 <code>host.docker.internal<\/code>\uc774\ub77c\ub294 \ud2b9\ubcc4\ud55c \ud638\uc2a4\ud2b8\uba85\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4. \ucee8\ud14c\uc774\ub108 \uc548\uc5d0\uc11c <code>host.docker.internal<\/code>\ub85c \uc694\uccad\uc744 \ubcf4\ub0b4\uba74, \ub9c8\ubc95\ucc98\ub7fc \ud638\uc2a4\ud2b8 \uba38\uc2e0(\uc5ec\ub7ec\ubd84\uc758 \ucef4\ud4e8\ud130)\uc73c\ub85c \uc5f0\uacb0\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc608\ub97c \ub4e4\uc5b4, \ub0b4 \ucef4\ud4e8\ud130 5432\ubc88 \ud3ec\ud2b8\uc5d0\uc11c PostgreSQL\uc774 \uc2e4\ud589 \uc911\uc774\ub77c\uba74, \ucee8\ud14c\uc774\ub108 \uc548\uc758 \ucf54\ub4dc\uc5d0\uc11c\ub294 <code>host.docker.internal:5432<\/code>\ub85c \uc811\uc18d\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ub9c8\uce58\uba70<\/h2>\n\n\n\n<p>\uc624\ub298 \uc6b0\ub9ac\ub294 Docker\ub97c \uc774\uc6a9\ud574 \uac1c\ubc1c \ud658\uacbd\uc744 \ucf54\ub4dc\ud654\ud558\uace0, \uba85\ub839\uc5b4 \uba87 \uc904\ub85c \uc2e4\ud589\ud558\ub294 \ubc29\ubc95\uc744 \ubc30\uc6e0\uc2b5\ub2c8\ub2e4. \uc774\uc81c \uc0c8\ub85c\uc6b4 \ud300\uc6d0\uc774 \uc640\ub3c4 <code>docker run<\/code> \uba85\ub839\uc5b4 \ud558\ub098\ub9cc \uc54c\ub824\uc8fc\uba74 \ub418\uace0, &#8220;\uc81c \ucef4\ud4e8\ud130\uc5d0\uc11c\ub294 \ub418\ub294\ub370\uc694?&#8221;\ub77c\ub294 \ub9d0 \ub300\uc2e0 &#8220;Docker \uc774\ubbf8\uc9c0\ub294 \ub3d9\uc77c\ud55c\uac00\uc694?&#8221;\ub77c\uace0 \ubb3b\ub294, \ud55c \ub2e8\uacc4 \ub192\uc740 \uc218\uc900\uc758 \ud611\uc5c5\uc774 \uac00\ub2a5\ud574\uc9c8 \uac81\ub2c8\ub2e4.<\/p>\n\n\n\n<p>Docker\uc758 \uc138\uacc4\ub294 \ud6e8\uc52c \ub354 \uae4a\uace0 \ub113\uc9c0\ub9cc, \uc624\ub298 \ubc30\uc6b4 \ub0b4\uc6a9\ub9cc\uc73c\ub85c\ub3c4 \uc5ec\ub7ec\ubd84\uc758 \uac1c\ubc1c \uc0dd\uc0b0\uc131\uc740 \ud06c\uac8c \ud5a5\uc0c1\ub420 \uac83\uc785\ub2c8\ub2e4. \uc9c0\uae08 \ubc14\ub85c \uc5ec\ub7ec\ubd84\uc758 \ud504\ub85c\uc81d\ud2b8\uc5d0 <code>Dockerfile<\/code>\uc744 \ucd94\uac00\ud574\ubcf4\ub294 \uac74 \uc5b4\ub5a8\uae4c\uc694?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uc548\ub155\ud558\uc138\uc694, \ub3d9\ub8cc \uac1c\ubc1c\uc790 \uc5ec\ub7ec\ubd84! &#8220;\uc5b4, \uc774\uc0c1\ud558\ub2e4. \uc81c \ucef4\ud4e8\ud130\uc5d0\uc11c\ub294 \uc798 \ub418\ub294\ub370\uc694?&#8221; \uac1c\ubc1c\ud300\uc5d0\uc11c \uc77c\ud558\ub2e4 \ubcf4\uba74 \ud55c \ubc88\ucbe4\uc740 \ub4e4\uc5b4\ubd24\uac70\ub098, \ud639\uc740 \uc9c1\uc811 \ub9d0\ud574\ubcf8 \uacbd\ud5d8\uc774 \uc788\uc73c\uc2e4 \uac81\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \ud300\uc6d0\uc774 \ud569\ub958\ud560 \ub54c\ub9c8\ub2e4 \ubc18\ub098\uc808 \uc774\uc0c1 \uac1c\ubc1c \ud658\uacbd \uc124\uc815\uc5d0 \uc2dc\uac04\uc744 \uc3df\uace0, \ub3d9\ub8cc\uc640 \ub098\uc758 \ubbf8\ubb18\ud558\uac8c \ub2e4\ub978 \uc124\uc815 \ub54c\ubb38\uc5d0 \uc598\uae30\uce58 \uc54a\uc740 \ubc84\uadf8\uac00 \ud130\uc9c0\ub294 \uacbd\ud5d8. \uc6b0\ub9ac \ubaa8\ub450\uc758 \uc219\uba85\uacfc\ub3c4 \uac19\uc558\uc8e0. \ud558\uc9c0\ub9cc \ub354 \uc774\uc0c1\uc740 \uc544\ub2d9\ub2c8\ub2e4! \uc624\ub298 \uc18c\uac1c\ud574\ub4dc\ub9b4 Docker\ub294 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[80],"tags":[81,82,83],"class_list":["post-32","post","type-post","status-publish","format-standard","hentry","category-docker","tag-docker","tag-82","tag-83"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/posts\/32","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hed-g.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=32"}],"version-history":[{"count":2,"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/posts\/32\/revisions"}],"predecessor-version":[{"id":58,"href":"https:\/\/hed-g.me\/index.php?rest_route=\/wp\/v2\/posts\/32\/revisions\/58"}],"wp:attachment":[{"href":"https:\/\/hed-g.me\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=32"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hed-g.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=32"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hed-g.me\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=32"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}