Oct 16, 2020 Docker Compose is a Python program that lets you easily deploy multiple containers on a server. As you start exploring Docker, you'll learn that often to run a certain web-app, you'll need to run various services (like database, web-server etc) in different containers. As of version 18.03, you can use host.docker.internal as the host's IP. Works in Docker for Mac, Docker for Windows, and perhaps other platforms as well. This is an update from the Mac-specific docker.for.mac.localhost, available since version 17.06, and docker.for.mac.host.internal, available since version 17.12, which may also still work on that platform.
Docker Compose is a Python program that lets you easily deploy multiple containers on a server.
As you start exploring Docker, you'll learn that often to run a certain web-app, you'll need to run various services (like database, web-server etc) in different containers.
Deploying multiple containers is a lot easier with Docker Compose.
In this tutorial, you'll learn two ways of installing Docker Compose on Ubuntu:
- Installing Docker Compose from Ubuntu's repository: Easier method but may not have the latest version of docker compose
- Installing the latest Docker Compose using PIP: Gets you the newer docker compose version
Keep in mind that to use Docker Compose, you must have Docker installed on Ubuntu.
Install Docker Compose from Ubuntu's repository
This is the easiest and recommend method. Unless you need the latest Docker Compose version for some specific reasons, you can manage very well with the docker compose version provides by Ubuntu.
Docker Compose is available in the universe repository of Ubuntu 20.04 and 18.04 so make sure to enable it first:
You probably won't need it but no harm in updating the local cache:
Now you can install Docker Compose in Ubuntu using this command:
You can check that Docker Compose is installed successfully by checking its version:
It should show an output like this:
Install the latest Docker Compose on Ubuntu using PIP
PIP stands for 'PIP Installs Package'. It's a command-line based package manager for installing Python applications.
Since Docker Compose is basically a Python program, you can use PIP to install it.
Docker Get Docker Shorts
But before you do that, you need to install PIP on Ubuntu first.
Enable the universe repository first.
Install PIP now:
Docker Get Docker Command
Now that you have PIP installed use it to install Docker Compose for all users on your Linux system:
Check the Docker Compose version to ensure that it is installed successfully:
You can see that Docker Compose installed via PIP is more recent version.
I hope you were able to successfully install Docker Compose on Ubuntu with this tutorial. Questions and suggestions are welcome.
Become a Member for FREE
Join the conversation.
Estimated reading time: 5 minutes
Note: You may have been redirected to this page because there is no longera dynamically-linked Docker package for your Linux distribution.
If you want to try Docker or use it in a testing environment, but you’re not ona supported platform, you can try installing from static binaries. If possible,you should use packages built for your operating system, and use your operatingsystem’s package management system to manage Docker installation and upgrades.Be aware that 32-bit static binary archives do not include the Docker daemon.
Static binaries for the Docker daemon binary are only available for Linux (asdockerd
). Static binaries for the Docker client are available for Linux and macOS (as docker
).
This topic discusses binary installation for both Linux and macOS:
Install daemon and client binaries on Linux
Prerequisites
Before attempting to install Docker from binaries, be sure your host machinemeets the prerequisites:
- A 64-bit installation
- Version 3.10 or higher of the Linux kernel. The latest version of the kernelavailable for your platform is recommended.
iptables
version 1.4 or highergit
version 1.7 or higher- A
ps
executable, usually provided byprocps
or a similar package. - XZ Utils 4.9 or higher
- A properly mounted
cgroupfs
hierarchy; a single, all-encompassingcgroup
mountpoint is not sufficient. See Github issues#2683,#3485,#4568).
Secure your environment as much as possible
OS considerations
Enable SELinux or AppArmor if possible.
It is recommended to use AppArmor or SELinux if your Linux distribution supportseither of the two. This helps improve security and blocks certaintypes of exploits. Review the documentation for your Linux distribution forinstructions for enabling and configuring AppArmor or SELinux.
Docker Install Docker
Security Warning
If either of the security mechanisms is enabled, do not disable it as awork-around to make Docker or its containers run. Instead, configure itcorrectly to fix any problems.
Docker daemon considerations
Enable
seccomp
security profiles if possible. SeeEnablingseccomp
for Docker.Enable user namespaces if possible. See theDaemon user namespace options.
Install static binaries
Download the static binary archive. Go tohttps://download.docker.com/linux/static/stable/(or change
stable
tonightly
ortest
),choose your hardware platform, and download the.tgz
file relating to theversion of Docker Engine you want to install.Extract the archive using the
tar
utility. Thedockerd
anddocker
binaries are extracted.Optional: Move the binaries to a directory on your executable path, suchas
/usr/bin/
. If you skip this step, you must provide the path to theexecutable when you invokedocker
ordockerd
commands.Start the Docker daemon:
If you need to start the daemon with additional options, modify the abovecommand accordingly or create and edit the file
/etc/docker/daemon.json
to add the custom configuration options.Verify that Docker is installed correctly by running the
hello-world
image.This command downloads a test image and runs it in a container. When thecontainer runs, it prints an informational message and exits.
Install client binaries on macOS
The macOS binary includes the Docker client only. It does not include thedockerd
daemon.
Download the static binary archive. Go tohttps://download.docker.com/mac/static/stable/x86_64/,(or change
stable
tonightly
ortest
),and download the.tgz
file relating to the version of Docker Engine you wantto install.Extract the archive using the
tar
utility. Thedocker
binary isextracted.Optional: Move the binary to a directory on your executable path, suchas
/usr/local/bin/
. If you skip this step, you must provide the path to theexecutable when you invokedocker
ordockerd
commands.Verify that Docker is installed correctly by running the
hello-world
image. The value of<hostname>
is a hostname or IP address running theDocker daemon and accessible to the client.This command downloads a test image and runs it in a container. When thecontainer runs, it prints an informational message and exits.
Upgrade static binaries
To upgrade your manual installation of Docker Engine, first stop anydockerd
or dockerd.exe
processes running locally, then follow theregular installation steps to install the new version on top of the existingversion.
Docker Get Dockerfile From Image
Next steps
- Continue to Post-installation steps for Linux.
- Take a look at the Get started training modules to learn how to build an image and run it as a containerized application.
- Review the topics in Develop with Docker to learn how to build new applications using Docker.