{"id":65,"date":"2016-02-25T12:50:25","date_gmt":"2016-02-25T20:50:25","guid":{"rendered":"http:\/\/www.nathanbak.com\/?p=65"},"modified":"2026-01-02T20:02:38","modified_gmt":"2026-01-03T04:02:38","slug":"what-os-for-docker-host-part-3","status":"publish","type":"post","link":"https:\/\/nathanbak.com\/?p=65","title":{"rendered":"What OS for Docker host? (Part 3)"},"content":{"rendered":"<p>This is a continuation from <a href=\"http:\/\/www.nathanbak.com\/?p=49\">What OS for Docker host? (Part 2)<\/a>.<\/p>\n<h2>CoreOS<\/h2>\n<p>Reading about my plight and having experienced problems with <a href=\"http:\/\/janhapke.com\/blog\/alpine-linux-sucks-for-hosting-docker-containers\/\">Docker on Alpine Linux<\/a>, Jan Hapke recommended CoreOS unless one needs CIFS.\u00a0 Since I didn&#8217;t know anything about CIFS, I assumed I didn&#8217;t need it.\u00a0 So I pulled down another ISO and burned another disc.\u00a0 The <a href=\"https:\/\/coreos.com\/os\/docs\/latest\/installing-to-disk.html\">installation process<\/a> was fairly simple and I&#8217;d already learned my lesson about specifying authorized keys at install time during my Rancher OS exploration.\u00a0 I was a little surprised that the installer didn&#8217;t ask me if I really wanted to reformat my hard drive&#8211;I knew it would and admittedly did use sudo, but usually for such potentially disastrous consequences most installers ask if you really want to lose all the data on the drive . . .<\/p>\n<p>The install went fairly quickly and I was able to ssh into my machine using my key.\u00a0 I checked and the Docker version was at 1.8.3&#8211;I had installed the &#8220;stable&#8221; version of CoreOS so it makes sense that it doesn&#8217;t have the very latest and greatest.\u00a0 I ran a few Docker containers and everything worked smoothly and as I would want.<\/p>\n<p>Then came wireless networking setup.\u00a0 I couldn&#8217;t.\u00a0 Searching a bit found others also wanted to use wireless with CoreOS, but the solution seems to involved manually finding the correct drivers and then reconfiguring and building the kernel. That was something I wasn&#8217;t too keen to try.\u00a0 And so I decided that I wouldn\u2019t use CoreOS.<\/p>\n<h2>Snappy<\/h2>\n<p>While searching for operating systems to try, I came across a couple articles mentioning Ubuntu Core which is known as &#8220;<a href=\"http:\/\/www.ubuntu.com\/cloud\/snappy\">Snappy<\/a>&#8221; and is apparently &#8220;designed for Docker&#8221;.\u00a0 Since I still had CoreOS running on the laptop, the install consisted of running:<\/p>\n<pre>wget http:\/\/releases.ubuntu.com\/15.04\/ubuntu-15.04-snappy-amd64-generic.img.xz\r\nunxz -c ubuntu-15.04-snappy-amd64-generic.img.xz | sudo dd of=\/dev\/sdX bs=32M<\/pre>\n<p>After that, since I had just run dd over the hard drive, things were understandably in a very bad state, so I forced a restart of the machine. Surprisingly Snappy booted up fine and I was able to SSH into it using the default user name and password (both &#8220;ubuntu&#8221;).<\/p>\n<p>Installing Docker was pretty easy once I realized that the system didn&#8217;t have apt-get.\u00a0 Using the Snappy way, I ran:<\/p>\n<pre>sudo snappy install docker<\/pre>\n<p>This gave me version 1.6.2 of Docker.\u00a0 I tried running &#8220;sudo snappy update docker&#8221; but it just seemed to update ubuntu-core.\u00a0 When I went to install Docker directly from docker.io, I discovered that not only does Snappy not come with wget or curl, it doesn&#8217;t even seem to have an easy way to install those tools (though some people have found complicated ways to install them).\u00a0 Since I just wanted to fetch a single file, and had Docker, I mounted a volume, spun up a container, and fetched the Docker install script into the mounted directory.\u00a0 I then exited the container and tried to run the script.\u00a0 The script seemed to think that Snappy is like normal Ubuntu and tried to run apt-get.\u00a0 It failed miserably.\u00a0 With an ancient version of Docker and difficulty adding the most basic of utilities, I didn&#8217;t even want to try taking on the beast that is wireless.\u00a0 And so I decided that I wouldn\u2019t use Snappy.<\/p>\n<p>I had thought that this post would have two parts, but obviously that didn&#8217;t work out.\u00a0 The story continues (and hopefully finds a happy ending) in <a href=\"http:\/\/www.nathanbak.com\/?p=74\">part 3<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a continuation from What OS for Docker host? (Part 2). CoreOS Reading about my plight and having experienced problems with Docker on Alpine Linux, Jan Hapke recommended CoreOS unless one needs CIFS.\u00a0 Since I didn&#8217;t know anything about CIFS, I assumed I didn&#8217;t need it.\u00a0 So I pulled down another ISO and burned &hellip; <a href=\"https:\/\/nathanbak.com\/?p=65\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;What OS for Docker host? (Part 3)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[8],"class_list":["post-65","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-docker"],"_links":{"self":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/65","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=65"}],"version-history":[{"count":8,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/65\/revisions"}],"predecessor-version":[{"id":88,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/65\/revisions\/88"}],"wp:attachment":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=65"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=65"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=65"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}