{"id":2097,"date":"2015-11-03T15:00:00","date_gmt":"2015-11-03T15:00:00","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2097"},"modified":"2025-06-13T23:54:00","modified_gmt":"2025-06-14T06:54:00","slug":"couchbase-as-a-service-joyent-triton","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/","title":{"rendered":"Couchbase as a Service: Joyent Triton"},"content":{"rendered":"<p>When I&#8217;m at events and conferences I&#8217;m always asked how much does Couchbase charge for hosting. The simple answer is that Couchbase is<br \/>\na software company and not a hosting company, but that doesn&#8217;t mean that you can&#8217;t host Couchbase through some other service. There are Couchbase<br \/>\nimages available on services including Amazon Web Services (AWS), Azure, Joyent, and many others.<\/p>\n<p>In particular, we&#8217;re going to look at hosting Couchbase Server on <a href=\"https:\/\/www.joyent.com\/\">Joyent&#8217;s Triton<\/a> platform with Docker.<\/p>\n<h2>A Background on Joyent and Triton<\/h2>\n<p>If you&#8217;re unfamiliar with Joyent, it is a software and services company that specializes in performance driven public and private cloud<br \/>\ncomputing. Using Joyent&#8217;s Triton service, you can &#8220;&#8230;securely deploy and operate containers with bare metal speed on<br \/>\ncontainer-native infrastructure&#8221;. Some of the advantages of running Docker containers on Triton include:<\/p>\n<ul>\n<li>Your containers run on bare metal, eliminating hardware level virtualization overhead. In other words you will experience<br \/>\nsignificantly improved performace.<\/li>\n<li>Each container has its own IP address which makes it easier to network between containers.<\/li>\n<li>You can resize your Docker containers with no down time.<\/li>\n<\/ul>\n<h2>The Requirements<\/h2>\n<p>Being that we&#8217;re going to get a Couchbase Server cluster up and running on Joyent&#8217;s Triton, there will be a few requirements in the process:<\/p>\n<ul>\n<li>Docker 1.8<\/li>\n<li>A Joyent Account<\/li>\n<li>An SSH Private Key<\/li>\n<\/ul>\n<p>You can probably get away with using a different version of Docker, but I&#8217;m using 1.8. It is up to you how adventurous you want to be.<\/p>\n<h2>Using Couchbase with Docker Containers<\/h2>\n<p>At this point, if you haven&#8217;t already installed the <a href=\"https:\/\/www.docker.com\/docker-toolbox\">Docker Toolbox<\/a>, now is a<br \/>\ngood time. It will contain all the tools necessary for using Docker on our local computer.<\/p>\n<p>Now the Docker Toolbox contains a tool called Kitematic, offering GUI support for Docker. We won&#8217;t be using that tool. Instead we are going<br \/>\nto do everything from the Terminal (Mac and Linux) or Command Prompt (Windows).<\/p>\n<p>Note that for now we are going to use Docker locally only, just to become familiar with Couchbase and Docker. Later in this guide we&#8217;ll be<br \/>\nconnecting to Joyent&#8217;s Triton service.<\/p>\n<h3>Download and Start a Couchbase Server Container<\/h3>\n<p>From the Docker Terminal application, run the following command:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker run --name couchbase-server-1 -d -p 8091:8091 couchbase\r\n<\/code><\/pre>\n<p>The above command will download the latest official Couchbase Server Docker image, give the container a name on our system, and start it.<br \/>\nYou can test that it was successful by visiting <strong>https:\/\/192.168.99.100:8091\/<\/strong> in your browser. Note<br \/>\nthat <strong>192.168.99.100<\/strong> is whatever your Docker Terminal told you when you started it.<\/p>\n<h3>Start a Second Couchbase Server Container<\/h3>\n<p>Go ahead and start up a second local Couchbase Server instance with Docker. This time you want to do the following:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker run --name couchbase-server-2 -d -p 8092:8091 couchbase\r\n<\/code><\/pre>\n<p>Notice this time we changed the container name and increased the host port to <strong>8092<\/strong> instead of <strong>8091<\/strong>. This<br \/>\nis to prevent port conflicts.<\/p>\n<h3>Stop and Remove Both Couchbase Server Containers<\/h3>\n<p>We no longer need these locally running Couchbase Server Docker containers. To remove them, we must first figure out their unique<br \/>\ncontainer value like so:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker ps\r\n<\/code><\/pre>\n<p>The result will look something like this:<\/p>\n<pre><code class=\"language-bash\">\r\nCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                                                NAMES\r\n9f3b05af8393        couchbase           \"\/entrypoint.sh couch\"   9 minutes ago       Up 9 minutes        8092-8093\/tcp, 11207\/tcp, 11210-11211\/tcp, 18091-18092\/tcp, 0.0.0.0:8092-&gt;8091\/tcp   couchbase-server-2\r\nb20045600bd0        couchbase           \"\/entrypoint.sh couch\"   9 minutes ago       Up 9 minutes        8092-8093\/tcp, 11207\/tcp, 11210-11211\/tcp, 0.0.0.0:8091-&gt;8091\/tcp, 18091-18092\/tcp   couchbase-server-1\r\n<\/code><\/pre>\n<p>With the unique container values you can then run:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker stop 9f3b05af8393\r\ndocker stop b20045600bd0\r\ndocker rm 9f3b05af8393\r\ndocker rm b20045600bd0\r\n<\/code><\/pre>\n<p>Both local containers should now be removed.<\/p>\n<h2>Connecting Docker to the Triton Cloud API<\/h2>\n<p>Up until now, everything Docker and Couchbase was local to your machine. Now we&#8217;re going to connect our Docker client to the Joyent<br \/>\nCloud API so we can make use of Triton. The steps we&#8217;re going to follow can be found in<br \/>\nthe <a href=\"https:\/\/apidocs.joyent.com\/docker\">official Joyent documentation<\/a>, but can also be seen in this guide.<\/p>\n<p>Start by obtaining the Joyent helper script like so:<\/p>\n<pre><code class=\"language-bash\">\r\ncurl -O https:\/\/raw.githubusercontent.com\/joyent\/sdc-docker\/master\/tools\/sdc-docker-setup.sh\r\n<\/code><\/pre>\n<p>If you don&#8217;t have or can&#8217;t use <strong>curl<\/strong> download the file manually. With the script downloaded, you want to now execute it,<br \/>\npassing in a particular set of parameters:<\/p>\n<pre><code class=\"language-bash\">\r\nbash sdc-docker-setup.sh   ~\/.ssh\/\r\n<\/code><\/pre>\n<p>The <strong>CLOUDAPI_URL<\/strong> can be one of the following, per the documentation:<\/p>\n<ul>\n<li>https:\/\/us-east-1.api.joyent.com<\/li>\n<li>https:\/\/us-sw-1.api.joyent.com<\/li>\n<li>https:\/\/eu-ams-1.api.joyent.com<\/li>\n<\/ul>\n<p>The <strong>ACCOUNT_NAME<\/strong> is the username you use to sign into the Joyent dashboard. Like mentioned earlier, you&#8217;ll need an SSH<br \/>\nprivate key to plug into <strong>PRIVATE_KEY_FILE<\/strong>.<\/p>\n<p>When you run the script, it may ask you to enter your private key password a few times. Just follow the instructions and do as it says. At<br \/>\nthe end, it will supply you with something that looks like the following:<\/p>\n<pre><code class=\"language-bash\">\r\nexport DOCKER_CERT_PATH=\/Users\/nraboy\/.sdc\/docker\/nraboy\r\nexport DOCKER_HOST=tcp:\/\/us-east-1.docker.joyent.com:2376\r\nexport DOCKER_CLIENT_TIMEOUT=300\r\nexport DOCKER_TLS_VERIFY=1\r\n<\/code><\/pre>\n<p>You&#8217;ll want to run those <strong>export<\/strong> statements, but don&#8217;t forget to change my <strong>nraboy<\/strong> to that of whatever<br \/>\nit generated for you. These export statements are important because once you run them, Docker will then use Joyent for managing<br \/>\ncontainers instead of your local machine.<\/p>\n<h2>Run Couchbase Server Containers on Joyent<\/h2>\n<p>Remember those local Docker commands we ran earlier? Let&#8217;s run them again with a minor modification:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker run --name couchbase-server-1 -d -P couchbase\r\n<\/code><\/pre>\n<p>We shouldn&#8217;t need to define port mapping on our own when it comes to Joyent. This is because Joyent gives us an IP for every container we<br \/>\ncreate. On our local machine we only have one IP and ports become an issue. Just make use of the <strong>-P<\/strong> flag and you<br \/>\nshould be good.<\/p>\n<p>If you sign into your Joyent dashboard you should see the node and its IP address. If you don&#8217;t want to obtain the information via<br \/>\nthe Joyent dashboard, you can always do this via the Docker Terminal because everything it does is on the remote side now:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker ps\r\ndocker inspect --format '{{ .NetworkSettings.IPAddress }}' 9f3b05af8393\r\n<\/code><\/pre>\n<p>Remember of course to switch out the unique container id with those returned from <strong>docker ps<\/strong>.<\/p>\n<h2>Configure Your First Couchbase Node<\/h2>\n<p>Using one of the IP addresses returned from the <strong>docker inspect<\/strong> command, enter it in your web browser with port<br \/>\n<strong>8091<\/strong> appended. Something like <strong>https:\/\/165.225.158.112:8091<\/strong> will do it.<\/p>\n<p>Walk through the steps for configuring the Couchbase cluster. Remember the IP and administrator credentials as they&#8217;ll be needed when<br \/>\nadding new nodes to your cluster.<\/p>\n<h2>Add More Nodes to Your Couchbase Triton Cluster<\/h2>\n<p>Time to add another Couchbase Server container to Triton so we can cluster our Couchbase nodes. From the Docker Terminal run:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker run --name couchbase-server-2 -d -P couchbase\r\n<\/code><\/pre>\n<p>Like we discussed earlier, get the IP of this container and boot it up in your web browser on port <strong>8091<\/strong>.<\/p>\n<p>Instead of choosing to create a new Couchbase cluster, choose to join one and enter the information of the other server. When complete,<br \/>\nrebalance the server and you&#8217;re good to go!<\/p>\n<h2>Remove Containers from Your Cluster<\/h2>\n<p>Being that Couchbase is pretty scalable, you&#8217;ll probably find yourself needing to remove nodes every once in a while. To do this, you&#8217;ll<br \/>\nneed to first gracefully remove the Couchbase node from your cluster via the Couchbase administrative dashboard. The removal will include<br \/>\na rebalance of all of your existing nodes.<\/p>\n<p>With the node safely removed from the cluster, you can now remove its container from Joyent&#8217;s Triton service. In your Docker Terminal proceed<br \/>\nwith the same steps we followed when we removed a container locally:<\/p>\n<pre><code class=\"language-bash\">\r\ndocker ps\r\ndocker stop 9f3b05af8393\r\ndocker stop b20045600bd0\r\ndocker rm 9f3b05af8393\r\ndocker rm b20045600bd0\r\n<\/code><\/pre>\n<p>Remember of course to swap out the unique container ids with those returned from <strong>docker ps<\/strong>.<\/p>\n<h2>Conclusion<\/h2>\n<p>We just saw how to make use of Joyent&#8217;s Triton service to host Docker containers with Couchbase Server. Using Joyent will give you incredible<br \/>\nperformance with its bare-metal infrustructure and excellent security.<\/p>\n<p>The topic of security was out of the scope for this particular article, but it may be revisited in a future post.<\/p>\n<p>To compliment this article, Joyent is giving Couchbase users a promotional discount on its Triton service. You can sign up for Joyent and<br \/>\nmake use of this offer <a href=\"https:\/\/www.joyent.com\/couchbase\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>When I&#8217;m at events and conferences I&#8217;m always asked how much does Couchbase charge for hosting. The simple answer is that Couchbase is a software company and not a hosting company, but that doesn&#8217;t mean that you can&#8217;t host Couchbase [&hellip;]<\/p>\n","protected":false},"author":63,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[1554,1519,1552,1553],"ppma_author":[9032],"class_list":["post-2097","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","tag-container","tag-docker","tag-joyent","tag-triton"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase as a Service: Joyent Triton - The Couchbase Blog<\/title>\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\/couchbase-as-a-service-joyent-triton\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase as a Service: Joyent Triton\" \/>\n<meta property=\"og:description\" content=\"When I&#8217;m at events and conferences I&#8217;m always asked how much does Couchbase charge for hosting. The simple answer is that Couchbase is a software company and not a hosting company, but that doesn&#8217;t mean that you can&#8217;t host Couchbase [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/thepolyglotdeveloper\" \/>\n<meta property=\"article:published_time\" content=\"2015-11-03T15:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T06:54:00+00:00\" \/>\n<meta name=\"author\" content=\"Nic Raboy, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@nraboy\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nic Raboy, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\"},\"author\":{\"name\":\"Nic Raboy, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1\"},\"headline\":\"Couchbase as a Service: Joyent Triton\",\"datePublished\":\"2015-11-03T15:00:00+00:00\",\"dateModified\":\"2025-06-14T06:54:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\"},\"wordCount\":1258,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"container\",\"docker\",\"joyent\",\"triton\"],\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\",\"name\":\"Couchbase as a Service: Joyent Triton - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2015-11-03T15:00:00+00:00\",\"dateModified\":\"2025-06-14T06:54:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#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\/couchbase-as-a-service-joyent-triton\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase as a Service: Joyent Triton\"}]},{\"@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\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@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\/bb545ebe83bb2d12f91095811d0a72e1\",\"name\":\"Nic Raboy, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8863514d8bed0cf6080f23db40e00354\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g\",\"caption\":\"Nic Raboy, Developer Advocate, Couchbase\"},\"description\":\"Nic Raboy is an advocate of modern web and mobile development technologies. He has experience in Java, JavaScript, Golang and a variety of frameworks such as Angular, NativeScript, and Apache Cordova. Nic writes about his development experiences related to making web and mobile development easier to understand.\",\"sameAs\":[\"https:\/\/www.thepolyglotdeveloper.com\",\"https:\/\/www.facebook.com\/thepolyglotdeveloper\",\"https:\/\/x.com\/nraboy\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/author\/nic-raboy-2\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase as a Service: Joyent Triton - The Couchbase Blog","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\/couchbase-as-a-service-joyent-triton\/","og_locale":"en_US","og_type":"article","og_title":"Couchbase as a Service: Joyent Triton","og_description":"When I&#8217;m at events and conferences I&#8217;m always asked how much does Couchbase charge for hosting. The simple answer is that Couchbase is a software company and not a hosting company, but that doesn&#8217;t mean that you can&#8217;t host Couchbase [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/","og_site_name":"The Couchbase Blog","article_author":"https:\/\/www.facebook.com\/thepolyglotdeveloper","article_published_time":"2015-11-03T15:00:00+00:00","article_modified_time":"2025-06-14T06:54:00+00:00","author":"Nic Raboy, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@nraboy","twitter_misc":{"Written by":"Nic Raboy, Developer Advocate, Couchbase","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/"},"author":{"name":"Nic Raboy, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1"},"headline":"Couchbase as a Service: Joyent Triton","datePublished":"2015-11-03T15:00:00+00:00","dateModified":"2025-06-14T06:54:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/"},"wordCount":1258,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["container","docker","joyent","triton"],"articleSection":["Couchbase Server"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/","url":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/","name":"Couchbase as a Service: Joyent Triton - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2015-11-03T15:00:00+00:00","dateModified":"2025-06-14T06:54:00+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-as-a-service-joyent-triton\/#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\/couchbase-as-a-service-joyent-triton\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase as a Service: Joyent Triton"}]},{"@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":"en-US"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"The Couchbase Blog","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@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\/bb545ebe83bb2d12f91095811d0a72e1","name":"Nic Raboy, Developer Advocate, Couchbase","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8863514d8bed0cf6080f23db40e00354","url":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","caption":"Nic Raboy, Developer Advocate, Couchbase"},"description":"Nic Raboy is an advocate of modern web and mobile development technologies. He has experience in Java, JavaScript, Golang and a variety of frameworks such as Angular, NativeScript, and Apache Cordova. Nic writes about his development experiences related to making web and mobile development easier to understand.","sameAs":["https:\/\/www.thepolyglotdeveloper.com","https:\/\/www.facebook.com\/thepolyglotdeveloper","https:\/\/x.com\/nraboy"],"url":"https:\/\/www.couchbase.com\/blog\/author\/nic-raboy-2\/"}]}},"authors":[{"term_id":9032,"user_id":63,"is_guest":0,"slug":"nic-raboy-2","display_name":"Nic Raboy, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","author_category":"","last_name":"Raboy","first_name":"Nic","job_title":"","user_url":"https:\/\/www.thepolyglotdeveloper.com","description":"Nic Raboy is an advocate of modern web and mobile development technologies. He has experience in Java, JavaScript, Golang and a variety of frameworks such as Angular, NativeScript, and Apache Cordova. Nic writes about his development experiences related to making web and mobile development easier to understand."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2097","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/users\/63"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/comments?post=2097"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2097\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/media?parent=2097"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/categories?post=2097"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/tags?post=2097"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=2097"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}