使用docker搭建gitlab

一.前提准备

1.在服务器/opt/下建立文件夹,用来保存数据

  • /opt/gitlab/mysql/
  • /opt/gitlab/data/

2.三个docker镜像。

github上开源镜像地址https://github.com/sameersbn/docker-gitlab/tree/v8.0.3

  • sameersbn/gitlab:8.0.3
  • sameersbn/redis:latest
  • sameersbn/mysql:latest

3.准备实现HTTPS需要的证书

创建私有key,生成签名需要的CSR,证书签名,提供DHE参数
  • openssl genrsa -out gitlab.key 2048
  • openssl req -new -key gitlab.key -out gitlab.csr
  • openssl x509 -req -days 3650 -in gitlab.csr -signkey gitlab.key -out gitlab.crt
  • openssl dhparam -out dhparam.pem 2048

而后创建文件夹certs,将dhparam.pem,gitlab.crt,gitlab.key放进去。mv文件夹certs到/opt/gitlab/data/下。参考网址:https://github.com/sameersbn/docker-gitlab/tree/v8.0.3#ssl

二.启动镜像

1.启动mysql: 创建用户名:gitlab 密码:xxxxxx。(可以自己修改DB_USER,DB_PASS参数设置)

  • docker run –name=mysql -d -e ‘DB_NAME=gitlabhq_production’ -e ‘DB_USER=gitlab’ -e ‘DB_PASS=xxxxxxxx’ -v /opt/gitlab/mysql:/var/lib/mysql sameersbn/mysql:latest

2.启动redis

  • docker run –name=redis -d sameersbn/redis:latest

3.启动gitlab:为了实现gitlab发送邮件通知自己申请了一个163邮箱,xxxxx@163.com 密码:xxxxxxx,可以用自己的邮件服务器。

  • docker run –name=gitlab -d -p 443:443 -e ‘GITLAB_HTTPS=true’ -e ‘SSL_SELF_SIGNED=true’ -e ‘GITLAB_HOST=git.xxxxxxx.com’ -e ‘GITLAB_PORT=443’ -e ‘GITLAB_EMAIL=xxxxxxx@163.com’ -e ‘GITLAB_EMAIL_REPLY_TO=xxxxxxxx@163.com’ -e ‘SMTP_DOMAIN=163.com’ -e ‘SMTP_HOST=smtp.163.com’ -e ‘SMTP_PORT=25’ -e ‘SMTP_USER=xxxxxxxx@163.com’ -e ‘SMTP_PASS=xxxxxxxxx’ -e ‘NGINX_MAX_UPLOAD_SIZE=256M’ -e ‘GITLAB_SECRETS_DB_KEY_BASE=s9N4pNbKgTJKskJn4rxMfHHXzTNKxprzmJq7pgbLjMMRVTVJM7f3xkFFPdhLpWjK’ -v /opt/gitlab/data:/home/git/data -v /opt/gitlab/mysql:/var/lib/mysql –link mysql:mysql –link redis:redisio sameersbn/gitlab:8.0.3

注:
1.GITLAB_HOST=git.xxxxxxx.com,使用域名访问要修改hosts文件。
2.GITLAB_SECRETS_DB_KEY_BASE参数使用pwgen -Bsv1 64创建一个64位随机字符串,没有默认值必须给出。

三.访gitlab

  • https://ip地址
  • 默认用户名:root
  • 默认密码:5iveL!fe

四.开机自启

在/etc/rc.local,添加命令

  • service start docker
  • docker start redis mysql gitlab

Questions:

  • 1.HTTPS单向认证需要使用openssl生成服务器端证书
  • 2.docker开机自启时,首先确保docker服务已启。/etc/rc.local中加上:
    • service start docker
    • docker start redis mysql gitlab
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值