速卖通素材
努力

腾讯云轻量服务器jenkins搭建?

服务器

在腾讯云轻量应用服务器(Lighthouse)上搭建 Jenkins 是一个非常常见的需求。由于轻量服务器的系统通常精简且资源有限,推荐使用 Docker 方式部署,这样不仅环境隔离性好、升级方便,而且不占用宿主机的系统目录。

以下是基于 Ubuntu/DebianCentOS/Rocky Linux 系统的完整搭建步骤:


第一步:登录并安装基础工具

首先通过 SSH 登录到你的轻量服务器。你需要先安装 Docker 和 Docker Compose。

1. 更新系统源

  • Ubuntu/Debian:
    sudo apt update && sudo apt upgrade -y
  • CentOS/Rocky Linux:
    sudo yum update -y
    # 或者
    sudo dnf update -y

2. 安装 Docker

使用官方脚本快速安装(推荐):

curl -fsSL https://get.docker.com | sh -s docker --mirror Aliyun
# 如果是国内用户,建议加上 --mirror Aliyun 以提速下载

启动并设置开机自启:

sudo systemctl enable docker
sudo systemctl start docker

3. 安装 Docker Compose (可选但推荐)

如果你习惯使用 docker-compose 管理多容器,请安装它:

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

第二步:创建 Jenkins 数据目录

Jenkins 的数据(插件、配置、构建历史)需要持久化存储。建议创建一个独立目录:

mkdir -p ~/jenkins-data
cd ~/jenkins-data

第三步:编写 Docker Compose 文件

在项目目录下创建 docker-compose.yml 文件。这个配置会挂载卷以确保数据不丢失,并开放端口。

version: '3'
services:
  jenkins:
    image: jenkins/jenkins:lts
    container_name: jenkins
    restart: always
    ports:
      - "8080:8080"   # Web 访问端口
      - "50000:50000" # Agent 连接端口
    volumes:
      - ./jenkins_home:/var/jenkins_home  # 数据持久化
      - /var/run/docker.sock:/var/run/docker.sock # 允许 Jenkins 内部调用 Docker (实现 Docker-in-Docker)
    environment:
      - JAVA_OPTS=-Xms512m -Xmx1024m -Dfile.encoding=UTF-8
      - TZ=Asia/Shanghai # 时区设置

注意:将 /var/run/docker.sock 挂载进去是为了让 Jenkins 能执行 docker build 等命令。如果你的服务器内存较小(如 1G),可以适当调整 JAVA_OPTS 中的内存限制。


第四步:启动 Jenkins

运行以下命令启动服务:

docker-compose up -d

检查容器状态:

docker-compose ps

如果显示 Up 状态,说明启动成功。


第五步:获取管理员密码并解锁

首次启动后,Jenkins 需要初始化,此时会生成一个初始管理员密码。

  1. 查看密码

    docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

    注:如果提示找不到文件,请等待 1-2 分钟让 Jenkins 完成初始化,然后再次执行。

  2. 本地浏览器访问
    打开浏览器,输入你的服务器公网 IP:
    http://<你的服务器IP>:8080

  3. 解锁流程

    • 粘贴上一步查到的密码。
    • 选择 “Install suggested plugins”(推荐安装插件)。
    • 创建第一个管理员账号(用户名、密码、邮箱)。
    • 点击保存并完成。

第六步:重要配置与优化(必读)

1. 配置国内镜像源(关键)

Jenkins 默认从国外拉取插件,速度极慢甚至超时。进入 Manage Jenkins -> Plugins -> Advanced Settings,将 Update Center 地址修改为阿里云镜像:

  • Update site URL: https://mirrors.cloud.tencent.com/jenkins/war-stable/latest/updates.json
    (或者直接在命令行中重启容器并指定参数,但在 UI 配置更直观)

2. 配置 Git 插件

确保安装了 Git Plugin。在 Manage Jenkins -> Tools -> Git 中配置 Git 路径(通常是 /usr/bin/git)。

3. 配置 SSH 免密(用于拉取代码)

为了安全,Jenkins 不应直接使用 Git 账号密码。

  • 在服务器上生成密钥:ssh-keygen -t rsa
  • 将公钥 (~/.ssh/id_rsa.pub) 添加到你的 GitHub/GitLab 仓库的 Deploy KeysUser Settings
  • 在 Jenkins 的 Manage Jenkins -> Credentials 中添加 SSH Username with private key。

4. 防火墙与安全组

确保云服务器的安全组规则已放行:

  • 入方向:TCP 协议,端口 8080
  • 入方向:TCP 协议,端口 50000 (用于 Jenkins Agent 通信)。
  • 如果使用 HTTPS,建议配置 Nginx 反向X_X并申请 SSL 证书。

常见问题排查

  1. 启动后一直卡在 "Welcome to Jenkins"

    • 可能是网络问题导致插件下载失败。请检查上述“配置国内镜像源”的步骤。
    • 也可以尝试在 docker-compose.ymlenvironment 中增加 - JENKINS_OPTS="--prefix=/" 来改变上下文路径。
  2. 内存不足导致 Jenkins 崩溃

    • 轻量服务器如果只有 1GB 内存,Jenkins 可能会 OOM。请在 docker-compose.yml 中减少 JAVA_OPTS 的内存限制,例如改为 -Xms256m -Xmx512m
  3. 如何停止或重装?

    • 停止:docker-compose down
    • 彻底重装(警告:会清空所有构建记录和插件):删除 ~/jenkins-data 目录,然后重新执行 docker-compose up -d

通过以上步骤,你就拥有了一个运行在腾讯云轻量服务器上的现代化 Jenkins CI/CD 平台。接下来就可以开始编写 Jenkinsfile 进行自动化构建了。

未经允许不得转载:轻量云Cloud » 腾讯云轻量服务器jenkins搭建?