2020-09-18 04:16:15 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
DIR=$(readlink -f $(dirname $0))
|
|
|
|
. $DIR/../env.sh
|
|
|
|
|
|
|
|
|
|
|
|
# install docker
|
|
|
|
case "$PM" in
|
|
|
|
apt)
|
2020-09-28 04:07:52 +00:00
|
|
|
# snap docker will intefere native docker.io, must be dealt with
|
|
|
|
sudo snap remove --purge docker
|
2020-09-18 04:16:15 +00:00
|
|
|
sudo apt install -y docker.io docker-compose
|
|
|
|
! which pip3 && $ROOT/python/install.sh
|
|
|
|
sudo pip3 install docker-compose
|
|
|
|
;;
|
|
|
|
pacman)
|
2020-09-18 18:01:58 +00:00
|
|
|
sudo pacman -S --needed docker docker-compose
|
2020-09-18 04:16:15 +00:00
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
sudo systemctl enable docker
|
|
|
|
sudo systemctl start docker
|
|
|
|
|
2020-09-19 01:23:38 +00:00
|
|
|
|
|
|
|
|
2020-09-18 04:16:15 +00:00
|
|
|
# configuration
|
|
|
|
sudo usermod -aG docker $USER
|
2020-09-19 01:23:38 +00:00
|
|
|
|
2020-09-27 10:04:33 +00:00
|
|
|
# completion
|
|
|
|
case "$DEFAULT_SHELL" in
|
2020-10-23 03:46:50 +00:00
|
|
|
$FISH)
|
2020-09-27 10:04:33 +00:00
|
|
|
curl -sLo $HOME/.config/fish/completions/docker.fish --create-dirs \
|
|
|
|
'https://github.com/docker/cli/raw/master/contrib/completion/fish/docker.fish'
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
2020-09-22 04:16:06 +00:00
|
|
|
# set mirror
|
|
|
|
if in-china && [[ -d /etc/docker ]]; then
|
2020-09-19 01:23:38 +00:00
|
|
|
if [ -f /etc/docker/daemon.json ]; then
|
|
|
|
# backup
|
|
|
|
[ ! -f /etc/docker/daemon.bak.json ] && \
|
|
|
|
sudo cp /etc/docker/daemon.json /etc/docker/daemon.bak.json
|
|
|
|
# read
|
|
|
|
dj=$(cat /etc/docker/daemon.json)
|
|
|
|
fi
|
2020-09-22 04:16:06 +00:00
|
|
|
[[ -z $dj ]] && dj='{}'
|
|
|
|
echo $dj | jq '. + {"registry-mirrors": ["https://izuhlbap.mirror.aliyuncs.com"]}' | \
|
|
|
|
sudo tee /etc/docker/daemon.json
|
2020-09-19 01:23:38 +00:00
|
|
|
sudo systemctl restart docker
|
|
|
|
fi
|