{"id":3109,"date":"2017-06-07T10:00:34","date_gmt":"2017-06-07T01:00:34","guid":{"rendered":"https:\/\/www.sria.co.jp\/blog\/?p=3109"},"modified":"2017-06-06T12:48:01","modified_gmt":"2017-06-06T03:48:01","slug":"3109","status":"publish","type":"post","link":"https:\/\/www.sria.co.jp\/blog\/2017\/06\/3109\/","title":{"rendered":"GitLab \u3092\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3059\u308b"},"content":{"rendered":"<p>GitLab \u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306f\u7c21\u5358\u3067\u30b3\u30de\u30f3\u30c9\u3092\u53e9\u304f\u3060\u3051\u3067\u3059\u3002<\/p>\n<h3>GitLab\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306e\u53d6\u308a\u65b9<\/h3>\n<p><a href=\"https:\/\/docs.gitlab.com\/ee\/raketasks\/backup_restore.html\">https:\/\/docs.gitlab.com\/ee\/raketasks\/backup_restore.html<\/a><\/p>\n<p>\u306b\u66f8\u3044\u3066\u3042\u308b\u3068\u304a\u308a\u3001<\/p>\n<pre class=\"\">sudo gitlab-rake gitlab:backup:create<\/pre>\n<p class=\"\">\u3092\u5b9f\u884c\u3059\u308b\u3068 <code>\/var\/opt\/gitlab\/backups\/<\/code> \u306b\u6b21\u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u540d\u3067\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"\">1496023938_2017_05_29_gitlab_backup.tar<\/pre>\n<h3>GitLab\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u8a2d\u5b9a<\/h3>\n<p class=\"\">\u4f8b\u3048\u3070\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306f7\u65e5\u9593\u3060\u3051\u7dad\u6301\u3057\u305f\u3044\u3068\u3044\u3046\u3053\u3068\u3067\u3042\u308c\u3070\u3001 <code>\/etc\/gitlab\/gitlab.rb<\/code> \u3092\u7de8\u96c6\u3057\u3066\u6b21\u306e\u3088\u3046\u306b\u3057\u307e\u3059\u3002\u5358\u4f4d\u306f\u79d2\u306a\u306e\u3067\u3001<code>60*60*24*7<\/code>\u3068\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"\">gitlab_rails['backup_keep_time'] = 604800<\/pre>\n<p class=\"\">\u7de8\u96c6\u5f8c<code>sudo gitlab-ctl reconfigure<\/code>\u3092\u5b9f\u884c\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u307e\u3059\u3002reconfigure\u3092\u5b9f\u884c\u3059\u308b\u969b\u3001<code>\/opt\/gitlab\/embedded\/service\/gitlab-rails\/config\/gitlab.yml<\/code>\u3092\u624b\u52d5\u3067\u7de8\u96c6\u3057\u3066\u3044\u308b\u5834\u5408\u3001\u4e0a\u66f8\u304d\u3055\u308c\u307e\u3059\u306e\u3067\u3054\u6ce8\u610f\u4e0b\u3055\u3044\u3002<\/p>\n<h3>GitLab\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3092\u6bce\u65e5\u81ea\u52d5\u5b9f\u884c\u3059\u308b<\/h3>\n<p class=\"\">cron \u3067\u5b9a\u671f\u7684\u306b\u5b9f\u884c\u3059\u308c\u3070\u3001\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u304c\u5148\u307b\u3069\u306e<code>\/var\/opt\/gitlab\/backups\/<\/code> \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002cron\u3067\u6bce\u65e5\u5348\u524d2\u6642\u306b\u8a2d\u5b9a\u3059\u308b\u4f8b\u3092\u3042\u3052\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"\">0 2 * * * \/opt\/gitlab\/bin\/gitlab-rake gitlab:backup:create CRON=1<\/pre>\n<p class=\"\">\u3059\u308b\u3068\u3001\u6307\u5b9a\u3057\u305f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\uff08\u898f\u5b9a\u3067\u306f<code>tmp\/backups\/<\/code>) \u306b\u6b21\u306e\u3088\u3046\u306b\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002\u53e4\u3044\u30d5\u30a1\u30a4\u30eb\u306f\u5148\u307b\u3069\u306e\u8a2d\u5b9a\u306b\u3088\u308a\u81ea\u52d5\u3067\u5ec3\u68c4\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"\">1496163626_2017_05_31_gitlab_backup.tar\r\n1496250028_2017_06_01_gitlab_backup.tar\r\n1496336427_2017_06_02_gitlab_backup.tar\r\n1496422826_2017_06_03_gitlab_backup.tar\r\n1496509227_2017_06_04_gitlab_backup.tar\r\n1496595626_2017_06_05_gitlab_backup.tar\r\n1496682027_2017_06_06_gitlab_backup.tar<\/pre>\n<h3>\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3092\u5225\u30b5\u30fc\u30d0\u30fc\u306b\u8907\u88fd\u3059\u308b<\/h3>\n<p class=\"\">\u30b5\u30fc\u30d0\u30fc1\u3064\u3060\u3051\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3067\u306fBCP\u7684\u306b\u4e0d\u5b89\u3067\u3059\u306e\u3067\u3001\u3053\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3054\u3068\u4ed6\u306e\u30b5\u30fc\u30d0\u30fc\u3068\u540c\u671f\u3059\u308b\u3068\u826f\u3044\u3068\u601d\u3044\u307e\u3059\u3002AWS s3\u306a\u3069\u306e\u30af\u30e9\u30a6\u30c9\u306b\u3082\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u53ef\u80fd\u3067\u3059\u3002<\/p>\n<p class=\"\">\u5f0a\u793e\u3067\u306f\u793e\u5185\u306eWindows Server\u306b\u30bf\u30b9\u30af\u30b9\u30b1\u30b8\u30e5\u30fc\u30e9\u30fc\u304b\u3089winscp\u3092\u4f7f\u7528\u3057\u3066\u540c\u671f\u3057\u3066\u3044\u307e\u3059\u3002<code>synchronize local -delete<\/code>\u306e\u3088\u3046\u306b\u3059\u308b\u3068\u30ea\u30e2\u30fc\u30c8\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3068\u540c\u3058\u69cb\u6210\u306b\u306a\u308a\u3001\u30ea\u30e2\u30fc\u30c8\u306e\u30b5\u30fc\u30d0\u30fc\u3067\u6d88\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30eb\u306f\u30ed\u30fc\u30ab\u30eb\u304b\u3089\u540c\u69d8\u306b\u6d88\u3057\u3066\u304f\u308c\u308b\u306e\u3067\u3001\u826f\u3044\u611f\u3058\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p class=\"\">s3 \u306a\u3069\u306b\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3059\u308b\u5834\u5408\u306e\u6ce8\u610f\u70b9\u306f\u3001\u5148\u307b\u3069\u306e `backup_keep_time` \u306f\u6709\u52b9\u306b\u306a\u3089\u306a\u3044\u306e\u3067\u3001<a href=\"https:\/\/stackoverflow.com\/questions\/37553070\/gitlab-omnibus-delete-backup-from-amazon-s3\">s3\u306e\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30dd\u30ea\u30b7\u30fc\u3067\u7ba1\u7406\u3059\u308b<\/a>\u3068\u826f\u3044\u3067\u3059\u3002<\/p>\n<h3>\u307e\u3068\u3081<\/h3>\n<p>GitLab\u3092\u793e\u5185\u30b5\u30fc\u30d0\u30fc\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u4f7f\u7528\u3057\u3066\u3044\u308b\u65b9\u306f\u3001\u30b5\u30fc\u30d0\u30fc\u306e\u969c\u5bb3\u306a\u3069\u3067\u4f7f\u7528\u51fa\u6765\u306a\u304f\u306a\u308b\u3068\u56f0\u308b\u306e\u3067\u3001\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3092\u662f\u975e\u53d6\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GitLab \u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306f\u7c21\u5358\u3067\u30b3\u30de\u30f3\u30c9\u3092\u53e9\u304f\u3060\u3051\u3067\u3059\u3002 GitLab\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306e\u53d6\u308a\u65b9 https:\/\/docs.gitlab.com\/ee\/raketasks\/backup_restore.html \u306b\u66f8\u3044\u3066&#8230;<\/p>\n","protected":false},"author":5,"featured_media":2879,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8],"tags":[136],"_links":{"self":[{"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/posts\/3109"}],"collection":[{"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/comments?post=3109"}],"version-history":[{"count":5,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/posts\/3109\/revisions"}],"predecessor-version":[{"id":3228,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/posts\/3109\/revisions\/3228"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/media\/2879"}],"wp:attachment":[{"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/media?parent=3109"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/categories?post=3109"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sria.co.jp\/blog\/wp-json\/wp\/v2\/tags?post=3109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}