OE_gitlab服务操作和维护方法

OE : Operation Engineer

GitLab Omnibus 安装(rpm/deb 包,主流)启停、状态、日志全套命令(Ubuntu/CentOS 通用)。绝大部分离线部署 GitLab 都是omnibus 包安装,优先用gitlab-ctl;Docker 部署在文末单独说明。

一、启动 / 停止 / 重启服务

bash运行 复制代码
# 1. 全量启动所有组件(nginx/puma/postgres/redis/sidekiq等)
sudo gitlab-ctl start

# 2. 全量停止
sudo gitlab-ctl stop

# 3. 全量重启(改配置后常用)
sudo gitlab-ctl restart

# 4. 修改/etc/gitlab/gitlab.rb配置后重载配置(必执行)
sudo gitlab-ctl reconfigure

# 5. 单独启停某个组件(举例nginx/数据库)
sudo gitlab-ctl start nginx
sudo gitlab-ctl restart postgresql

systemd 系统服务控制(备选)

bash 复制代码
# 开机自启
sudo systemctl enable gitlab-runsvdir
# 启停systemd托管总服务
sudo systemctl start/stop/restart gitlab-runsvdir
# 查看systemd运行状态
sudo systemctl status gitlab-runsvdir

二、查看运行状态(最常用)

bash 复制代码
# 查看所有组件运行状态:run=正常运行,down=异常停止
sudo gitlab-ctl status

输出示例:

plaintext 复制代码
run: nginx: (pid 1234) 120s; run: log: (pid 1233) 120s
run: postgresql: (pid 1236) 120s; run: log: (pid 1235) 120s
down: sidekiq: 0s, normally up

三、查看日志(2 种方式:实时跟踪 / 直接读文件)

方式 1:gitlab-ctl 实时跟踪日志(排查故障首选,Ctrl+C退出)

bash 复制代码
# 实时查看全组件汇总日志
sudo gitlab-ctl tail

# 单独查看指定服务日志(高频)
sudo gitlab-ctl tail gitlab-rails   # 主程序业务日志(页面报错、接口异常)
sudo gitlab-ctl tail nginx          # web访问、404/502错误
sudo gitlab-ctl tail postgresql     # 数据库报错
sudo gitlab-ctl tail sidekiq        # 后台任务、CI任务失败
sudo gitlab-ctl tail redis          # 缓存异常

方式 2:直接读取日志文件(默认路径:/var/log/gitlab/)

bash 复制代码
# 进入日志目录
cd /var/log/gitlab

# 查看应用错误日志
tail -f gitlab-rails/production.log
# Nginx访问日志
tail -f nginx/gitlab_access.log
# Nginx错误日志
tail -f nginx/gitlab_error.log

四、Docker 容器部署 GitLab 专用命令

bash 复制代码
# 查看容器运行状态
docker ps |grep gitlab
# 启动/停止容器
docker start gitlab
docker stop gitlab

# 实时查看容器整体日志
docker logs -f gitlab
# 查看最后100行日志
docker logs --tail 100 gitlab

# 进入容器内部用gitlab-ctl
docker exec -it gitlab bash
# 容器内再执行:gitlab-ctl status / gitlab-ctl tail

五、常用排错补充

  • 网页打不开:优先看gitlab-ctl tail nginx
  • 登录 500 报错:优先看gitlab-ctl tail gitlab-rails
  • 项目 push 失败:查看gitlab-ctl tail gitaly
相关推荐
珠***格38 分钟前
XGF10-Z-4典型接入方式解析:10千伏专变用户380伏多点分布式光伏如何并网?
网络·人工智能·分布式·安全·边缘计算
阿里云云原生7 小时前
Agent 不再是“玩具”!AgentScope Java 2.0 GA 发布:构建企业级分布式智能体底座
java·开发语言·分布式·agentscope
时代的狂8 小时前
RabbitMQ 面试问答
分布式·面试·rabbitmq
hkNaruto10 小时前
【大数据】《传统Hadoop大数据技术入门:补充与进阶——从数据格式到智能决策的问答实录》
大数据·hadoop·分布式
ThanksGive10 小时前
TurboLock:从 v1 Redis 分布式锁到 v2 Go 并发控制中间件
分布式·后端
韩楚风1 天前
【参天引擎】事务生命周期 / MVCC / Undo / ACID / 分布式事务 功能域整体解析
数据库·分布式·mysql·架构·cantian
ACP广源盛139246256731 天前
GSV6155@ACP# 搭配 AI 服务器、AI PC 完整适配方案
大数据·服务器·人工智能·分布式·单片机·嵌入式硬件
ZENERGY-众壹1 天前
50MW分布式VPP接入实战:调度中心要求的1分钟频率如何不卡死API
运维·服务器·分布式·光伏运维
富士康质检员张全蛋1 天前
Kafka的操作 生产消息
分布式·kafka
这个需求做不了1 天前
Jenkins自动化构建与CI/CD流水线,并配置GitLab
java·ci/cd·自动化·gitlab·jenkins