{"id":63777,"date":"2017-02-13T13:00:45","date_gmt":"2017-02-13T11:00:45","guid":{"rendered":"https:\/\/www.javacodegeeks.com\/?p=63777"},"modified":"2017-02-11T11:08:18","modified_gmt":"2017-02-11T09:08:18","slug":"getting-started-oracle-container-cloud-service","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html","title":{"rendered":"Getting Started with Oracle Container Cloud Service"},"content":{"rendered":"<p><a href=\"https:\/\/cloud.oracle.com\/container\">Oracle Container Cloud Service<\/a> is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options:<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.couchbase.com\/2016\/november\/docker-for-aws-getting-started-video\">Docker for AWS<\/a> or Azure<\/li>\n<li><a href=\"https:\/\/blog.couchbase.com\/2016\/july\/couchbase-docker-container-amazon-ecs\">Amazon Elastic Container Service<\/a><\/li>\n<li><a href=\"https:\/\/cloud.google.com\/container-engine\/\">Google Container\u00a0Engine<\/a><\/li>\n<li><a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/container-service\/\">Azure Container Service<\/a><\/li>\n<li><a href=\"https:\/\/blog.couchbase.com\/2016\/november\/couchbase-cluster-mesos-dcos\">DC\/OS<\/a> by Mesosphere<\/li>\n<li><a href=\"https:\/\/blog.openshift.com\/openshift-ecosystem-couchbase-openshift-nosql-applications\/\">OpenShift<\/a> by Red Hat<\/li>\n<\/ul>\n<p>This blog will explain how to get started with Oracle Container Cloud Service. A comparison of\u00a0different managed services is started\u00a0at <a href=\"https:\/\/github.com\/javaee-samples\/docker-java\/blob\/master\/managed-container-service.adoc\">Managed Container Service<\/a>.<\/p>\n<p>Before we jump into all the details, let\u2019s try to clarify a\u00a0couple of things about\u00a0this offering from Oracle.<\/p>\n<p>First, a bit about the name. \u201cOracle\u00a0Cloud Container Service\u201d seems more natural and intuitive since its a Container Service in Oracle Cloud. Wonder why is it called \u201cOracle Container\u00a0Cloud Service\u201d? Is it because \u201cOracle Container\u201d is Oracle\u2019s container orchestration framework and its a Cloud Service? Could that mean other orchestration frameworks be offered as a service as well?<\/p>\n<p>Second, don\u2019t confuse it with <a href=\"https:\/\/cloud.oracle.com\/acc\">Oracle Application Container Cloud Service<\/a>\u00a0that allows to build cloud-native 12-factor applications using polyglot platform. Now, that confuses me further. Can the Container Service not be used to build 12-factor apps? Are cloud-native and containers mutually exclusive?<\/p>\n<p>Anyway, this is causing more confusion than clarification Let\u2019s move on!<\/p>\n<p>One last thing before we dig in. Many thanks to Bruno Borges (<a href=\"http:\/\/twitter.com\/brunoborges\">@brunoborges<\/a>) for pushing the buttons for cloud service activation. I don\u2019t know the normal time for the free trial to be activated otherwise. And a much bigger thank to Mike Raab (<a href=\"http:\/\/twitter.com\/mikeraab\">@mikeraab<\/a>) for helping me\u00a0understand the details of Container Service.<\/p>\n<p>Let\u2019s get started!<\/p>\n<ol>\n<li>Get a <a href=\"https:\/\/cloud.oracle.com\/en_US\/tryit\">Free Trial for Oracle Cloud<\/a>. It takes a few days for the trial to be activated. The trial time bombs\u00a0after 30 days so make sure you\u2019ve\u00a0time planned for evaluation. Each free trial comes with 6 OC3 nodes. OC3 is one of the <a href=\"https:\/\/cloud.oracle.com\/en_US\/compute\/compute\/pricing\">compute node types available on Oracle Cloud<\/a>. OC3 particularly is 1 OCPU (think vCPU on Amazon Web Services) and 7.5 GB RAM.<\/li>\n<li>Once the\u00a0account is activated, you get an email as shown:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63805\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024.png\" width=\"860\" height=\"865\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024.png 1018w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024-150x150.png 150w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024-298x300.png 298w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024-768x773.png 768w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-welcome-email-1018x1024-70x70.png 70w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a>The important piece of information is <code>username<\/code>, <code>temporary password<\/code>, <code>identity domain<\/code> and <code>My Services URL<\/code>. The <code>My Account URL<\/code> link is only for account\u00a0administration.<\/li>\n<li>Click on My Service URL, login using the values from email:You get an opportunity to change your password afterwards<br \/>\n<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-login-1024x816.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63806\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-login-1024x816.png\" width=\"860\" height=\"685\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-login-1024x816.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-login-1024x816-300x239.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-login-1024x816-768x612.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<li>Oracle Cloud dashboard shows up after logging in:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-dashboard-1024x699.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63807\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-dashboard-1024x699.png\" width=\"860\" height=\"587\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-dashboard-1024x699.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-dashboard-1024x699-300x205.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-services-dashboard-1024x699-768x524.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<li>A default set of services and their status is\u00a0shown. The dashboard can also be customized by clicking on <code>Customize Dashboard<\/code>\u00a0button on the top right.<\/li>\n<li>Getting to Oracle Container Cloud Service Console is a bit non-intuitive but you get it once you know it. Select Container Cloud Service tab, click on top-right corner and select <code>Open Service Console<\/code>:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-access-1024x409.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63808\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-access-1024x409.png\" width=\"860\" height=\"343\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-access-1024x409.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-access-1024x409-300x120.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-access-1024x409-768x307.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<li>Or you can directly click on\u00a0the link for <a href=\"https:\/\/psm.us.oraclecloud.com\/psmui\/faces\/paasRunner.jspx?serviceType=container\">Oracle Container Cloud Service Console<\/a> in the welcome email. Service console looks like:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-1024x488.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63809\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-1024x488.png\" width=\"860\" height=\"410\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-1024x488.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-1024x488-300x143.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-1024x488-768x366.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<li>Click on Create Service:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-1024x571.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63810\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-1024x571.png\" width=\"860\" height=\"480\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-1024x571.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-1024x571-300x167.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-1024x571-768x428.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><a href=\"http:\/\/docs.oracle.com\/en\/cloud\/iaas\/container-cloud\/contu\/creating-oracle-container-cloud-service-instances.html\">Oracle Container Container Service Instance Details<\/a> provide more\u00a0details about each of the field.What is a worker node? We\u2019ll talk about it a bit later. But essentially this is where the container runs. We are asking for only one worker node.<br \/>\nIts worth noting different capacities for the worker node:<br \/>\n<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-cpus-1024x336.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63811\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-cpus-1024x336.png\" width=\"860\" height=\"282\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-cpus-1024x336.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-cpus-1024x336-300x98.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-cpus-1024x336-768x252.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a>Confirm all the settings:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-confirmation-1024x483.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63812\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-confirmation-1024x483.png\" width=\"860\" height=\"406\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-confirmation-1024x483.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-confirmation-1024x483-300x142.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-definition-confirmation-1024x483-768x362.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a>and click on <code>Create&gt;<\/code> to start the service creation.<\/li>\n<li>Wait for about 30 minutes for the service to be created. After that the Service Console\u00a0looks like:<br \/>\n<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-with-service-1024x747.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63813\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-with-service-1024x747.png\" width=\"860\" height=\"627\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-with-service-1024x747.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-with-service-1024x747-300x219.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-service-console-with-service-1024x747-768x560.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a>Wait, we asked for \u00a0one worker node and\u00a0how come two OCPUs are being consumed.Each Oracle Container Cloud Service has at least two <a href=\"http:\/\/docs.oracle.com\/en\/cloud\/iaas\/container-cloud\/contu\/hosts.html\">nodes<\/a> \u2013\u00a0a <em>manager<\/em> node and one\u00a0or more <em>worker<\/em> nodes. Manager node is responsible for administration of all the workers and\u00a0and orchestrate containers on different worker nodes. Worker nodes can be organized in different <a href=\"http:\/\/docs.oracle.com\/en\/cloud\/iaas\/container-cloud\/contu\/resource-pools.html\">resource pools<\/a>\u00a0to meet different workflow needs.And, so ~30 minutes are spent\u00a0provisioning two nodes\u00a0and installing\u00a0container service components on each node. This is also evident in the service logs shown in <code>Service Create and Delete History<\/code> shown in the main Console page:<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<pre class=\"brush:bash\">Activity Submitted\r\n \r\nActivity Started\r\n \r\nStarted operation to create service [couchbase] in identity domain [arungupta].\r\n \r\nCreating service [couchbase] resources [couchbase-occs-mgr-1,couchbase-occs-wkr-1].\r\n \r\nCompleted creating service [couchbase] in domain [arungupta].\r\n \r\nStarted operation to establish security on VMs for component [MANAGER].\r\n \r\nCompleted operation to establish security on VMs for component [MANAGER]\r\n \r\nStarted operation to establish security on VMs for component [WORKER].\r\n \r\nCompleted operation to establish security on VMs for component [WORKER]\r\n \r\nStarted operation to check provisioning status on the VMs for [MANAGER]\r\n \r\nStarted operation to check provisioning status on the VMs for [WORKER]\r\n \r\nProvisioning Succeeded on all hosts for component [WORKER]\r\n \r\nProvisioning Succeeded on all hosts for component [MANAGER]\r\n \r\nProvisioning of [MANAGER] succeeded.\r\n \r\nProvisioning of [WORKER] succeeded.\r\n \r\nProvisioning of all components completed.\r\n \r\nStarted service reachability check operation for [MANAGER].\r\n \r\nStarted service reachability check operation for [WORKER].\r\n \r\nReachability Succeeded on all hosts for component [MANAGER]\r\n \r\nSuccessfully completed service reachability check for [MANAGER]\r\n \r\nSuccessfully completed service reachability check for [WORKER]\r\n \r\nReachability Succeeded on all hosts for component [WORKER]\r\n \r\nService reachability check of [WORKER] succeeded.\r\n \r\nService reachability check of all components completed.\r\n \r\nService reachability check of [MANAGER] succeeded.\r\n \r\nActivity Ended\r\n \r\nActivity Ended<\/pre>\n<p>No timestamp in the activity feels a bit\u00a0too clean.<\/li>\n<li>One main question that\u00a0I kept wondering all along is \u201c<em>when am I ready to deploy the containers?<\/em>\u201c. Apparently, not yet!A couple of more steps so hang in there \u2026<br \/>\nIn your service, click on the top-right icon to\u00a0select another menu:<br \/>\n<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-1024x657.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63814\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-1024x657.png\" width=\"860\" height=\"552\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-1024x657.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-1024x657-300x192.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-1024x657-768x493.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a>Select <code>Container Console<\/code>. \u00a0So, now you are transitioning from <code>Oracle Container Cloud Service Console<\/code> to <code>Container\u00a0Console<\/code>. Make sure to use the right\u00a0terminology otherwise\u00a0it gets confusing fast.<\/li>\n<li>This\u00a0attempts to open Container Console but prompts the usual warning<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-warning-1024x865.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63815\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-warning-1024x865.png\" width=\"860\" height=\"726\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-warning-1024x865.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-warning-1024x865-300x253.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-open-warning-1024x865-768x649.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><br \/>\nJust click on <code>Proceed<\/code> link. In a typical production setup, this will setup correctly using certificates and so this warning would not happen.<\/li>\n<li>This brings up a login screen:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-login-1024x947.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63816\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-login-1024x947.png\" width=\"860\" height=\"795\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-login-1024x947.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-login-1024x947-300x277.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-login-1024x947-768x710.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<li>Use the username and password specified during service creation earlier. Click on <code>Login<\/code> to see Container Console:<a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-default-1024x636.png\"><img decoding=\"async\" class=\"aligncenter wp-image-63817\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-default-1024x636.png\" width=\"860\" height=\"534\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-default-1024x636.png 1024w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-default-1024x636-300x186.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/02\/oracle-cloud-container-console-default-1024x636-768x477.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/li>\n<\/ol>\n<p>Are we there yet?<\/p>\n<p>Yes, now is the time to\u00a0deploy containers. But we\u2019ll cover that in a\u00a0subsequent blog!<\/p>\n<p>Just to recap on what is needed to get started with Oracle Container Cloud Service \u2026<\/p>\n<ol>\n<li>Register for\u00a0Oracle Cloud trial<\/li>\n<li>Login to main Oracle Cloud Dashboard<\/li>\n<li>Create a Oracle Container Cloud Service Instance<\/li>\n<li>Oracle Container Cloud Service Instance Console<\/li>\n<li>Container Console<\/li>\n<\/ol>\n<p>All the steps need to be done once but\u00a0a\u00a0console inside a\u00a0console inside a dashboard feels like <a href=\"http:\/\/www.imdb.com\/title\/tt1375666\/\">Inception.<\/a>\u00a0The good thing is that\u00a0the IP address of Container Console is a public IP address served by\u00a0Oracle Cloud and can be used from anywhere.<\/p>\n<p><a href=\"http:\/\/docs.oracle.com\/cloud\/latest\/container-cloud\/index.html\">Oracle Container Cloud Service Docs<\/a>\u00a0have lot more details about\u00a0building and deploying applications using this Console.<\/p>\n<p>In the next blog, we\u2019ll see\u00a0what it takes to run a Couchbase container using this console? Possibly a cluster of Couchbase across multiple hosts?<\/p>\n<p>Want to learn more about running Couchbase in containers?<\/p>\n<ul>\n<li><a href=\"http:\/\/couchbase.com\/containers\">Couchbase on Containers<\/a><\/li>\n<li><a href=\"https:\/\/forums.couchbase.com\/\">Couchbase Forums<\/a><\/li>\n<li><a href=\"https:\/\/developer.couchbase.com\/\">Couchbase Developer Portal<\/a><\/li>\n<li><a href=\"http:\/\/twitter.com\/couchbasedev\">@couchhasedev<\/a> and <a href=\"http:\/\/twitter.com\/couchbase\">@couchbase<\/a><\/li>\n<\/ul>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td><span class=\"reference\">Reference: <\/span><\/td>\n<td><a href=\"http:\/\/blog.arungupta.me\/getting-started-oracle-container-cloud-service\/\">Getting Started with Oracle Container Cloud Service<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/join-us\/jcg\/\">JCG partner<\/a> Arun Gupta at the <a href=\"http:\/\/blog.arungupta.me\/\">Miles to go 3.0 \u2026<\/a> blog.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or Azure Amazon Elastic Container Service Google Container\u00a0Engine Azure Container Service DC\/OS by Mesosphere OpenShift by Red Hat This blog will explain how to get started with Oracle Container Cloud Service. A &hellip;<\/p>\n","protected":false},"author":598,"featured_media":2386,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15],"tags":[1300],"class_list":["post-63777","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development","tag-cloud-computing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Getting Started with Oracle Container Cloud Service - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or\" \/>\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.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting Started with Oracle Container Cloud Service - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2017-02-13T11:00:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Arun Gupta\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/arungupta\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arun Gupta\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html\"},\"author\":{\"name\":\"Arun Gupta\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/82c06e0d9eea6c8a425a0675ed3d932f\"},\"headline\":\"Getting Started with Oracle Container Cloud Service\",\"datePublished\":\"2017-02-13T11:00:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html\"},\"wordCount\":967,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"keywords\":[\"Cloud Computing\"],\"articleSection\":[\"Software Development\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html\",\"name\":\"Getting Started with Oracle Container Cloud Service - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"datePublished\":\"2017-02-13T11:00:45+00:00\",\"description\":\"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/02\\\/getting-started-oracle-container-cloud-service.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Software Development\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/software-development\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Getting Started with Oracle Container Cloud Service\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/82c06e0d9eea6c8a425a0675ed3d932f\",\"name\":\"Arun Gupta\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g\",\"caption\":\"Arun Gupta\"},\"description\":\"Arun is a technology enthusiast, avid runner, author of a best-selling book, globe trotter, a community guy, Java Champion, JavaOne Rockstar, JUG Leader, Minecraft Modder, Devoxx4Kids-er, and a Red Hatter.\",\"sameAs\":[\"http:\\\/\\\/blog.arungupta.me\\\/\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/arungupta\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/arun-gupta\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Getting Started with Oracle Container Cloud Service - Java Code Geeks","description":"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or","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.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html","og_locale":"en_US","og_type":"article","og_title":"Getting Started with Oracle Container Cloud Service - Java Code Geeks","og_description":"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or","og_url":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2017-02-13T11:00:45+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","type":"image\/jpeg"}],"author":"Arun Gupta","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/arungupta","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Arun Gupta","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html"},"author":{"name":"Arun Gupta","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/82c06e0d9eea6c8a425a0675ed3d932f"},"headline":"Getting Started with Oracle Container Cloud Service","datePublished":"2017-02-13T11:00:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html"},"wordCount":967,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","keywords":["Cloud Computing"],"articleSection":["Software Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html","url":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html","name":"Getting Started with Oracle Container Cloud Service - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","datePublished":"2017-02-13T11:00:45+00:00","description":"Oracle Container Cloud Service is Oracle\u2019s entry into the the world of\u00a0managed container service. There are plenty of existing options: Docker for AWS or","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2017\/02\/getting-started-oracle-container-cloud-service.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Software Development","item":"https:\/\/www.javacodegeeks.com\/category\/software-development"},{"@type":"ListItem","position":3,"name":"Getting Started with Oracle Container Cloud Service"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/82c06e0d9eea6c8a425a0675ed3d932f","name":"Arun Gupta","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f9ef0a5821c07ed6acc75261b8935b85c5a19e42e60e5eaa01b1c065c76e0fd3?s=96&d=mm&r=g","caption":"Arun Gupta"},"description":"Arun is a technology enthusiast, avid runner, author of a best-selling book, globe trotter, a community guy, Java Champion, JavaOne Rockstar, JUG Leader, Minecraft Modder, Devoxx4Kids-er, and a Red Hatter.","sameAs":["http:\/\/blog.arungupta.me\/","https:\/\/x.com\/https:\/\/twitter.com\/arungupta"],"url":"https:\/\/www.javacodegeeks.com\/author\/arun-gupta"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/63777","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/598"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=63777"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/63777\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/2386"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=63777"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=63777"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=63777"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}