Jan Wagner ревизий этого фрагмента 6 years ago. К ревизии
1 file changed, 6 insertions
docker_deploy.sh
| @@ -18,6 +18,12 @@ service postfix reload && \ | |||
| 18 | 18 | [ -x /usr/sbin/update-grub ] && \ | |
| 19 | 19 | sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapaccount=1 systemd.legacy_systemd_cgroup_controller=yes vsyscall=emulate"/' /etc/default/grub && \ | |
| 20 | 20 | update-grub; \ | |
| 21 | + | # Enable live restore (https://docs.docker.com/config/containers/live-restore/) | |
| 22 | + | cat > /etc/docker/daemon.json <<EOF | |
| 23 | + | { | |
| 24 | + | "live-restore": true | |
| 25 | + | } | |
| 26 | + | EOF | |
| 21 | 27 | # Install docker-compose and bash completion | |
| 22 | 28 | COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$") && \ | |
| 23 | 29 | curl -o /usr/local/bin/docker-compose -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m) && \ | |
Jan Wagner ревизий этого фрагмента 6 years ago. К ревизии
1 file changed, 6 insertions
docker_deploy.sh
| @@ -1,12 +1,16 @@ | |||
| 1 | 1 | #!/bin/bash | |
| 2 | + | # detect release and add package sources | |
| 2 | 3 | [ "$(lsb_release -rs)" = "testing" ] || [ "$(cat /etc/debian_version | awk -F. {'print $1'})" -ne "8" ] && echo exit 1 | |
| 3 | 4 | echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" > \ | |
| 4 | 5 | /etc/apt/sources.list.d/$(lsb_release -cs)-docker.list && \ | |
| 5 | 6 | apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0EBFCD88; \ | |
| 7 | + | # Install needed dependencies | |
| 6 | 8 | aptitude install -y apt-transport-https ca-certificates bridge-utils curl; \ | |
| 7 | 9 | aptitude update; \ | |
| 10 | + | # Install docker and enable it | |
| 8 | 11 | aptitude install -y docker-ce && \ | |
| 9 | 12 | systemctl enable docker && \ | |
| 13 | + | # Allow to relay from local networks (where our containers are running) | |
| 10 | 14 | sed -i 's#127.0.0.0/8#127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16#' /etc/postfix/main.cf && \ | |
| 11 | 15 | service postfix reload && \ | |
| 12 | 16 | # https://gist.github.com/steakknife/9094991#file-run_me_001__install_docker_and_fixes-sh-L20-L22 (enable swap resource limiting) | |
| @@ -14,11 +18,13 @@ service postfix reload && \ | |||
| 14 | 18 | [ -x /usr/sbin/update-grub ] && \ | |
| 15 | 19 | sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapaccount=1 systemd.legacy_systemd_cgroup_controller=yes vsyscall=emulate"/' /etc/default/grub && \ | |
| 16 | 20 | update-grub; \ | |
| 21 | + | # Install docker-compose and bash completion | |
| 17 | 22 | COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$") && \ | |
| 18 | 23 | curl -o /usr/local/bin/docker-compose -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m) && \ | |
| 19 | 24 | [ -d /etc/bash_completion.d/ ] || mkdir -p /etc/bash_completion.d/ && \ | |
| 20 | 25 | curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VER}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose && \ | |
| 21 | 26 | chmod +x /usr/local/bin/docker-compose && \ | |
| 27 | + | # Add some cleanup jobs | |
| 22 | 28 | cat > /etc/cron.weekly/docker-cleanup <<EOF | |
| 23 | 29 | #!/bin/bash | |
| 24 | 30 | # See https://getintodevops.com/blog/keeping-the-whale-happy-how-to-clean-up-after-docker | |
Jan Wagner ревизий этого фрагмента 6 years ago. К ревизии
1 file changed, 1 insertion
docker_deploy.sh
| @@ -16,6 +16,7 @@ sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapacc | |||
| 16 | 16 | update-grub; \ | |
| 17 | 17 | COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$") && \ | |
| 18 | 18 | curl -o /usr/local/bin/docker-compose -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m) && \ | |
| 19 | + | [ -d /etc/bash_completion.d/ ] || mkdir -p /etc/bash_completion.d/ && \ | |
| 19 | 20 | curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VER}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose && \ | |
| 20 | 21 | chmod +x /usr/local/bin/docker-compose && \ | |
| 21 | 22 | cat > /etc/cron.weekly/docker-cleanup <<EOF | |
Jan Wagner ревизий этого фрагмента 6 years ago. К ревизии
1 file changed, 2 insertions, 2 deletions
docker_deploy.sh
| @@ -1,5 +1,5 @@ | |||
| 1 | 1 | #!/bin/bash | |
| 2 | - | [ "$(cat /etc/debian_version | awk -F. {'print $1'})" -ne "8" ] && echo exit 1 | |
| 2 | + | [ "$(lsb_release -rs)" = "testing" ] || [ "$(cat /etc/debian_version | awk -F. {'print $1'})" -ne "8" ] && echo exit 1 | |
| 3 | 3 | echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" > \ | |
| 4 | 4 | /etc/apt/sources.list.d/$(lsb_release -cs)-docker.list && \ | |
| 5 | 5 | apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0EBFCD88; \ | |
| @@ -35,4 +35,4 @@ fi | |||
| 35 | 35 | # garbage collection, see https://github.com/spotify/docker-gc/blob/master/README.md | |
| 36 | 36 | docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro -e MINIMUM_IMAGES_TO_SAVE=2 -e GRACE_PERIOD_SECONDS=432000 spotify/docker-gc | grep -v running | |
| 37 | 37 | EOF | |
| 38 | - | chmod +x /etc/cron.weekly/docker-cleanup | |
| 38 | + | chmod +x /etc/cron.weekly/docker-cleanup | |
waja ревизий этого фрагмента 7 years ago. К ревизии
1 file changed, 2 insertions, 1 deletion
docker_deploy.sh
| @@ -11,8 +11,9 @@ sed -i 's#127.0.0.0/8#127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16#' /etc | |||
| 11 | 11 | service postfix reload && \ | |
| 12 | 12 | # https://gist.github.com/steakknife/9094991#file-run_me_001__install_docker_and_fixes-sh-L20-L22 (enable swap resource limiting) | |
| 13 | 13 | # https://tianon.github.io/post/2017/05/18/docker-setup-redux.html#configure-boot-parameters | |
| 14 | + | [ -x /usr/sbin/update-grub ] && \ | |
| 14 | 15 | sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapaccount=1 systemd.legacy_systemd_cgroup_controller=yes vsyscall=emulate"/' /etc/default/grub && \ | |
| 15 | - | update-grub && \ | |
| 16 | + | update-grub; \ | |
| 16 | 17 | COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$") && \ | |
| 17 | 18 | curl -o /usr/local/bin/docker-compose -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m) && \ | |
| 18 | 19 | curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VER}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose && \ | |
waja ревизий этого фрагмента 7 years ago. К ревизии
1 file changed, 2 insertions
docker_deploy.sh
| @@ -7,6 +7,8 @@ aptitude install -y apt-transport-https ca-certificates bridge-utils curl; \ | |||
| 7 | 7 | aptitude update; \ | |
| 8 | 8 | aptitude install -y docker-ce && \ | |
| 9 | 9 | systemctl enable docker && \ | |
| 10 | + | sed -i 's#127.0.0.0/8#127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16#' /etc/postfix/main.cf && \ | |
| 11 | + | service postfix reload && \ | |
| 10 | 12 | # https://gist.github.com/steakknife/9094991#file-run_me_001__install_docker_and_fixes-sh-L20-L22 (enable swap resource limiting) | |
| 11 | 13 | # https://tianon.github.io/post/2017/05/18/docker-setup-redux.html#configure-boot-parameters | |
| 12 | 14 | sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapaccount=1 systemd.legacy_systemd_cgroup_controller=yes vsyscall=emulate"/' /etc/default/grub && \ | |
waja ревизий этого фрагмента 8 years ago. К ревизии
1 file changed, 1 insertion, 1 deletion
docker_deploy.sh
| @@ -30,6 +30,6 @@ if [ "\${DOCKER_VOLUMES}" != "" ]; then | |||
| 30 | 30 | docker volume rm \${DOCKER_VOLUMES} | |
| 31 | 31 | fi | |
| 32 | 32 | # garbage collection, see https://github.com/spotify/docker-gc/blob/master/README.md | |
| 33 | - | docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro -e MINIMUM_IMAGES_TO_SAVE=2 -e GRACE_PERIOD_SECONDS=432000 spotify/docker-gc | |
| 33 | + | docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro -e MINIMUM_IMAGES_TO_SAVE=2 -e GRACE_PERIOD_SECONDS=432000 spotify/docker-gc | grep -v running | |
| 34 | 34 | EOF | |
| 35 | 35 | chmod +x /etc/cron.weekly/docker-cleanup | |
waja ревизий этого фрагмента 8 years ago. К ревизии
1 file changed, 4 insertions, 1 deletion
docker_deploy.sh
| @@ -25,7 +25,10 @@ cat > /etc/cron.weekly/docker-cleanup <<EOF | |||
| 25 | 25 | # DELETE DANGLING AND UNTAGGED IMAGES | |
| 26 | 26 | # docker images -q -f dangling=true && docker image rm $(docker images -q -f dangling=true) | |
| 27 | 27 | # DELETE ORPHANED AND DANGLING VOLUMES | |
| 28 | - | docker volume ls -qf dangling=true && docker volume rm $(docker volume ls -qf dangling=true) | |
| 28 | + | DOCKER_VOLUMES=\$(docker volume ls -qf dangling=true) | |
| 29 | + | if [ "\${DOCKER_VOLUMES}" != "" ]; then | |
| 30 | + | docker volume rm \${DOCKER_VOLUMES} | |
| 31 | + | fi | |
| 29 | 32 | # garbage collection, see https://github.com/spotify/docker-gc/blob/master/README.md | |
| 30 | 33 | docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro -e MINIMUM_IMAGES_TO_SAVE=2 -e GRACE_PERIOD_SECONDS=432000 spotify/docker-gc | |
| 31 | 34 | EOF | |
waja ревизий этого фрагмента 8 years ago. К ревизии
Без изменений
waja ревизий этого фрагмента 8 years ago. К ревизии
1 file changed, 1 insertion, 1 deletion
docker_deploy.sh
| @@ -13,7 +13,7 @@ sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT="quiet\)"/\1 cgroup_enable=memory swapacc | |||
| 13 | 13 | update-grub && \ | |
| 14 | 14 | COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$") && \ | |
| 15 | 15 | curl -o /usr/local/bin/docker-compose -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m) && \ | |
| 16 | - | curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VERSION}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose && \ | |
| 16 | + | curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VER}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose && \ | |
| 17 | 17 | chmod +x /usr/local/bin/docker-compose && \ | |
| 18 | 18 | cat > /etc/cron.weekly/docker-cleanup <<EOF | |
| 19 | 19 | #!/bin/bash | |