Docker Installation¶
You can download and install Docker on multiple platforms. The following are the most common ways to install Docker on Linux, Mac, and Windows. You can also install Docker on other platforms if you have the necessary software.
Images¶
Linux¶
Run this quick and easy install script provided by Docker:
curl -sSL https://get.docker.com/ | sh
If you're not willing to run a random shell script, please see the installation instructions for your distribution.
If you are a complete Docker newbie, you should follow the series of tutorials now.
macOS¶
Download and install Docker Community Edition. if you have Homebrew-Cask, just type brew install --cask docker
. Or Download and install Docker Toolbox. Docker For Mac is nice, but it's not quite as finished as the VirtualBox install. See the comparison.
NOTE Docker Toolbox is legacy. You should to use Docker Community Edition, See Docker Toolbox.
Once you've installed Docker Community Edition, click the docker icon in Launchpad. Then start up a container:
docker run hello-world
That's it, you have a running Docker container.
If you are a complete Docker newbie, you should probably follow the series of tutorials now.
Windows 10¶
Instructions to install Docker Desktop for Windows can be found here
Once installed, open powershell as administrator and run:
# Display the version of docker installed:
docker version
# Pull, create, and run 'hello-world':
docker run hello-world
To continue with this cheat sheet, right click the Docker icon in the system tray, and go to settings. In order to mount volumes, the C:/ drive will need to be enabled in the settings to that information can be passed into the containers (later described in this article).
To switch between Windows containers and Linux containers, right click the icon in the system tray and click the button to switch container operating system Doing this will stop the current containers that are running, and make them unaccessible until the container OS is switched back.
Additionally, if you have WSL or WSL2 installed on your desktop, you might want to install the Linux Kernel for Windows. Instructions can be found here. This requires the Windows Subsystem for Linux feature. This will allow for containers to be accessed by WSL operating systems, as well as the efficiency gain from running WSL operating systems in docker. It is also preferred to use Windows terminal for this.
Windows Server 2016 / 2019¶
Follow Microsoft's instructions that can be found here
If using the latest edge version of 2019, be prepared to only work in powershell, as it is only a servercore image (no desktop interface). When starting this machine, it will login and go straight to a powershell window. It is reccomended to install text editors and other tools using Chocolatey.
After installing, these commands will work:
# Display the version of docker installed:
docker version
# Pull, create, and run 'hello-world':
docker run hello-world
Windows Server 2016 is not able to run Linux images.
Windows Server Build 2004 is capable of running both linux and windows containers simultaneously through Hyper-V isolation. When running containers, use the --isolation=hyperv
command, which will isolate the container using a seperate kernel instance.
Check Version¶
It is very important that you always know the current version of Docker you are currently running on at any point in time. This is very helpful because you get to know what features are compatible with what you have running. This is also important because you know what containers to run from the docker store when you are trying to get template containers. That said let see how to know which version of docker we have running currently.
docker version
shows which version of docker you have running.
Get the server version:
$ docker version --format '{{.Server.Version}}'
1.8.0
You can also dump raw JSON data:
$ docker version --format '{{json .}}'
{"Client":{"Version":"1.8.0","ApiVersion":"1.20","GitCommit":"f5bae0a","GoVersion":"go1.4.2","Os":"linux","Arch":"am"}
Credit¶
Thanks to @wsargent for creating this cheat sheet.