Docker 下安装

1)创建 docker-compose.yml 内容:

web:
  image: 'gitlab/gitlab-ce:latest'
  restart: always
  hostname: 'git.xxxx.com'
  environment:
    GITLAB_OMNIBUS_CONFIG: |
      external_url 'http://git.xxxx.com'
  ports:
    - '8084:80'
    - '8083:443'
    - '8022:22'
  volumes:
    - '/mnt/gitlab/config:/etc/gitlab'
    - '/mnt/gitlab/logs:/var/log/gitlab'
    - '/mnt/gitlab/data:/var/opt/gitlab'

2)运行 docker-compose up 

3)  备份迁移

https://docs.gitlab.com/omnibus/docker/

scp -r root@ip:[/mnt/gitlab] [path]

sudo docker run  \
  --hostname git.xxxx.com \
  --publish 8443:443 --publish 8084:80 --publish 8022:22 \
  --name gitlab \
  --restart always \
  --volume /mnt/gitlab/config:/etc/gitlab \
  --volume /mnt/gitlab/logs:/var/log/gitlab \
  --volume /mnt/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

手动安装 

1、添加gitlab镜像 

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm

 2、安装gitlab 安装命令

rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

gitlab 搭建_vim

3、修改gitlab配置文件指定服务器ip和自定义端口

修改gitlab.rb文件:

vim /etc/gitlab/gitlab.rb

external_url 'http://localhost:8085'
 
gitlab_rails['webhook_timeout'] = 90  #默认10s

gitlab_rails['git_timeout'] = 90 #默认10s
 
# 下方两个端口需一致
unicorn['port'] = 8087
gitlab_workhorse['auth_backend'] = "http://localhost:8087"

修改unicorn.rb文件:

vim  /var/opt/gitlab/gitlab-rails/etc/unicorn.rb

listen "127.0.0.1:8085", :tcp_nopush => true   ## 端口和gitlab 文件对应

4、重置并启动GitLab

gitlab-ctl reconfigure

gitlab-ctl restart  

5、卸载

rpm -e gitlab-ce

ps aux | grep gitlab

find / -name gitlab|xargs rm -rf

# 查询如果存在gitlab进程,直接kill
ps -ef | grep gitlab | xargs kill -s 9 

其他

#查看PostgreSQL版本
/opt/gitlab/embedded/bin/psql --version

#查看gitlab的版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

修改nginx配置防止出现缓存区错误  Git报错Error:RPC failed; curl 18 transfer closed with outstanding read data remaining

proxy_buffer_size 100m;
proxy_buffers   4 100m;
proxy_busy_buffers_size 100m;