{"id":2348,"date":"2016-07-21T11:02:09","date_gmt":"2016-07-21T11:02:08","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2348"},"modified":"2025-06-13T23:03:41","modified_gmt":"2025-06-14T06:03:41","slug":"create-couchbase-docker-images-testcontainers","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-docker-images-testcontainers\/","title":{"rendered":"TestContainer\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc989\uc11d\uc5d0\uc11c Couchbase Docker \uc774\ubbf8\uc9c0 \uc0dd\uc131\ud558\uae30"},"content":{"rendered":"<p>\uc5b4\uc81c \uc800\ub294 <a href=\"\/blog\/ko\/unit-integration-tests-couchbase-docker-container\/\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc640 \ud14c\uc2a4\ud2b8 \ucee8\ud14c\uc774\ub108\ub85c \ub2e8\uc704 \ubc0f \ud1b5\ud569 \ud14c\uc2a4\ud2b8\ub97c \uc218\ud589\ud558\ub294 \ubc29\ubc95<\/a>. \uc774\ub7ec\ud55c \ud14c\uc2a4\ud2b8\uc758 \uc804\uc81c \uc870\uac74 \uc911 \ud558\ub098\ub294 \uc774\ubbf8 \uad6c\ucd95\ub41c \uc774\ubbf8\uc9c0\uac00 \uc788\uc5b4\uc57c \ud55c\ub2e4\ub294 \uac83\uc774\uc5c8\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \uadf8\ub7f0 \uc774\ubbf8\uc9c0\uac00 \uc5c6\ub294 \uac83\uc73c\ub85c \ubc1d\ud600\uc84c\uc2b5\ub2c8\ub2e4. \ud14c\uc2a4\ud2b8\ub97c \uc2e4\ud589\ud558\uae30 \uc9c1\uc804\uc5d0 TestContainer\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc790\uc2e0\ub9cc\uc758 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \uc774\ubbf8\uc9c0\ub97c \ube4c\ub4dc\ud560 \uc218 \uc788\uc73c\uba70 \ub9e4\uc6b0 \uc27d\uc2b5\ub2c8\ub2e4. \ub355\ubd84\uc5d0 <a href=\"https:\/\/twitter.com\/bsideup\">\uc138\ub974\uac8c\uc774 \uc774\uace0\ub85c\ud504<\/a> \uae38\uc744 \uc54c\ub824\uc8fc\uc154\uc11c \uac10\uc0ac\ud569\ub2c8\ub2e4!<\/p>\n<h2>\uc989\uc11d\uc5d0\uc11c \uc774\ubbf8\uc9c0 \ub9cc\ub4e4\uae30<\/h2>\n<p>\uc774\uc804 \uc608\uc81c\uc5d0\uc11c\ub294 \ub2e4\uc74c \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc774\ubbf8\uc9c0\ub97c \uc778\uc2a4\ud134\uc2a4\ud654\ud588\uc2b5\ub2c8\ub2e4:<\/p>\n<pre><code>    @ClassRule\r\n    public static GenericContainer couchbase =\r\n            new GenericContainer(\"mycouchbase:latest\")\r\n                    .withExposedPorts(8091, 8092, 8093, 8094, 11207, 11210, 11211, 18091, 18092, 18093)\r\n                    .waitingFor(new CouchbaseWaitStrategy());\r\n<\/code><\/pre>\n<p>GenericContainer \uc0dd\uc131\uc790\ub294 \ubb38\uc790\uc5f4\uc744 \ub9e4\uac1c\ubcc0\uc218\ub85c \ubc1b\uc2b5\ub2c8\ub2e4. \uc774 \ubb38\uc790\uc5f4\uc740 \ud14c\uc2a4\ud2b8\ud558\ub824\ub294 \ucee8\ud14c\uc774\ub108\uc758 \uc774\ub984\uc785\ub2c8\ub2e4. \ud558\uc9c0\ub9cc GenericContainer \uc0dd\uc131\uc790\ub294 Future\ub3c4 \ubc1b\uc2b5\ub2c8\ub2e4. ImageFromDockerfile \ud074\ub798\uc2a4\uac00 \ubc14\ub85c \uadf8\uac83\uc785\ub2c8\ub2e4. \uc774 \ud074\ub798\uc2a4\uc758 <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/current\/install\/deploy-with-docker-hub.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">Docker<\/a> \uc774\ubbf8\uc9c0\uac00 \uc0ac\uc6a9\uc790\uac00 \uc9c0\uc815\ud55c \ub9e4\uac1c\ubcc0\uc218\uc640 \ube44\ub3d9\uae30\uc801\uc73c\ub85c \uc0dd\uc131\ub429\ub2c8\ub2e4.<\/p>\n<p>\uc5ec\uae30\uc11c\ub294 \ud544\uc694\ud55c \ubaa8\ub4e0 \uac83\uc744 \ud504\ub85c\uc81d\ud2b8\uc758 \ub9ac\uc18c\uc2a4 \ud3f4\ub354\uc5d0 \ubcf5\uc0ac\ud558\uc5ec \ud074\ub798\uc2a4 \uacbd\ub85c\uc5d0\uc11c \ubaa8\ub450 \uc561\uc138\uc2a4\ud560 \uc218 \uc788\ub3c4\ub85d \ud588\uc2b5\ub2c8\ub2e4. \uadf8\ub798\uc11c \uc800\ub294 <code>\uc704\ub4dc\ud30c\uc77c\ub85c\ubd80\ud130 \ud074\ub798\uc2a4 \uacbd\ub85c<\/code> \uba54\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \ubb38\uc790\uc5f4, \uc808\ub300 \uacbd\ub85c \ub610\ub294 \ud30c\uc77c\uc5d0\uc11c \ud30c\uc77c\uc744 \uac00\uc838\uc62c \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 \ub2e4\uc74c\uc5d0\uc11c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/testcontainers.viewdocs.io\/testcontainers-java\/usage\/dockerfile\/\">TestContainers \ubb38\uc11c<\/a>.<\/p>\n<pre><code>@ClassRule\r\npublic static GenericContainer couchbase =\r\n        new GenericContainer(\r\n                new ImageFromDockerfile().withFileFromClasspath(\"Dockerfile\", \"Dockerfile\")\r\n                        .withFileFromClasspath(\"scripts\/dummy.sh\",\"scripts\/dummy.sh\")\r\n                        .withFileFromClasspath(\"scripts\/entrypoint.sh\",\"scripts\/entrypoint.sh\")\r\n                        .withFileFromClasspath(\"scripts\/run\",\"scripts\/run\")\r\n               )\r\n                .withExposedPorts(8091, 8092, 8093, 8094, 11207, 11210, 11211, 18091, 18092, 18093)\r\n                .waitingFor(new CouchbaseWaitStrategy());\r\n<\/code><\/pre>\n<p>\uadf8\ub7ec\uba74 \ud14c\uc2a4\ud2b8\ub97c \uc2e4\ud589\ud558\uae30 \uc804\uc5d0 Docker \uc774\ubbf8\uc9c0\uac00 \uc790\ub3d9\uc73c\ub85c \ube4c\ub4dc\ub429\ub2c8\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c \uc774\ubbf8\uc9c0\ub294 \uc885\ub8cc \uc2dc \uc0ad\uc81c\ub418\uc9c0\ub9cc \ud50c\ub798\uadf8\ub97c \uc804\ub2ec\ud558\uc5ec \uc774\ubbf8\uc9c0\ub97c \uc720\uc9c0\ud558\uc5ec \ud56d\uc0c1 \ub2e4\uc2dc \ube4c\ub4dc\ud558\uc9c0 \uc54a\ub3c4\ub85d \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub294 \ud14c\uc2a4\ud2b8 \uc804\ub7b5\uc5d0 \ub530\ub77c \ub2ec\ub77c\uc9d1\ub2c8\ub2e4.<\/p>\n<h2>\ubb38\uc81c \ud574\uacb0<\/h2>\n<p>\uc774 \uae00\uc744 \uc791\uc131\ud558\ub294 \ub3d9\uc548 \uc0ac\uc18c\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \uc774\ubbf8\uc9c0 \uc0dd\uc131\uc5d0 \uc0ac\uc6a9\ub418\uc5c8\ub358 \ubaa8\ub4e0 \ub9ac\uc18c\uc2a4\uc758 \uad8c\ud55c\uc774 \uc190\uc2e4\ub418\uc5b4\uc11c <code>RUN chmod +x<\/code> \ub97c \ubcf5\uc0ac\ud558\ub294 \ubaa8\ub4e0 \ub9ac\uc18c\uc2a4\uc5d0 \ub300\ud574. \uc774 \ubb38\uc81c\ub294 \uc774\uc81c \uc54c\ub824\uc9c4 \ubb38\uc81c\uc774\uba70 TestContainer\uc758 \uce5c\uc808\ud558\uace0 \ubc18\uc751\uc774 \ube60\ub978 \uc0ac\ub78c\ub4e4\uc774 \uc774 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uae30 \uc704\ud574 \ub178\ub825\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c\uc5d0\uc11c \uadf8\ub4e4\uacfc \ub300\ud654\ub97c \ub098\ub20c \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/testcontainers.slack.com\/\">\uc2ac\ub799 \ucc44\ub110<\/a>\uc5d0\uc11c \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc9c1\uc6d0\uacfc \ucc44\ud305\uc744 \ud560 \uc218 \uc788\ub294 \uac83\uacfc \ub9c8\ucc2c\uac00\uc9c0\ub85c <a href=\"https:\/\/couchbase-community.slack.com\/\">\ucee4\ubba4\ub2c8\ud2f0 \ucc44\ub110<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Yesterday I wrote about how to do unit and integration tests with Couchbase and TestContainers. One of the prerequisite for those tests was to have an image already built. Turns out you don&#8217;t have too. You can use TestContainers to [&hellip;]<\/p>","protected":false},"author":49,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815],"tags":[1519,1877],"ppma_author":[9023],"class_list":["post-2348","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","tag-docker","tag-testing"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.0 (Yoast SEO v26.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>TestContainers: Build Docker Images on the Fly | Couchbase<\/title>\n<meta name=\"description\" content=\"You don\u2019t need an image already built for unit and integration tests. Use Couchbase and TestContainers to create your own images. It is super easy!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-docker-images-testcontainers\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Create Couchbase Docker Images on the Fly with TestContainers\" \/>\n<meta property=\"og:description\" content=\"You don\u2019t need an image already built for unit and integration tests. Use Couchbase and TestContainers to create your own images. It is super easy!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-docker-images-testcontainers\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-21T11:02:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T06:03:41+00:00\" \/>\n<meta name=\"author\" content=\"Laurent Doguin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ldoguin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"unstructured.io\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/\"},\"author\":{\"name\":\"Laurent Doguin\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e\"},\"headline\":\"Create Couchbase Docker Images on the Fly with TestContainers\",\"datePublished\":\"2016-07-21T11:02:08+00:00\",\"dateModified\":\"2025-06-14T06:03:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/\"},\"wordCount\":324,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"docker\",\"testing\"],\"articleSection\":[\"Best Practices and Tutorials\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/\",\"name\":\"TestContainers: Build Docker Images on the Fly | Couchbase\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-07-21T11:02:08+00:00\",\"dateModified\":\"2025-06-14T06:03:41+00:00\",\"description\":\"You don\u2019t need an image already built for unit and integration tests. Use Couchbase and TestContainers to create your own images. It is super easy!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create Couchbase Docker Images on the Fly with TestContainers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e\",\"name\":\"Laurent Doguin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/12929ce99397769f362b7a90d6b85071\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g\",\"caption\":\"Laurent Doguin\"},\"description\":\"Laurent is a nerdy metal head who lives in Paris. He mostly writes code in Java and structured text in AsciiDoc, and often talks about data, reactive programming and other buzzwordy stuff. He is also a former Developer Advocate for Clever Cloud and Nuxeo where he devoted his time and expertise to helping those communities grow bigger and stronger. He now runs Developer Relations at Couchbase.\",\"sameAs\":[\"https:\/\/x.com\/ldoguin\"],\"honorificPrefix\":\"Mr\",\"birthDate\":\"1985-06-07\",\"gender\":\"male\",\"award\":[\"Devoxx Champion\",\"Couchbase Legend\"],\"knowsAbout\":[\"Java\"],\"knowsLanguage\":[\"English\",\"French\"],\"jobTitle\":\"Director Developer Relation & Strategy\",\"worksFor\":\"Couchbase\",\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/laurent-doguin\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"TestContainers: Build Docker Images on the Fly | Couchbase","description":"\ub2e8\uc704 \ubc0f \ud1b5\ud569 \ud14c\uc2a4\ud2b8\ub97c \uc704\ud574 \uc774\ubbf8 \ube4c\ub4dc\ub41c \uc774\ubbf8\uc9c0\uac00 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. Couchbase\uc640 TestContainers\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc9c1\uc811 \uc774\ubbf8\uc9c0\ub97c \uc0dd\uc131\ud558\uc138\uc694. \ub9e4\uc6b0 \uc27d\uc2b5\ub2c8\ub2e4!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-docker-images-testcontainers\/","og_locale":"ko_KR","og_type":"article","og_title":"Create Couchbase Docker Images on the Fly with TestContainers","og_description":"You don\u2019t need an image already built for unit and integration tests. Use Couchbase and TestContainers to create your own images. It is super easy!","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-docker-images-testcontainers\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-07-21T11:02:08+00:00","article_modified_time":"2025-06-14T06:03:41+00:00","author":"Laurent Doguin","twitter_card":"summary_large_image","twitter_creator":"@ldoguin","twitter_misc":{"Written by":"unstructured.io","Est. reading time":"2\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/"},"author":{"name":"Laurent Doguin","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e"},"headline":"Create Couchbase Docker Images on the Fly with TestContainers","datePublished":"2016-07-21T11:02:08+00:00","dateModified":"2025-06-14T06:03:41+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/"},"wordCount":324,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["docker","testing"],"articleSection":["Best Practices and Tutorials"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/","url":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/","name":"TestContainers: Build Docker Images on the Fly | Couchbase","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-07-21T11:02:08+00:00","dateModified":"2025-06-14T06:03:41+00:00","description":"\ub2e8\uc704 \ubc0f \ud1b5\ud569 \ud14c\uc2a4\ud2b8\ub97c \uc704\ud574 \uc774\ubbf8 \ube4c\ub4dc\ub41c \uc774\ubbf8\uc9c0\uac00 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. Couchbase\uc640 TestContainers\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc9c1\uc811 \uc774\ubbf8\uc9c0\ub97c \uc0dd\uc131\ud558\uc138\uc694. \ub9e4\uc6b0 \uc27d\uc2b5\ub2c8\ub2e4!","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-docker-images-testcontainers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Create Couchbase Docker Images on the Fly with TestContainers"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e","name":"\ub85c\ub791 \ub3c4\uadc4","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/12929ce99397769f362b7a90d6b85071","url":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","caption":"Laurent Doguin"},"description":"Laurent\ub294 \ud30c\ub9ac\uc5d0 \uc0ac\ub294 \uad34\uc9dc \uae08\uc18d\uacf5\ud559\ub3c4\uc785\ub2c8\ub2e4. \uc8fc\ub85c Java\ub85c \ucf54\ub4dc\ub97c \uc791\uc131\ud558\uace0 AsciiDoc\uc73c\ub85c \uad6c\uc870\ud654\ub41c \ud14d\uc2a4\ud2b8\ub97c \uc791\uc131\ud558\uba70 \ub370\uc774\ud130, \ub9ac\uc561\ud2f0\ube0c \ud504\ub85c\uadf8\ub798\ubc0d \ubc0f \uae30\ud0c0 \uc720\ud589\uc5b4\uc5d0 \ub300\ud574 \uc790\uc8fc \uc774\uc57c\uae30\ud569\ub2c8\ub2e4. \ub610\ud55c Clever Cloud\uc640 Nuxeo\uc758 \uac1c\ubc1c\uc790 \uc639\ud638\uc790\ub85c \ud65c\ub3d9\ud558\uba70 \ud574\ub2f9 \ucee4\ubba4\ub2c8\ud2f0\uac00 \ub354 \ud06c\uace0 \uac15\ub825\ud558\uac8c \uc131\uc7a5\ud560 \uc218 \uc788\ub3c4\ub85d \uc790\uc2e0\uc758 \uc2dc\uac04\uacfc \uc804\ubb38\uc131\uc744 \ubc14\ucce4\uc2b5\ub2c8\ub2e4. \ud604\uc7ac Couchbase\uc5d0\uc11c \uac1c\ubc1c\uc790 \uad00\uacc4\ub97c \uc6b4\uc601\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.","sameAs":["https:\/\/x.com\/ldoguin"],"honorificPrefix":"Mr","birthDate":"1985-06-07","gender":"male","award":["Devoxx Champion","Couchbase Legend"],"knowsAbout":["Java"],"knowsLanguage":["English","French"],"jobTitle":"Director Developer Relation & Strategy","worksFor":"Couchbase","url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/laurent-doguin\/"}]}},"authors":[{"term_id":9023,"user_id":49,"is_guest":0,"slug":"laurent-doguin","display_name":"Laurent Doguin","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","author_category":"","last_name":"Doguin","first_name":"Laurent","job_title":"","user_url":"","description":"Laurent\ub294 \ud30c\ub9ac\uc5d0 \uc0ac\ub294 \uad34\uc9dc \uae08\uc18d\uacf5\ud559\ub3c4\uc785\ub2c8\ub2e4. \uc8fc\ub85c Java\ub85c \ucf54\ub4dc\ub97c \uc791\uc131\ud558\uace0 AsciiDoc\uc73c\ub85c \uad6c\uc870\ud654\ub41c \ud14d\uc2a4\ud2b8\ub97c \uc791\uc131\ud558\uba70 \ub370\uc774\ud130, \ub9ac\uc561\ud2f0\ube0c \ud504\ub85c\uadf8\ub798\ubc0d \ubc0f \uae30\ud0c0 \uc720\ud589\uc5b4\uc5d0 \ub300\ud574 \uc790\uc8fc \uc774\uc57c\uae30\ud569\ub2c8\ub2e4. \ub610\ud55c Clever Cloud\uc640 Nuxeo\uc758 \uac1c\ubc1c\uc790 \uc639\ud638\uc790\ub85c \ud65c\ub3d9\ud558\uba70 \ud574\ub2f9 \ucee4\ubba4\ub2c8\ud2f0\uac00 \ub354 \ud06c\uace0 \uac15\ub825\ud558\uac8c \uc131\uc7a5\ud560 \uc218 \uc788\ub3c4\ub85d \uc790\uc2e0\uc758 \uc2dc\uac04\uacfc \uc804\ubb38\uc131\uc744 \ubc14\ucce4\uc2b5\ub2c8\ub2e4. \ud604\uc7ac Couchbase\uc5d0\uc11c \uac1c\ubc1c\uc790 \uad00\uacc4\ub97c \uc6b4\uc601\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2348","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/49"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=2348"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2348\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=2348"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=2348"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=2348"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=2348"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}