docker 部署gitlab私服
这里以为你已经拥有docker的环境
拉取镜像:社区版gitlab镜像,版本8.17.8
docker pull gitlab/gitlab-ce:8.17.8-ce.0
在宿主机创建文件夹 用来保存gitlab相关配置及数据文件
mkdir -p /cnt/gitlab/etc
mkdir -p /cnt/gitlab/log
mkdir -p /cnt/gitlab/data
启动容器
docker run -d -p 8443:443 -p 8090:8090 --name gitlab --restart unless-stopped -v /cnt/gitlab/etc:/etc/gitlab -v /cnt/gitlab/log:/var/log/gitlab -v /cnt/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:8.17.8-ce.0
-d 表后台运行
-p 端口映射:即把容器的8090端口映射到宿主机的8090端口
--name 为容器起名为gitlab
--restart 重启策略 unless-stopped 无论退出状态如何(包括守护程序启动时),无论退出状态如何,都应始终重新启动容器,除非容器在停止Docker守护程序之前已处于停止状态
-v 目录映射 冒号之前是宿主机目录,之后是容器内目录
配置外网访问:
vi gitlab.rb
####添加外网访问地址,部署机器ip或者域名
external_url 'http://xx.xx.xx.xx:8090'
此时就可以通过ip加端口进行访问了
备份
gitlab-rake gitlab:backup:create
执行完毕后会在gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" 这里配置的文件下生成打包文件
还原:
##保证这个tar文件被git 用户拥有
sudo chown git.git /var/opt/gitlab/backups/11493107454_2018_04_25_10.6.4-ce_gitlab_backup.tar
##还原命令
sudo gitlab-backup restore BACKUP=11493107454_2018_04_25_10.6.4-ce
gitlab文档地址:https://docs.gitlab.com/ee/raketasks/backup_restore.html