在CentOS上进行GitLab的容器化部署是一个相对简单且高效的方法,可以快速搭建和管理GitLab实例。以下是详细的步骤:
docker pull gitlab/gitlab-ce:latest
如果你在中国大陆地区,可能需要使用镜像加速服务,例如使用docker-mirror.aigc2d.com提供的镜像源。sudo mkdir -p /data/gitlab/{config,logs,data}
docker run -d \
--hostname gitlab.example.com \
-p 443:443 \
-p 80:80 \
-p 22:22 \
--name gitlab \
--restart always \
-v /data/gitlab/config:/etc/gitlab \
-v /data/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
解释:
--hostname
:指定容器中绑定的域名或IP地址。-p
:端口映射,将宿主机的端口映射到容器的端口。--name
:指定容器的名称。--restart always
:容器退出后自动重启。-v
:挂载目录,将宿主机的目录映射到容器的对应目录。cat /data/gitlab/initial_root_password
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_email@example.com"
gitlab_rails['smtp_password'] = "your_password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['gitlab_email_from'] = 'your_email@example.com'
docker exec gitlab gitlab-rake gitlab:backup:create
通过以上步骤,你可以在CentOS上成功进行GitLab的容器化部署,享受容器化带来的便捷和高效。如果有更多高级需求,可以参考GitLab官方文档进行进一步配置和优化。