一、部署环境说明
本文中使用本地VM虚机部署测试。
OS:CentOS Linux release 7.8.2003 (Core) 3.10.0-1160.24.1.el7.x86_64
IP:192.168.168.100
Docker Version:v20.10.7
Docker Compose:v1.29.2
虚机配置:2核CPU、4G内存
注:①系统为最小化安装,部署前已完成系统初始化、内核及安全优化;
②Docker及Docker Compose已安装;
③Iptables防火墙已启用,Docker服务启动容器时映射的端口会自动添加至Iptables防火墙相关规则中,不需要手动更改Iptables规则。
二、Docker方式部署
官方仓库镜像:
https://hub.docker.com/r/gitlab/gitlab-ce
官方部署文档:
https://docs.gitlab.com/ce/install/docker.html#installing-gitlab-community-edition
1.拉取最新版本镜像
docker pull gitlab/gitlab-ce:latest
2.构建容器
## 创建数据、日志及配置文件目录,用于挂载,实现数据持久化
mkdir -p /data/gitlab/{data,logs,config}
## 构建容器
docker run -d --restart=always
--hostname gitlab --name=gitlab
-p 5443:443 -p 90:80 -p 1122:22
-v /etc/localtime:/etc/localtime
-v /data/gitlab/config:/etc/gitlab
-v /data/gitlab/logs:/var/log/gitlab
-v /data/gitlab/data:/var/opt/gitlab
gitlab/gitlab-ce:latest
## 部分参数说明
-d:后台运行容器
--restart=always:在容器退出时总是重启容器(--restart选项通常只用于detached后台启动模式的容器)
--hostname gitlab:指定容器的主机名为gitlab
--name=gitlab :指定容器名称为gitlab
-p 5443:443 -p 90:80 -p 1122:22 :端口映射,映射宿主机的5443端口到容器内的443端口,映射宿主机的90端口到容器内的80端口,映射宿主机的1122端口到容器内的22端口。注:宿主机的端口可自定义没被应用服务占用的端口。
## 目录映射说明
宿主机目录位置 | 容器内目录位置 | 描述 |
/data/gitlab/config | /etc/gitlab | 存储 GitLab 配置文件 |
/data/gitlab/logs | /var/log/gitlab | 存储日志 |
/data/gitlab/data | /var/opt/gitlab | 存储应用程序数据 |
3.查看容器
docker ps -a
4.配置GitLab服务的访问地址
## 修改gitlab的配置文件
vi /data/gitlab/config/gitlab.rb
或
docker exec -it gitlab vi /etc/gitlab/gitlab.rb
//配置http协议所使用的访问IP地址
external_url 'http://192.168.168.100'
注:设置 external_url ,绑定监听的域名或IP或IP+端口。若GitLab需通过公网访问,最好配置域名加HTTPS;若是内部网络访问,则可配置IP或IP+端口,也可配置域名,用户通过配置本地hosts解析访问。本文中为测试,使用IP方式,即 http://192.168.168.100。因构建容器时映射的是80端口。
## 方法一:重启容器
docker restart gitlab
## 方法二:重新加载GitLab配置
docker exec -it gitlab gitlab-ctl reconfigure
//reconfigure需要时间,请耐心等待
5.测试访问
## 查看初始化管理员帐户密码,密码存储在容器内的
/etc/gitlab/initial_root_password (即宿主机上的 /data/gitlab/config/initial_root_password )文件中。本文中初始化管理员帐户生成的密码为:2vLS5OiJNnFtvWMOXUgxBOjz38y7tm/JbyxvUx+jevg=
## 浏览器打开http://192.168.168.100:90即可访问到gitlab,因启动容器时,端口做了映射,使用访问时需加上端口。
## 输入初始化默认管理员账户: root 密码:
2vLS5OiJNnFtvWMOXUgxBOjz38y7tm/JbyxvUx+jevg=,登录。
## 登录成功后的首页。
## 接下来就可以使用GitLab了,本文中不一一阐述。
三、Docker Compose方式部署
1.下载docker-compose文件(也可不下载文件修改,直接创建)
mkdir -p /data/gitlab
cd /data/gitlab
wget https://gitlab.com/gitlab-org/omnibus-gitlab/raw/master/docker/docker-compose.yml
2.创建数据、日志及配置文件目录,用于挂载,实现数据持久化
mkdir -p /data/gitlab/{data,logs,config}
3.修改docker-compose文件
cd /data/gitlab
vi docker-compose.yml
//修改hostname、external_url、ports、volumes参数选项值,增加container_name参数选项及对应值,如下
web:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'gitlab'
container_name: gitlab
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.168.100'
ports:
- '90:80'
- '5443:443'
- '1122:22'
volumes:
- '/data/gitlab/config:/etc/gitlab'
- '/data/gitlablogs:/var/log/gitlab'
- '/data/gitlab/data:/var/opt/gitlab'
4.启动容器
cd /data/gitlab
docker-compose -f docker-compose.yml up -d
5.查看运行状态
docker ps -a
或
docker-compose ps
6.测试访问
## 查看初始化管理员帐户密码,密码存储在容器内的
/etc/gitlab/initial_root_password (即宿主机上的 /data/gitlab/config/initial_root_password )文件中。本文中初始化管理员帐户生成的密码为:EeIG48BOSA6mKrRypYeALSZwXxoD7/u5m4V17z/M/ec=
## 浏览器打开http://192.168.168.100:90即可访问到gitlab,因启动容器时,端口做了映射,使用访问时需加上端口。
## 输入初始化默认管理员账户: root 密码:
EeIG48BOSA6mKrRypYeALSZwXxoD7/u5m4V17z/M/ec=,登录。
## 登录成功后的首页。
## 接下来就可以使用GitLab了,本文中不一一阐述。
四、修改超级管理员密码
方法可参考之前本人发布的文章第八点:
http://www.yixao.com/soft/25465.html
内容出处:,
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/soft/25464.html