docker 持久化部署gitlab
需要先安装并启动docker服务
mkdir -p /data/gitlab/{config,data,logs}
#数据盘中创建3个文件夹用于存放配置文件、数据、日志
export GITLAB_HOME=/data/gitlab
#添加一个临时变量设置gitlab的基础路径
docker run -itd \
-p 8080:80 -p 8022:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
--volume /etc/localtime:/etc/localtime:ro \
--privileged=true \
--shm-size 256m \
gitlab/gitlab-ce:16.1.0-ce.0
页面登录端口 http://localhost://8080
gitlab_shell端口 8022
查看初始root密码
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
日志查看命令
docker logs gitlab
容器运行状态
docker ps
gitlab配置关联LDAP,连接公司AD域
cd /data/gitlab/config
vim gitlab.rb
# 填写自己的AD域信息
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main:
label: 'LDAP'
host: 'abc.ldap.com'
port: 389
uid: 'AccountName'
bind_dn: 'cn=user,ou=Public,ou=abc,ou=Accounts,dc=abc,dc=com'
password: 'ladp@123'
encryption: 'plain'
base: 'OU=Users,dc=abc,dc=com'
user_filter: '(objectCategory=*)'
EOS
修改克隆地址显示为IP或域名
cd /data/gitlab/config
vim gitlab.rb
gitlab_rails['gitlab_ssh_host'] = '192.168.0.11'
gitlab_rails['gitlab_shell_ssh_port'] = 8022
vi /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
gitlab:
host: 192.168.0.11
port: 8080
https: false
进入容器中重新加载gitlab配置文件(会影响代码上传需要等待闲时执行)
docker exec -it gitlab bash
重新加载gitlab配置文件(会影响代码上传需要等待闲时执行)
docker exec -it gitlab bash
gitlab-ctl reconfigure
gitlab-ctl restart