{"id":2157,"date":"2016-03-11T18:25:18","date_gmt":"2016-03-11T18:25:18","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2157"},"modified":"2023-11-17T08:35:32","modified_gmt":"2023-11-17T16:35:32","slug":"enabling-docker-remote-api-docker-machine-mac-osx","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/","title":{"rendered":"Enabling Docker Remote API on Docker Machine on Mac OS X"},"content":{"rendered":"<p>Docker daemon provides a <a href=\"https:\/\/docs.docker.com\/engine\/reference\/api\/docker_remote_api\/\">Remote REST API.<\/a>\u00a0This API is used by the Client to communicate with the engine. This API can be also be invoked by\u00a0by other tools, such as <a href=\"https:\/\/curl.haxx.se\/\">curl<\/a> or <a href=\"https:\/\/chrome.google.com\/webstore\/detail\/postman\/fhbjgbiflinjbdggehcddcbncdddomop?hl=en\">Chrome Postman REST Client<\/a>.<\/p>\n<p>If you are creating Docker daemons using Docker Machine on OSX Mavericks, then getting\u00a0this API to work is a bit tricky. This blog will explain how to enable Docker\u00a0Remote API on Docker Machines created on Mac OS X.<\/p>\n<p><a href=\"https:\/\/docs.docker.com\/engine\/security\/https\/#connecting-to-the-secure-docker-port-using-curl\">Connecting to the secure Docker port using curl<\/a> gives the command as:<\/p>\n<pre class=\"lang:default decode:true\">$ curl https:\/\/$HOST:2376\/images\/json \r\n  --cert ~\/.docker\/cert.pem \r\n  --key ~\/.docker\/key.pem \r\n  --cacert ~\/.docker\/ca.pem<\/pre>\n<p>Couple of issues with this command:<\/p>\n<ul>\n<li>This command does not even work for Docker Machine since the certificates for each Machine are stored in <code>.docker\/machine\/machines\/<\/code> directory.<\/li>\n<li>Even if this command is modified to match that path:\n<pre class=\"lang:default decode:true\">curl https:\/\/192.168.99.100:2376\/images\/json --cert $DOCKER_CERT_PATH\/cert.pem --key $DOCKER_CERT_PATH\/key.pem --cacert $DOCKER_CERT_PATH\/ca.pem<\/pre>\n<p>It still gives the following error:<\/p>\n<pre class=\"lang:default decode:true\">curl: (58) SSL: Can't load the certificate \"\/Users\/arungupta\/.docker\/machine\/machines\/couchbase\/cert.pem\" and its private key: OSStatus -25299<\/pre>\n<p>The culprit for this is an <a href=\"https:\/\/curl.haxx.se\/mail\/archive-2013-10\/0036.html\">updated curl utility for OSX Mavericks users<\/a>. In summary, the new version of CURL uses Apple&#8217;s Secure Transport API instead of the OpenSSL API. This means the\u00a0certificates need to be in P12 format.<\/li>\n<\/ul>\n<p>Lets fix this!<\/p>\n<ul>\n<li>Go to the directory where\u00a0certificates for your Machine are stored. In my case, this is <code>.docker\/machine\/machines\/couchbase<\/code> directory.<\/li>\n<li>Generate <code>*.p12<\/code> format for the certificate:\n<pre class=\"lang:default decode:true\">openssl pkcs12 -export \r\n-inkey key.pem \r\n-in cert.pem \r\n-CAfile ca.pem \r\n-chain \r\n-name client-side \r\n-out cert.p12 \r\n-password pass:mypass<\/pre>\n<\/li>\n<li>Now invoke the REST API as:\n<pre class=\"lang:default decode:true\">curl https:\/\/192.168.99.100:2376\/images\/json --cert $DOCKER_CERT_PATH\/cert.p12 --pass mypass --key $DOCKER_CERT_PATH\/key.pem --cacert $DOCKER_CERT_PATH\/ca.pem<\/pre>\n<p>Notice, <code>--cert<\/code> now points to the generated p12 certificate and certificate password is specified sing <code>--pass<\/code>.<\/p>\n<p>This will return the result as:<\/p>\n<pre class=\"lang:js decode:true\">[{\"Id\":\"sha256:d38beda529d3274636d6cb1c9000afe4f00fbdcfa544140d6cc0f5d7f5b8434a\",\"ParentId\":\"\",\"RepoTags\":[\"arungupta\/couchbase:latest\"],\"RepoDigests\":null,\"Created\":1450330075,\"Size\":374824677,\"VirtualSize\":374824677,\"Labels\":{}}]<\/pre>\n<p>OK, now that makes sense!<\/li>\n<li>Lets try to start <a href=\"https:\/\/developer.couchbase.com\/server\">Couchbase server<\/a> as:\n<pre class=\"lang:default decode:true\">~ &gt; docker run -d -p 8091-8093:8091-8093 -p 11210:11210 arungupta\/couchbase\r\n42d1414883affd0fbb272cb1378c2f6b5118acf3ed5cb60cbecdc42f95602e3e<\/pre>\n<p>And invoke another REST API to view more details about this container:<\/p>\n<pre class=\"lang:default decode:true\">~ &gt; curl https:\/\/192.168.99.100:2376\/containers\/json --cert $DOCKER_CERT_PATH\/cert2.p12 --pass mypass --key $DOCKER_CERT_PATH\/key.pem --cacert $DOCKER_CERT_PATH\/ca.pem\r\n[{\"Id\":\"42d1414883affd0fbb272cb1378c2f6b5118acf3ed5cb60cbecdc42f95602e3e\",\"Names\":[\"\/admiring_pike\"],\"Image\":\"arungupta\/couchbase\",\"ImageID\":\"sha256:d38beda529d3274636d6cb1c9000afe4f00fbdcfa544140d6cc0f5d7f5b8434a\",\"Command\":\"\/entrypoint.sh \/opt\/couchbase\/configure-cluster.sh\",\"Created\":1454850194,\"Ports\":[{\"IP\":\"0.0.0.0\",\"PrivatePort\":8092,\"PublicPort\":8092,\"Type\":\"tcp\"},{\"PrivatePort\":11207,\"Type\":\"tcp\"},{\"IP\":\"0.0.0.0\",\"PrivatePort\":11210,\"PublicPort\":11210,\"Type\":\"tcp\"},{\"PrivatePort\":18092,\"Type\":\"tcp\"},{\"PrivatePort\":18091,\"Type\":\"tcp\"},{\"IP\":\"0.0.0.0\",\"PrivatePort\":8093,\"PublicPort\":8093,\"Type\":\"tcp\"},{\"IP\":\"0.0.0.0\",\"PrivatePort\":8091,\"PublicPort\":8091,\"Type\":\"tcp\"},{\"PrivatePort\":11211,\"Type\":\"tcp\"}],\"Labels\":{},\"Status\":\"Up 2 seconds\",\"HostConfig\":{\"NetworkMode\":\"default\"},\"NetworkSettings\":{\"Networks\":{\"bridge\":{\"IPAMConfig\":null,\"Links\":null,\"Aliases\":null,\"NetworkID\":\"\",\"EndpointID\":\"6feaf4c1c70feaf0ba240ce55fb58ce83ebb84c8098bef9171998e84f607fa0b\",\"Gateway\":\"172.17.0.1\",\"IPAddress\":\"172.17.0.2\",\"IPPrefixLen\":16,\"IPv6Gateway\":\"\",\"GlobalIPv6Address\":\"\",\"GlobalIPv6PrefixLen\":0,\"MacAddress\":\"02:42:ac:11:00:02\"}}}}]<\/pre>\n<\/li>\n<\/ul>\n<p>Read through the <a href=\"https:\/\/docs.docker.com\/engine\/reference\/api\/docker_remote_api\/\">complete API<\/a> and go crazy now!<\/p>\n<p>Originally posted at:\u00a0<a href=\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\">Enabling Docker Remote API on Docker Machine on Mac OS X<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Docker daemon provides a Remote REST API.\u00a0This API is used by the Client to communicate with the engine. This API can be also be invoked by\u00a0by other tools, such as curl or Chrome Postman REST Client. If you are creating [&hellip;]<\/p>\n","protected":false},"author":58,"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":[1519],"ppma_author":[8933],"class_list":["post-2157","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","tag-docker"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.2 (Yoast SEO v26.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Docker Remote API: Enable w\/ Docker Machine on OSX Mavericks<\/title>\n<meta name=\"description\" content=\"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.\" \/>\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\/enabling-docker-remote-api-docker-machine-mac-osx\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Enabling Docker Remote API on Docker Machine on Mac OS X\" \/>\n<meta property=\"og:description\" content=\"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-03-11T18:25:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-17T16:35:32+00:00\" \/>\n<meta name=\"author\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@arungupta\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\"},\"author\":{\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f\"},\"headline\":\"Enabling Docker Remote API on Docker Machine on Mac OS X\",\"datePublished\":\"2016-03-11T18:25:18+00:00\",\"dateModified\":\"2023-11-17T16:35:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\"},\"wordCount\":281,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"docker\"],\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\",\"name\":\"Docker Remote API: Enable w\/ Docker Machine on OSX Mavericks\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-03-11T18:25:18+00:00\",\"dateModified\":\"2023-11-17T16:35:32+00:00\",\"description\":\"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#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\/enabling-docker-remote-api-docker-machine-mac-osx\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Enabling Docker Remote API on Docker Machine on Mac OS X\"}]},{\"@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\/39d8caed0f536489b6aa6e8d31ee631f\",\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"caption\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\"},\"description\":\"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.\",\"sameAs\":[\"https:\/\/x.com\/arungupta\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/author\/arun-gupta\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Docker Remote API: Enable w\/ Docker Machine on OSX Mavericks","description":"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.","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\/enabling-docker-remote-api-docker-machine-mac-osx\/","og_locale":"en_US","og_type":"article","og_title":"Enabling Docker Remote API on Docker Machine on Mac OS X","og_description":"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.","og_url":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-03-11T18:25:18+00:00","article_modified_time":"2023-11-17T16:35:32+00:00","author":"Arun Gupta, VP, Developer Advocacy, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@arungupta","twitter_misc":{"Written by":"Arun Gupta, VP, Developer Advocacy, Couchbase","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/"},"author":{"name":"Arun Gupta, VP, Developer Advocacy, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f"},"headline":"Enabling Docker Remote API on Docker Machine on Mac OS X","datePublished":"2016-03-11T18:25:18+00:00","dateModified":"2023-11-17T16:35:32+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/"},"wordCount":281,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["docker"],"articleSection":["Couchbase Server"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/","url":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/","name":"Docker Remote API: Enable w\/ Docker Machine on OSX Mavericks","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-03-11T18:25:18+00:00","dateModified":"2023-11-17T16:35:32+00:00","description":"Creating Docker daemons using Docker Machine on OSX Mavericks? This blog explains how to enable Docker Remote API on Docker Machines created on Mac OS X.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/enabling-docker-remote-api-docker-machine-mac-osx\/#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\/enabling-docker-remote-api-docker-machine-mac-osx\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Enabling Docker Remote API on Docker Machine on Mac OS X"}]},{"@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\/39d8caed0f536489b6aa6e8d31ee631f","name":"Arun Gupta, VP, Developer Advocacy, Couchbase","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337","url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","caption":"Arun Gupta, VP, Developer Advocacy, Couchbase"},"description":"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.","sameAs":["https:\/\/x.com\/arungupta"],"url":"https:\/\/www.couchbase.com\/blog\/author\/arun-gupta\/"}]}},"authors":[{"term_id":8933,"user_id":58,"is_guest":0,"slug":"arun-gupta","display_name":"Arun Gupta, VP, Developer Advocacy, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","author_category":"","last_name":"Gupta","first_name":"Arun","job_title":"","user_url":"","description":"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team.\r\n\r\nGupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2157","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\/58"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/comments?post=2157"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2157\/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=2157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/categories?post=2157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/tags?post=2157"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=2157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}