赞
踩
Git是程序员最常用的代码管理工具。
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
# 官方提供的命令,可供参考 sudo docker run --detach \ --hostname gitlab.example.com \ --env GITLAB_OMNIBUS_CONFIG="external_url 'http://my.domain.com/'; gitlab_rails['lfs_enabled'] = true;" \ --publish 443:443 --publish 80:80 --publish 22:22 \ --name gitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ce:latest # 指定访问IP地址(亲测可用) sudo docker run --detach \ --hostname gitlab.mylitboy.com \ --env GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.mylitboy.com/'; gitlab_rails['lfs_enabled'] = true;" \ --publish 192.168.32.205:443:443 \ --publish 192.168.32.205:80:80 \ --publish 192.168.32.205:8022:22 \ --name mygitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ee:latest # 不指定IP地址访问,推荐(未测) sudo docker run --detach \ --hostname gitlab.mylitboy.com \ --env GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.mylitboy.com/'; gitlab_rails['lfs_enabled'] = true;" \ --publish 0.0.0.0:443:443 \ --publish 0.0.0.0:80:80 \ --publish 0.0.0.0:8022:22 \ --name mygitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ee:latest
待Gitlab启动完成后,打开http://localhost
即可访问,第一步配置password
,后续登录,用户名为root
(可登录后修改)。
编辑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: '192.168.32.203' # Ldap Address port: 389 uid: 'uid' # Ldap user id bind_dn: 'cn=admin,dc=marssenger,dc=com' # Admin Login dn password: 'hxrhxr123' # Admin Login password encryption: 'plain' # "start_tls" or "simple_tls" or "plain" verify_certificates: true # if use custom cert , choose false smartcard_auth: false active_directory: true allow_username_or_email_login: false # if use username and email login lowercase_usernames: false block_auto_created_users: false base: 'ou=users,dc=marssenger,dc=com' # user model ou user_filter: '(objectClass=person)' # user filter class ## EE only group_base: '' admin_group: '' sync_ssh_keys: false EOS
重新运行docker
docker restart mygitlab
目前遇到过两种情况,导致启动Gitlab时出现502错误:
1. 程序启动未完成。
刚开始时,Gitlab尚未完全启动时,访问会出现502。
2. 系统资源不够。
当系统资源不够(如内存、硬盘等)时,也会出现502。
可以使用docker命令查看错误日志。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。