Live data from Hacker News

Simplifying Docker on OS X

blog.andyet.com

71–80 of 89 posts

Re: Simplifying Docker on OS X

#71
post #37
post #16

Earlier quoted context omitted.

There is no definition of "native" where your statement is true.

Containers don't run on osx, but docker isn't responsible for the containers anyway - lxc is. The "docker" program builds and runs natively under osx just fine, like any other Go binary.

Docker doesn't and hasn't used LXC for a long time. It uses libcontainer, which is their own implementation of a container runtime. Even when Docker did use LXC, the Docker daemon was required for management. The Docker daemon only runs on GNU/Linux and Windows, so there is no sane definition of "native" where the statement "Docker runs natively on OS X" is correct.

Re: Simplifying Docker on OS X

#72
post #67
post #60

Earlier quoted context omitted.

I also am not sure what major advantages this brings. And the article was slightly unclear in that you can add Docker environment variables to your `.bash_profile` -- you still are dealing with environment vars, but don't have to run the `eval` command all the time. And, I believe the docker-machine default VM settings mount your User (Users/myname) directory in it's virtual machine

yes you are correct, docker-machine mounts your current user's folder into the VM as well so thats not an advantage over docker-machine either.

But that mount is vboxfs and is slow. You need to do some extra work to get NFS going.

Re: Simplifying Docker on OS X

#73
post #49

Earlier quoted context omitted.

Depends on your internet speed. Pushing docker images over a LAN is about the same speed as writing them to disk. Pushing them to a remote server somewhere can introduce noticable latency in your workflow.

It's easy, you just do everything on the remote machine(s). I've taken this to such an extreme that I've given up on the Macbook and moved to a far less expensive and more secure Chromebook.

Not bad. Personally, I can't stand the hit to latency that doing work over SSH or screen sharing introduces, unless the ping time is very low... and your average cloud server has way less CPU power and RAM than a good laptop too, though I suppose you can avoid that by selecting a more expensive server to do work on. There are certainly huge advantages to the remote method for those that can pull it off.

Re: Simplifying Docker on OS X

#74
post #7

Earlier quoted context omitted.

I did and never looked back. Lenovo X1 Carbon Gen 3

Been using Linux on my work macbooks since 2009. There are some bumps involved, but it works really well on the awesome Apple hardware.

I dual-booted Mint on my 2011 MBA the other week and it was a nasty experience. I feel like Linux users have low standards, or maybe I've been away too long. Here's four things I found immediately:

1. The fans don't automatically react to temperature without a background daemon (?!).

2. Multi-touch trackpad support is terrible. The default synaptic driver can't handle you resting your thumb on the bottom of the trackpad. The alternative driver doesn't support momentum scrolling (and is still a bit shit). At least palm detection has been solved; well done Linux, it only took you 10 years.

3. It cannot seem to handle using left Alt as a third-level activator (e.g. for # key on EU keyboards) at the same time as actually letting you /use/ your Alt key (e.g. for activating menus). I think I eventually solved this, but how hard should it be?!

4. As others have mentioned; battery life.

I was impressed that sleep, audio, wifi and display brightness all worked out of the box though. Progress, eh?

Re: Simplifying Docker on OS X

#75
Docker is one of the tools that was concocted (by brilliant people!) after I began programming professionally. From my understanding, Docker allows you to containerize your applications so they function properly anywhere you (so to say) "place those containers".

Now, does if I'm working with say Django or Flask, and things behave differently on an AWS server than they do on your local machine, for example — relative paths for file uploads work on localhost, but mess up on AWS. Also file permissions are irritating to work with on AWS, but never an issue on localhost (on a Mac). In such a scenario, is Docker for these issues? I imagine I use Docker, make a "container" and setup everything properly in that, and then just move it to AWS when I'm deploying?

Re: Simplifying Docker on OS X

#76
post #36

Unfortunately it seems that Xhyve cannot connect to the Internet when traffic is routed through OpenVPN. Otherwise I would use it at my job. I tried https://github.com/coreos/coreos-xhyve , https://github.com/ailispaw/docker-root-xhyve and Veertu, and they all won't work. Apparently is a known issue https://github.com/mist64/xhyve/issues/84 ; it might have to do with Hypervisor.framework

Same goes for Cisco AnyConnect VPN. Updating the routing table seems to temporarily fix it, but it would be nice not to hack around it to get it to work.

> Updating the routing table seems to temporarily fix it,

can you share a link ? thanks

Re: Simplifying Docker on OS X

#78

Docker is one of the tools that was concocted (by brilliant people!) after I began programming professionally. From my understanding, Docker allows you to containerize your applications so they function properly anywhere you (so to say) "place those containers". Now, does if I'm working with say Django or Flask, and things behave differently on an AWS server than they do on your local machine, for example — relative…

You can also use Docker on AWS. Just use it as a target "runtime" for all your environments.

Re: Simplifying Docker on OS X

#79

Docker is one of the tools that was concocted (by brilliant people!) after I began programming professionally. From my understanding, Docker allows you to containerize your applications so they function properly anywhere you (so to say) "place those containers". Now, does if I'm working with say Django or Flask, and things behave differently on an AWS server than they do on your local machine, for example — relative…

You can also use Docker on AWS. Just use it as a target "runtime" for all your environments.

So that would mean telling Docker to setup a container to model the configuration on AWS on all my environments, correct?

Re: Simplifying Docker on OS X

#80
post #11

From someone who has wasted many hours trying to get B2D working, I have ended up using https://github.com/codekitchen/dinghy Easier to use, more reliable and some nice features like the OPs .docker DNS and NFS shares. The maintainer is very responsive and I recommend it to anyone who is struggling with docker on OSX.

In my experience the OSX tools for docker work absolutely fine. If you've got in a bad state, completely uninstall all existing docker-related stuff, `brew update` and `brew install docker-machine`.

The article sounds like a fun personal project, but I definitely don't see inconvenience on OSX being a justification.

If shell commands are too much to type then create aliases.

The VM's IP doesn't seem to change; add an entry in /etc/hosts mapping it to something like "docker-machine".

I don't understand the people in this thread complaining that OSX support is, e.g., "lackluster". The docker containers don't run on OSX so it's very nice that there's an OSX client that works perfectly as far as I can tell.

Post reply on HN