Install Docker Engine and Compose on Linux machines (for developers)
Install docker:
Know the linux architecture type using
uname -m
mkdir -p $HOME/tools/docker_engine
Download latest static binary from https://download.docker.com/linux/static/stable/ to $HOME/tools/docker_engine
sudo groupadd docker
sudo gpasswd -a ${USER} docker
newgrp docker
find $HOME/tools/docker_engine -type f -name docker-*.tar.gz | xargs -I {} mv {} $HOME/tools/docker_engine/docker-engine.tar.gz
tar -xvzf $HOME/tools/docker_engine/docker-engine.tar.gz -C $HOME/tools/docker_engine
chmod a+rwx -R $HOME/tools/docker_engine/*
ls -1 $HOME/tools/docker_engine/docker | xargs -I{} sudo ln -sfn $HOME/tools/docker_engine/docker/{} /usr/bin/{}
Start docker service manually in the foreground
sudo dockerd
press Ctrl+C to stop/kill the docker engine
Start docker service manually in the background
sudo su
nohup dockerd > /dev/null 2>&1 &
exit
Kill the docker service running in the background
sudo ps -Aef | grep dockerd | grep -v grep | tr -s ' ' | cut -d' ' -f2 | xargs sudo kill -9
Clean up dockerd logs and data
sudo rm -rf /var/lib/docker
Install docker compose:
mkdir -p $HOME/tools/docker_compose
mkdir -p $HOME/.docker/cli-plugins
Download latest version from https://github.com/docker/compose/releases to $HOME/tools/docker_compose
cp $HOME/tools/docker_compose/docker-compose-linux-x86_64 $HOME/.docker/cli-plugins/docker-compose
chmod a+rwx $HOME/.docker/cli-plugins/docker-compose
sudo ln -sfn $HOME/.docker/cli-plugins/docker-compose /usr/bin/docker-compose
After making these changes, restart or reboot the Linux machine for the changes to take effect
Verify docker and compose installation:
Pull and run images without sudo:
Setup docker engine as a service on startup
Create a script file with following content to start dockerd:
Create a script file to shutdown dockerd:
sudo nano /usr/bin/shutdown-dockerd.sh#!/bin/bash
pkill dockerd
exit 0
Make the script file executable for all users:
sudo chmod a+x /usr/bin/startup-dockerd.shsudo chmod a+x /usr/bin/shutdown-dockerd.sh
Comments
Post a Comment