gitlab docker安装配置ldap

gitlab docker安装配置ldap

镜像下载

直接从dockerhub 下载官方镜像即可

docker pull gitlab/gitlab-ce

首次运行

在某个位置创建一个文件夹并运行如下命令:

docker run --hostname example.com -p 0.0.0.0:8443:443 -p 0.0.0.0:8080:80 -p 0.0.0.0:8022:22 --name gitlab -v $(pwd)/config:/etc/gitlab -v $(pwd)/logs:/var/log/gitlab -v $(pwd)/data:/var/opt/gitlab gitlab/gitlab-ce:latest

需要注意的是,这里的端口需要加上0.0.0.0才能提供给外部访问。

运行完成后,会在config下面生成gitlab.rb

设置ldap

编辑config目录下面的gitlab.rb,然后重新运行docker容器。

gitlab_rails['ldap_enabled'] = true

###! **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: 'ldap.host.com'
    port:389
    uid: 'uid' # 这里是个很坑的地方,在这里,用的是ldap的uid字段作为用户登录名,所以直接写了uid,换句话说,冒号前面的uid跟ldap不是一个意思的。
    bind_dn: 'cn=admin,dc=domain,dc=cn'
    password: 'password'
    encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
    verify_certificates: false # 如果用的证书是自签名的,那么这里需要设置为false以保证不会出现服务器证书验证错误。
    ca_file: ''
    ssl_version: ''
    active_directory: false # 我用的slapd,如果用微软的ad,这里需要设置为true
    allow_username_or_email_login: false
    block_auto_created_users: false
    base: 'ou=person,dc=domain,dc=cn' # 这里设置用户名查找位置
    user_filter: '' # 这里可以设置过滤规则,包括memberof操作符也可以用。
    attributes:
      username: ['uid', 'userid', 'sAMAccountName']
      email:    ['mail', 'email', 'userPrincipalName']
      name:      'cn'
      first_name: 'givenName'
      last_name:  'sn'
    ## EE only
    group_base: ''
    admin_group: ''
    sync_ssh_keys: false
EOS

其他设置

smtp设置,禁止注册,权限设置等等。

posted on 2017-10-09 16:12 dwSun 阅读(...) 评论(...) 编辑 收藏

好的,下面是 GitLab Docker安装步骤: 1. 确保已安装 DockerDocker Compose,可以在命令行输入以下命令进行检查: ``` docker --version docker-compose --version ``` 2. 创建 GitLab 相关目录和配置文件。在命令行中输入以下命令: ``` sudo mkdir -p /srv/gitlab/config /srv/gitlab/data /srv/gitlab/logs sudo touch /srv/gitlab/docker-compose.yml /srv/gitlab/config/gitlab.rb ``` 3. 在 `docker-compose.yml` 文件中添加以下内容: ``` version: '3' services: web: image: 'gitlab/gitlab-ce:latest' restart: always hostname: 'gitlab.example.com' environment: GITLAB_OMNIBUS_CONFIG: | external_url 'http://gitlab.example.com' gitlab_rails['gitlab_shell_ssh_port'] = 22 gitlab_rails['lfs_enabled'] = true gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.gmail.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "your.email@gmail.com" gitlab_rails['smtp_password'] = "your-email-password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false ports: - '80:80' - '443:443' - '22:22' volumes: - '/srv/gitlab/config:/etc/gitlab' - '/srv/gitlab/logs:/var/log/gitlab' - '/srv/gitlab/data:/var/opt/gitlab' ``` 其中,`hostname` 是你 GitLab 访问地址,`external_url` 是你 GitLab 的访问 URL,需要根据实际情况进行修改。 4. 在 `gitlab.rb` 文件中添加以下内容: ``` gitlab_rails['smtp_address'] = "smtp.gmail.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "your.email@gmail.com" gitlab_rails['smtp_password'] = "your-email-password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false ``` 其中,`smtp_address` 和 `smtp_port` 是 SMTP 服务器的地址和端口号,`smtp_user_name` 和 `smtp_password` 是发送邮件所用的邮箱地址和密码,需要根据实际情况进行修改。 5. 在命令行中切换到 `docker-compose.yml` 所在目录,运行以下命令启动 GitLab: ``` sudo docker-compose up -d ``` 6. 执行完上述命令后,GitLab 即可在本地运行,可以通过访问 `http://gitlab.example.com` 进行访问,账号为默认 `root`,密码见命令行输出日志。 希望以上步骤可以帮到您,如有问题或疑问可以随时向我提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_dwSun_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值