温馨提示×

linux gitlab端口怎么配置

小樊
54
2026-10-19 03:05:49
栏目: 智能运维

在 Linux 上配置 GitLab 的端口,通常分几种情况:修改 Web 访问端口(HTTP/HTTPS)、SSH 端口,或 对外端口(如 Docker / 防火墙)。下面按常见场景说明。


一、修改 GitLab Web 端口(HTTP / HTTPS)

1. 修改配置文件

sudo vi /etc/gitlab/gitlab.rb

HTTP 端口(默认 80)

external_url 'http://gitlab.example.com:8080'

或 IP + 端口:

external_url 'http://192.168.1.100:8080'

HTTPS 端口(默认 443)

external_url 'https://gitlab.example.com:8443'

⚠️ 修改 external_url 后,GitLab 会自动改 Nginx 监听端口


2. 重新配置 GitLab

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

3. 确认监听端口

sudo netstat -tunlp | grep nginx
# 或
sudo ss -tunlp | grep nginx

二、修改 GitLab SSH 端口(默认 22)

1. 修改 gitlab.rb

sudo vi /etc/gitlab/gitlab.rb
gitlab_rails['gitlab_shell_ssh_port'] = 2222

如果系统 SSH 已占用 22,可改 Nginx 层不改系统 SSH:

# 不改系统 sshd

2. 重新配置

sudo gitlab-ctl reconfigure

3. clone 地址示例

git clone ssh://git@gitlab.example.com:2222/group/project.git

三、防火墙开放端口(重要)

firewalld(CentOS / RHEL)

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload

ufw(Ubuntu)

sudo ufw allow 8080/tcp
sudo ufw allow 2222/tcp

四、Docker 方式运行 GitLab(常见)

docker run -d \
  --name gitlab \
  -p 8080:80 \
  -p 8443:443 \
  -p 2222:22 \
  gitlab/gitlab-ee

并在 gitlab.rb 中:

external_url 'http://宿主机IP:8080'
gitlab_rails['gitlab_shell_ssh_port'] = 2222

五、常见问题

1. 端口被占用

sudo lsof -i:80

关闭占用程序或修改 GitLab 端口

2. 改了端口无法访问

  • 检查防火墙
  • 检查云服务器安全组
  • 检查 external_url 是否一致

3. 只改 Nginx 端口(不推荐)

nginx['listen_port'] = 8080

但仍建议用 external_url


如果你能告诉我:

  • ✅ 是 源码 / Omnibus / Docker
  • ✅ 想改 Web / SSH / HTTPS
  • ✅ 系统版本(CentOS / Ubuntu)

我可以给你精确配置示例。

0 踩