Skip to content

Instantly share code, notes, and snippets.

@npearce
Last active October 2, 2023 11:07
Star You must be signed in to star a gist
Embed
What would you like to do?
Amazon Linux 2 - install docker & docker-compose using 'sudo amazon-linux-extras' command

UPDATE (March 2020, thanks @ic): I don't know the exact AMI version but yum install docker now works on the latest Amazon Linux 2. The instructions below may still be relevant depending on the vintage AMI you are using.

Amazon changed the install in Linux 2. One no-longer using 'yum' See: https://aws.amazon.com/amazon-linux-2/release-notes/

Docker CE Install

sudo amazon-linux-extras install docker
sudo service docker start
sudo usermod -a -G docker ec2-user

Make docker auto-start

sudo chkconfig docker on

Because you always need it....

sudo yum install -y git

Reboot to verify it all loads fine on its own.

sudo reboot

docker-compose install

Copy the appropriate docker-compose binary from GitHub:

sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

NOTE: to get the latest version (thanks @spodnet): sudo curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

Fix permissions after download:

sudo chmod +x /usr/local/bin/docker-compose

Verify success:

docker-compose version

@Showrin
Copy link

Showrin commented Mar 8, 2023

Thank you.

@fefogarcia
Copy link

This saved me, thank you

@Geczy
Copy link

Geczy commented Apr 27, 2023

@vincenthsh 's solution worked for me as sudo

@MarwenAouiti
Copy link

MarwenAouiti commented May 29, 2023

wget https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)
sudo mv docker-compose-$(uname -s)-$(uname -m) /usr/local/bin/docker-compose
sudo chmod -v +x /usr/local/bin/docker-compose

@sahilsheikh-dev
Copy link

sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

Note:
For me, uname -s returned Linux, but the download URL has linux so please replace it.
Also, uname -m returned x86_64 so replace that as well

Example:
sudo curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

@AustinGilkison
Copy link

Had an issue around the permissions command.
sudo usermod -a -G docker ec2-user

permission denied while trying to connect to the Docker daemon socket at .....

This seemed to be the fix:
sudo usermod -aG docker $USER

@OlliKantola
Copy link

Works like a charm. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment