Reputation: 2569
I'm not able to get what is the purpose of Docker CLI (started by Kinematic) - vs regular OSX terminal.
I have docker
command available in both (OSX terminal and Docker-CLI), but when typing in:
//OSX terminal
$ docker images
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
// Kinematic terminal
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
mariadb 5.5.47 a31b2e03c00b 6 months ago 238.8 MB
mysql latest d617bcfd159e 6 months ago 360.3 MB
mysql 5.7.9 a5ad9eb2ff48 8 months ago 359.9 MB
<none> <none> 9ee13ca3b908 8 months ago 125.1 MB
and the same for the rest of the commands like docker-compose up
, they work at the terminal started with Kinematics but not on my local terminal.
Can you please explain me what I'm missing here?
Upvotes: 1
Views: 240
Reputation: 8613
This is due the virtualization of the Docker environment on MacOS. The docker environment is not available as a native application but contained in a virtual machine. See the docs:
Docker for Mac is our newest offering for the Mac. It runs as a native Mac application and uses xhyve to virtualize the Docker Engine environment and Linux kernel-specific features for the Docker daemon.
You do not need to access that machine manually in any way. The Docker Terminal listed under your Applications as well as Kitematic will do that for you.
However, if you take a look at the virtual machines listed in VirtualBox you will find a VM named default
which is the one created during the Docker installation.
So the docker CLI is kind of a adapter between your local OSX terminal and the terminal of the Docker environment. The CLI somehow pipes the commands from your OSX terminal to the Docker environment.
Upvotes: 2