Docker + gitBucket + Dropboxã§ãƒ—ライベートgithubãªè©±ï¼ ã•ãらVPS
概è¦
Docker上ã§gitBucketコンテナを動ã‹ã—ã¦ï¼ŒgitBucketã®ãƒ‡ãƒ¼ã‚¿ç½®ãå ´ã‚’Dropboxã«ã™ã‚‹è©±ï¼Ž
環境ã¯ï¼ŒCentOS6.5ãªã•ãらVPS.
プライベートgithubçš„ãªã‚„ã¤ã‚’ã¤ãã‚ã†ï¼
経緯
ã•ãらVPSを借りã¦ã„ã‚‹ã‚“ã ã‘ã©ï¼Œæœ€è¿‘ã¯ã„ã‚ã„ã‚ã¨ä¾¿åˆ©ãªã‚µãƒ¼ãƒ“スãŒã‚ã£ã¦ï¼Œæ£ç›´å…¨ç„¶ä½¿ã†æ©Ÿä¼šãŒãªããªã£ã¦ã‚‹ï¼Ž
一方ã§ï¼Œgithubã®ãƒ—ライベートリãƒã‚¸ãƒˆãƒªãŒä½¿ã„ãŸãã¦æœˆé¡èª²é‡‘ã—ã¦ã„ã‚‹ã‚“ã ã‘ã©ï¼Œã“ã‚ŒãŒåœ°å‘³ã«ç—›ã„.bitBucketã¨ã‹ï¼Œgitlabã¨ã‹å¾®å¦™ã«ä½¿ã„ã¥ã‚‰ã„ã‹ã‚‰ã—ょã†ãŒãªã„ã‹ã¨æ€ã£ã¦ãŸã‚“ã ã‘ã©ï¼Œæœ€è¿‘gitBucketã¨ã„ã†githubクãƒãƒ¼ãƒ³ãŒçµæ§‹ã„ã„æ„Ÿã˜ãªã“ã¨ã‚’知ã£ãŸï¼Ž
ãã‚“ã§ï¼ŒgitBucketã®DockerイメージãŒDockerHubã«ã‚ã£ãŸã®ã§ï¼Œã•ãらVPSã«Dockerå°Žå…¥ã—よã†ã¨æ€ã£ãŸï¼Ž
環境移行ã™ã‚‹ã¨ãã®ãƒ©ã‚¯ã•ã‚‚考ãˆã¦ï¼Œãƒ‡ãƒ¼ã‚¿ã¯Dropboxã«ç½®ãã“ã¨ã«ã—ãŸï¼Ž
環境
CentOS 6.5(kernel 2.6.32-431.11.2.el6.x86_64)
ã•ãら借りãŸæ™‚ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã ã£ãŸã‚„ã¤ã§ã™ï¼Ž
事å‰æº–備:dropboxã¨ã®é€£æº
dropboxをサーãƒã§ä½¿ãˆã‚‹ã‚ˆã†ã«ã—ã¦ãŠã.例ãˆã°ã“ã®æ–¹ã®ãƒ–ãƒã‚°ãªã©ãŒå‚考ã«ãªã‚Šãã†ã ã¨æ€ã†ï¼Ž
Dockerã‚’ã„れる
ã“ã®ã¸ã‚“ã¯å…¬å¼ã®æ‰‹é †ã©ãŠã‚Šã«ã„ã.
yumを使ã†ã¨1.5.0ãŒå…¥ã‚‹ã®ã§ï¼Œæœ€æ–°ç‰ˆãŒæ¬²ã—ã‘ã‚Œã°yumを使ã‚ãªã„方法ãŒå…¬å¼ã«è¼‰ã£ã¦ã‚‹ã®ã§ãれをå‚考ã«ã™ã‚‹ï¼Ž
# docker ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ« $ sudo yum install device-mapper-event-libs $ sudo yum -y remove docker $ sudo yum install docker-io # dockeråˆæœŸè¨å®š $ sudo service docker start $ sudo chkconfig docker on # sudoã—ãªãã¦ã„ã„よã†ã«dockerグループã«è¿½åŠ $ sudo usermod -aG docker user $ exit # å‹•ä½œç¢ºèª $ docker info
gitBucketã‚’Dropboxã«ãƒ‡ãƒ¼ã‚¿ç½®ãよã†ã«è¨å®šã—ã¦èµ·å‹•ã™ã‚‹
以下ã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡Œã†ï¼Žã“ã®ã‚³ãƒžãƒ³ãƒ‰ã ã¨8080ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã¨gitbucketã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãる.
デフォルトユーザã¯ï¼ŒIDパスã¨ã‚‚ã«root.ã‚ã¨ã¯ãµã¤ãƒ¼ã®githubã¿ãŸã„ã«ä½¿ãˆã‚‹ï¼Ž
# gitbucket用ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’Dropboxã«ä½œã‚‹ï¼Ž $ cd Dropbox $ mkdir gitbucket # Dropboxã¨ç´ä»˜ã‘ã¦gitbucketコンテナを起動ã™ã‚‹ $ docker run -d -p 8080:8080 -v /home/user/Dropbox/gitbucket:/gitbucket sken/gitbucket
ãŠã¾ã‘:githubã‹ã‚‰ãƒªãƒã‚¸ãƒˆãƒªã‚’移行ã™ã‚‹
ã“ã®æ–¹ã®ãƒ–ãƒã‚°ã‚’å‚考ã«ã—ãŸï¼Ž githubã‹ã‚‰ãƒªãƒã‚¸ãƒˆãƒªã‚’ã¾ã‚‹ã£ã¨å–ã£ã¦ãる.タグã¨ã‹ãƒ–ランãƒã‚‚ãã®ã¾ã¾ã‚‚ã£ã¦ã“れる.
# githubã‹ã‚‰è©²å½“リãƒã‚¸ãƒˆãƒªã‚’手元ã«ãƒŸãƒ©ãƒ¼ã‚ªãƒ—ションã§ã‚¯ãƒãƒ¼ãƒ³ $ git clone --mirror <SOURCE_REPOSITORY_URL> $ cd <REPOSITORY> # gitBucketã§ç§»è¡Œå…ˆãƒªãƒã‚¸ãƒˆãƒªã‚’作ã£ã¦ãŠã.ミラーオプションã¤ã‘ã¦ãƒ—ッシュ. $ git push --mirror <DESTINATION_REPOSITORY_URL>