Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Docker and Nginx Deployment on Ubuntu Bionic/Focal, Debian Buster
#!/bin/bash
# upgrades operating system
sudo apt-get update && sudo apt-get upgrade -y
# install docker latest
sudo apt remove docker docker-engine docker.io containerd runc # purging the legacy version if exists
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update && sudo apt install docker-ce docker-ce-cli containerd.io -y
# install docker-compose latest
#curl -L "https://github.com/docker/compose/releases/download/1.27.0/docker-compose-$(uname -s)-$(uname -m)" -o docker-compose
curl -s https://api.github.com/repos/docker/compose/releases/latest \
| grep -v ".sha256" \
| grep browser_download_url \
| grep "docker-compose-$(uname -s)-$(uname -m)" \
| cut -d '"' -f 4 \
| xargs curl -L -o docker-compose
chmod +x docker-compose
sudo mv docker-compose /usr/sbin/ # in case of Bionic or Focal
# add the current non-root user to docker group
sudo groupadd -f docker
sudo usermod -aG docker $USER
sudo docker -v
sudo docker-compose -v
# install nginx latest
echo "
deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ bionic nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ bionic nginx
" | sudo tee /etc/apt/sources.list.d/nginx.list
wget http://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
sudo apt update
sudo apt remove nginx nginx-common nginx-full nginx-core -y
sudo apt install nginx -y
rm *.sh *.key
echo -e "\e[32mPlease reboot your machine .. \e[0m"
@CrazyOptimist

This comment has been minimized.

Copy link
Owner Author

@CrazyOptimist CrazyOptimist commented Sep 18, 2020

Thanks to Aimeri Baddouh, docker compose latest version became free of hard-code, from his comment here.

@CrazyOptimist

This comment has been minimized.

Copy link
Owner Author

@CrazyOptimist CrazyOptimist commented Sep 18, 2020

When installing docker-compose, you can check the system path using echo $PATH
The path differs from distro to another.

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