在Linux上进行GitLab的容器化部署是一个相对简单且高效的方法,可以省去手动安装和配置的繁琐步骤。以下是详细的步骤指南:
准备工作
-
安装Docker: 确保你的Linux系统上已经安装了Docker。如果没有安装,可以参考Docker官方文档进行安装。
-
安装Docker Compose(可选但推荐): Docker Compose可以简化多容器应用的管理。你可以从Docker官网获取安装指南。
部署步骤
方法一:使用docker run
命令
-
拉取GitLab镜像:
docker pull gitlab/gitlab-ce:latest
-
创建并启动GitLab容器:
docker run --detach \ --hostname gitlab.example.com \ --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
解释:
--detach
:后台运行容器。--hostname
:设置容器的主机名。--publish
:将容器端口映射到宿主机端口。--name
:设置容器名称。--restart always
:容器退出时自动重启。--volume
:挂载数据卷。
-
访问GitLab: 打开浏览器,访问
http://gitlab.example.com
,按照提示设置管理员账号和密码。
方法二:使用docker-compose
-
创建
docker-compose.yml
文件:version: '3.6' services: gitlab: image: gitlab/gitlab-ee:17.4.5-ee.0 container_name: gitlab restart: always ports: - '5480:80' - '5443:443' - '5022:22' volumes: - './config:/etc/gitlab' - './logs:/var/log/gitlab' - './data:/var/opt/gitlab' shm_size: '256m'
-
启动GitLab容器:
docker-compose up -d
-
访问GitLab: 进入容器获取初始密码:
docker exec -it gitlab /bin.bash cat /etc/gitlab/initial_root_password
在浏览器中输入获取的密码,设置新密码后登录。
配置GitLab
-
修改外部URL: 进入容器修改配置文件:
docker exec -it gitlab /bin/bash vi /etc/gitlab/gitlab.rb
修改
external_url
配置项为你的服务器地址。 -
启用HTTPS: 编辑
gitlab.rb
文件,添加或修改以下配置:letsencrypt['enabled'] = true letsencrypt['contact_emails'] = ['your.email@example.com']
然后重新配置并重启GitLab:
gitlab-ctl reconfigure gitlab-ctl restart
注意事项
- 数据持久化:确保挂载的数据卷在宿主机上已经创建。
- 端口映射:确保宿主机的端口与容器端口正确映射。
- 安全性:修改默认的管理员密码,关闭用户注册功能(如果需要)。
通过以上步骤,你就可以在Linux上成功部署GitLab,并享受容器化带来的便利和高效。如果有任何问题,可以参考GitLab的官方文档或相关社区资源。