温馨提示×

CentOS中GitLab的网络配置

小樊
38
2025-11-01 13:37:38
栏目: 智能运维

CentOS中GitLab网络配置详细步骤

1. 安装必要依赖包

GitLab运行需依赖curl(网络请求)、openssh-server(SSH访问)、postfix(邮件通知)等组件。通过以下命令安装:

sudo yum install -y curl openssh-server postfix

2. 配置网络基础设置

2.1 设置主机名

为方便访问,建议设置自定义主机名(如gitlab.example.com),替换为你的实际域名或服务器标识:

sudo hostnamectl set-hostname your_hostname

2.2 手动配置静态IP(可选)

若需固定IP,编辑网络接口配置文件(如/etc/sysconfig/network-scripts/ifcfg-eth0),修改以下参数:

DEVICE=eth0
BOOTPROTO=static  # 静态IP模式
IPADDR=192.168.1.100  # 你的服务器IP
NETMASK=255.255.255.0  # 子网掩码
GATEWAY=192.168.1.1  # 网关地址
DNS1=8.8.8.8  # 首选DNS
DNS2=8.8.4.4  # 备用DNS
ONBOOT=yes  # 开机自启

保存后重启网络服务:

sudo systemctl restart network

3. 配置防火墙

GitLab需开放**HTTP(80)、HTTPS(443)、SSH(22)**端口,允许外部访问Web界面和管理接口:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --permanent --zone=public --add-service=ssh
sudo firewall-cmd --reload

4. 安装GitLab

4.1 添加GitLab官方仓库

通过官方脚本添加Yum源,确保软件包来源安全:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

4.2 安装GitLab社区版(CE)

安装时通过EXTERNAL_URL参数指定访问地址(域名或IP),替换为你的实际地址:

sudo EXTERNAL_URL="http://your_hostname_or_ip" yum install -y gitlab-ce

5. 配置GitLab网络参数

5.1 修改external_url

编辑GitLab主配置文件/etc/gitlab/gitlab.rb,找到external_url项,设置为你的访问地址(HTTP或HTTPS):

external_url 'http://your_hostname_or_ip'  # 或 'https://your_hostname_or_ip'

此参数决定了GitLab的访问入口,需与防火墙开放的端口一致。

5.2 (可选)配置HTTPS

若需HTTPS加密,可使用Let’s Encrypt免费证书,GitLab提供简化命令:

sudo gitlab-ctl configure-ssl

执行后会自动申请并配置SSL证书,无需手动操作。

6. 重启GitLab服务

配置完成后,重新加载GitLab设置并重启服务,使更改生效:

sudo gitlab-ctl reconfigure  # 应用配置文件修改
sudo gitlab-ctl restart      # 重启GitLab服务

7. 验证网络访问

在浏览器中输入配置的external_url(如http://your_hostname_or_ip),若能看到GitLab登录页面,说明网络配置成功。首次访问需设置管理员账户密码。

8. (可选)配置邮件服务

若需GitLab发送通知邮件(如密码重置、合并请求提醒),需配置SMTP参数。以QQ邮箱为例,在/etc/gitlab/gitlab.rb中添加:

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_email@qq.com"
gitlab_rails['smtp_password'] = "your_authorization_code"  # 注意:使用SMTP授权码而非登录密码
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['gitlab_email_from'] = 'your_email@qq.com'
gitlab_rails['smtp_domain'] = "qq.com"

保存后重新配置并重启GitLab:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

以上步骤覆盖了CentOS环境下GitLab的网络配置核心环节,确保GitLab可通过网络正常访问和管理。

0