Debuginfo

思考とアウトプット

GitlabのバックアップをDropboxにとる方法 on さくらVPS1G, CentOS6.3

VPSのHDDに置いておくのは少し怖いのでdropbox上にバックアップを取っておきます。

過去の記事を参考にdropboxデーモンをVPSにインストール

http://shoheik.hatenablog.com/entry/2012/12/22/101143

backup ディレクトリを作る

$ mkdir -p $HOME/Dropbox/backup/gitlab
# ln -s /home/<user_id>/Dropbox/backup/gitlab /var/dropbox_backup_gitlab

dropbox groupを作って追加する。(backupのディレクトリに777を与えても良いと思う)

$ sudo groupadd dropbox # add dropbox user
$ sudo usermod -G dropbox <user_id> # add the uid into dropbox group

$ sudo chown <uid>:dropbox $HOME/Dropbox/backup/gitlab
$ chmod 775 $HOME/Dropbox/backup/gitlab

Shell scriptを作る

スクリプトにはやっつけ感があるかも。 https://github.com/gitlabhq/gitlabhq/blob/stable/doc/raketasks/backup_restore.mdにbackup方法が記載されている

gitlab $ cat /scripts/backup.sh 
#!/bin/bash

. $HOME/.bashrc
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin

# remove the old one
/bin/rm /var/dropbox_backup_gitlab/*.tar 2>/dev/null; 

# chdir
cd /home/gitlab/gitlab; 

# Take backup
bundle exec rake gitlab:backup:create RAILS_ENV=production

gitlab’s Cronに追加

[gitlab]$ crontab -l
23 23 * * sun    /home/gitlab/scripts/backup.sh 

以上、have fun :)