准备条件:docker已经正常安装
开始pull gitlab的镜像运行:docker pull sameersbn/gitlab:8.15.2
# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE sameersbn/gitlab 8.15.2 8a2cad85cd63 22 hours ago 768.3 MB [\php] 启动: docker run --name gitlab -d --env 'DB_ADAPTER=mysql2' --env 'DB_HOST=192.168.1.200' --env 'DB_NAME=gitlabhq_production' --env 'DB_USER=root' --env 'DB_PASS=000000' --env 'REDIS_HOST=192.168.1.200' --env 'REDIS_PORT=6379' --volume /srv/docker/gitlab/gitlab:/home/git/data --env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' --publish 10022:22 --publish 10080:80 --env 'GITLAB_HOST=git.xinghuiblog.com' --env 'GITLAB_SECRETS_DB_KEY_BASE=123456789' --env 'GITLAB_SECRETS_SECRET_KEY_BASE=123456789' --env 'GITLAB_SECRETS_OTP_KEY_BASE=123456789' sameersbn/gitlab:8.15.2 [\php] nginx 的代理配置 upstream git{ # 域名对应 gitlab配置中的 external_url # 端口对应 gitlab 配置中的 nginx['listen_port'] server 192.168.1.200:10080; } server{ listen 80; # 此域名是提供给最终用户的访问地址 server_name git.uarein.ccc; location / { # 这个大小的设置非常重要,如果 git 版本库里面有大文件,设置的太小,文件push 会失败,根据情况调整 client_max_body_size 50m; proxy_redirect off; #以下确保 gitlab中项目的 url 是域名而不是 http://git,不可缺少 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 反向代理到 gitlab 内置的 nginx proxy_pass http://git; index index.html index.htm; } }
原文链接:docker安装gitlab安装过程,转载请注明来源!