Skip to content

Instantly share code, notes, and snippets.

@donilan
donilan / docker_cleanup.sh
Last active May 20, 2020 08:31
Clean docker by cronjob
#!/usr/bin/env bash
#write out current crontab
crontab -l > /tmp/mycron
cat << EOF >> /tmp/mycron
# please pay atention, 168h is 7 days, which mean is it only keep the images created in 14 days, other will be removed.
0 0 * * * docker image prune -a --filter "until=$(date +'%Y-%m-%dT%H:%M:%S' --date='-14 days')"
5 0 * * * docker container prune -f
10 0 * * * docker volume prune -f
@donilan
donilan / backup_mysql.sh
Created May 14, 2020 02:09
dump/backup mysql database in docker way
#!/usr/bin/env bash
docker run --rm mysql:5.7 mysqldump \
-uUSERNAME \
-hmysq.example.com \
-pPASSWORD database_name | gzip > /path/to/your/backup/folder/backup_$(date +"%Y%m%d_%H%M%S").sql.gz
# only keep 5 backups
ls -1tr | head -n -5 | xargs -d '\n' rm -f --
@donilan
donilan / configure_cloudwatch_for_docker.sh
Last active May 14, 2020 01:59
Configure CloudWatch for docker on ubuntu
#!/usr/bin/env bash
cat << EOF | sudo tee /etc/systemd/system/docker.service.d/aws-credentials.conf
[Service]
Environment="AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID"
Environment="AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY"
EOF
sudo systemctl daemon-reload
sudo systemctl start docker
@donilan
donilan / docker-compose-with-redmine.yml
Created May 14, 2020 01:49
docker-compose.yml for redmine
version: '3'
services:
reverse-proxy:
image: traefik:v2.2
restart: always
command:
# - "--log.level=DEBUG"
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
@donilan
donilan / install_docker_ce.sh
Last active May 11, 2020 01:51
Install docker ce on centos7
#!/usr/bin/env bash
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
sudo yum makecache fast
@donilan
donilan / update_hostname.sh
Last active May 11, 2020 01:50
Update hostname, before execute this script, please export NEW_HOSTNAME=your.new.domain
#!/usr/bin/env bash
sudo hostname $NEW_HOSTNAME
hostname | sudo tee /etc/hostname
sudo sed -i -e "s/ $(hostname)//g" -e "/127.0.0.1/s/\$/ $(hostname)/" /etc/hosts
@donilan
donilan / create_swap.sh
Created April 24, 2020 04:10
Create swap for centos
#!/usr/bin/env
sudo dd if=/dev/zero of=/swapfile bs=4096 count=1024k && \
sudo chmod 600 /swapfile && \
sudo mkswap /swapfile && \
sudo swapon /swapfile && \
sudo cp /etc/fstab{,.bak} && \
sudo echo "/swapfile swap swap sw 0 0" | \
sudo tee -a /etc/fstab
@donilan
donilan / init_emacs.sh
Created April 22, 2020 05:49
init emacs, no tail file
cat <<EOF > ~/.emacs
(custom-set-variables
'(auto-save-default nil)
'(create-lockfiles nil)
'(make-backup-files nil))
EOF
#!/bin/bash
# Install stuff #
#################
# Install development tools and some misc. necessary packages
yum -y groupinstall "Development tools"
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel mysql-devel libxml2-devel libxslt-devel unixODBC-devel sqlite sqlite-devel -y
# Alias shasum to == sha1sum (will prevent some people's scripts from breaking)
@donilan
donilan / Dockerfile
Last active June 27, 2018 08:05
Mina deploy.rb with Docker-passenger, Pull this docker at registry.aliyuncs.com/doni/passenger if you are work from China.
FROM phusion/passenger-full
# Set correct environment variables.
ENV HOME /root
# Use baseimage-docker's init process.
CMD ["/sbin/my_init"]
EXPOSE 80