Use our script:
wget -qO- https://techoverflow.net/scripts/install-docker.sh | sudo bash /dev/stdin
After that, logout and login (or close your SSH session and re-connect) (else, you will only be able to run the docker
client as root – see Solving Docker permission denied while trying to connect to the Docker daemon socket)
Or do it manually:
Copy and paste these command blocks into your Linux shell. You need to copy & paste one block at a time – you can paste the next block once the previous block is finished!
# Install prerequisites sudo apt-get update sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# Add docker's package signing key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # Add repository sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" # Install latest stable docker stable version sudo apt-get update sudo apt-get -y install docker-ce
# Install docker-compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.10.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod a+x /usr/local/bin/docker-compose # Enable & start docker sudo systemctl enable docker sudo systemctl start docker
Note that this will install Docker as deb package whereas docker-compose will be downloaded to /usr/local/bin
.
In case you intend to use docker under your normal user account (i.e. without sudo), you might want to add that user to the docker
group (we recommend you do this):
sudo usermod -a -G docker $USER
This settings requires that you logout and log back in (or completely terminate your SSH session and open a new SSH session) in order to take effect.
In case that does not work and you still get permission denied
error messages try rebooting your computer.
In order to check if your user is currently a member of the docker groups, run
groups
Example output:
uli adm tty lp uucp dialout cdrom sudo dip plugdev lpadmin sambashare vboxusers lxd docker
These are the groups your user currently belongs to (as said before, changes only take effect after logging out and logging back in or terminating and re-opening your SSH session). If docker
is listed in the output of groups
(tip: it’s typically near the end in case you have just added it!), you should be able to access the docker socket. See the Background information section of Solving Docker permission denied while trying to connect to the Docker daemon socket for more details on docker sockets and their permissions.