上饶之窗网(Docker部署Gitlab实现ssl访问)

上饶之窗网:GitLab 是由 GitLab Inc.开发,一款基于 Git 的完全集成的软件开发平台(fully 集成软件 development platform)。另外,GitLab 且具有wiki以及在线编辑、issue跟踪功能、CI/CD 等功能。

上饶之窗网
上饶之窗网

1、部署Gitlab

1)创建gitlab目录结构

[root@localhost ~]# cd /srv/
[root@localhost ~]# mkdir gitlab
[root@localhost ~]# mkdir gitlab-compose

2)编写docker-compose.yml文件

[root@localhost ~]# cd gitlab-compose/
[root@localhost gitlab-compose]# vim docker-compose.yml
version: '3'
services:
  web:
    image: gitlab/gitlab-ce:14.0.2-ce.0
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'https://gitlab.Linuxer.org'
        nginx['enable'] = true
        nginx['redirect_http_to_https'] = true
        nginx['ssl_certificate'] = "/etc/gitlab/ssl/6053171_gitlab.Linuxer.org"
        nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/6053171_gitlab.Linuxer.org"
        gitlab_rails['time_zone'] = 'Asia/Shanghai'
    ports:
      - 10.11.10.102:80:80
      - 10.11.10.102:22:22
      - 10.11.10.102:443:443
    volumes:
      - /srv/gitlab/data:/var/opt/gitlab
      - /srv/gitlab/config:/etc/gitlab
      - /srv/gitlab/logs:/var/log/gitlab
[root@localhost gitlab-compose]# docker-compose up -d

3)重置您的root密码

root@gitlab:/# gitlab-rails console -e production
#要重置您的root密码,请首先使用root特权登录到服务器。使用以下命令启动Ruby on Rails控制台
irb(main):001:0> user = User.where(id: 1).first
#等待控制台加载完毕,有多种找到用户的方法,您可以搜索电子邮件或用户名
=> #<User id:1 @root>
irb(main):002:0> user.password = 'csVTCChiabf*Kah'
=> "csVTCChiabf*Kah"
irb(main):003:0> user.password_confirmation = 'csVTCChiabf*Kah'
=> "csVTCChiabf*Kah"
irb(main):004:0> user.save!
#重要的是,您必须同时更改密码和password_confirmation才能使其正常工作,别忘了保存更改

2、配置HTTPS

[root@localhost ~]# ls  /srv/gitlab/config/ssl/
6053171_gitlab.Linuxer.org.key  6053171_gitlab.Linuxer.org.pem  intern.gitlab.inboc.net.crt  intern.gitlab.inboc.net.key  intern.gitlab.inboc.net.key-staging
#将SSL证书上传到/srv/gitlab/config/ssl/目录下
[root@localhost ~]# docker exec -it gitlab-compose_web_1 /bin/bash
root@gitlab:/# gitlab-ctl reconfigure
#进入到gitlab容器,重新加载配置文件

3、集成LDAP

[root@localhost ~]# vim /srv/gitlab/config/gitlab.rb
gitlab_rails['ldap_enabled'] = true
gitlab_rails['prevent_ldap_sign_in'] = false

###! **remember to close this block with 'EOS' below**
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
   main: # 'main' is the GitLab 'provider ID' of this LDAP server
     label: 'LDAP'
     host: '10.11.10.1'
     port: 389
     uid: 'sAMAccountName'
     bind_dn: 'Administrator@inboc.net'
     password: 'xxxx'
     #此处为域管理员的密码,隐藏
     encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
     verify_certificates: true
#     smartcard_auth: false
     active_directory: true
     allow_username_or_email_login: false
     lowercase_usernames: false
     block_auto_created_users: false
     base: 'dc=inboc,dc=net'
     user_filter: '(&(|(objectclass=person))(|(|(memberof=CN=智能分析师,OU=智能分析师,OU=Intern,DC=linuxer,DC=org))))'
#     ## EE only
     group_base: ''
     admin_group: ''
     sync_ssh_keys: false
...省略部分注释内容...
EOS
[root@InternTools ~]# docker exec -it gitlab-compose_web_1 bash
root@e22da09b58c1:/# gitlab-ctl reconfigure
root@e22da09b58c1:/# gitlab-rake gitlab:ldap:check
本文《上饶之窗网(Docker部署Gitlab实现ssl访问)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

SEO教程
站长导航
网站内容优化
GEO培训
站长导航
友情链接交换
搜素引擎算法
关键词排名优化

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/25007.html