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

在腾讯云轻量应用服务器(Lighthouse)上搭建 Jenkins 是一个非常常见的需求,通常有两种主流方式:使用 Docker 容器化部署(推荐,干净、易维护)和 直接安装 Java 环境

考虑到轻量服务器的资源限制和运维便捷性,以下将重点介绍 Docker 方式 的完整步骤,并在最后简要说明直接安装法。


方案一:使用 Docker 部署(推荐)

这种方式可以将 Jenkins 与宿主机系统隔离,升级或重装时只需操作镜像和容器,不会污染服务器环境。

1. 准备工作

登录到轻量服务器终端(SSH),确保已安装 dockerdocker-compose(如果未安装,请先执行基础安装命令)。

# 更新软件源并安装 Docker (以 Ubuntu/Debian 为例)
curl -fsSL https://get.docker.com | sh -s docker --mirror Aliyun
systemctl enable docker && systemctl start docker

# 安装 docker-compose (如果版本较新,docker compose 是插件形式)
sudo apt-get install docker-compose-plugin
# 或者旧版单独安装
# 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

2. 创建项目目录

创建一个文件夹用于存放 Jenkins 的数据和配置:

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

3. 编写 docker-compose.yml

在该目录下创建 docker-compose.yml 文件:

nano docker-compose.yml

粘贴以下内容(已优化了中文编码和数据持久化):

version: '3'
services:
  jenkins:
    image: jenkins/jenkins:lts-jdk17
    container_name: jenkins
    restart: always
    user: root
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      # 数据持久化
      - ./jenkins_home:/var/jenkins_home
      # 挂载 Docker socket,以便 Jenkins 内部能构建 Docker 镜像
      - /var/run/docker.sock:/var/run/docker.sock
      # 挂载时区,解决日志时间问题
      - /etc/localtime:/etc/localtime:ro
    environment:
      - TZ=Asia/Shanghai
    # 可选:设置内存限制,防止 OOM
    deploy:
      resources:
        limits:
          memory: 2G

保存并退出(按 Ctrl+O 回车,然后 Ctrl+X)。

4. 启动服务

运行以下命令启动 Jenkins:

docker-compose up -d

5. 获取初始管理员密码

Jenkins 首次启动需要初始化,会生成一个随机密码。查看该密码:

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

(注意:输出的一串字符即为密码)

6. 访问与初始化

  1. 打开浏览器,访问 http://<你的轻量服务器公网IP>:8080
  2. 输入刚才获取的密码。
  3. 选择插件
    • 建议点击 "Install suggested plugins"(推荐插件),等待安装完成。
  4. 创建管理员账号:设置用户名和密码(建议与初始密码区分开)。
  5. 保存并开始使用:此时 Jenkins 即可正常使用。

重要提示:由于挂载了 /var/run/docker.sock,你在 Jenkins 里可以直接运行 docker builddocker run 命令来构建镜像,无需在 Jenkins 节点再额外安装 Docker。


方案二:直接安装(传统方式)

如果你不想使用 Docker,也可以直接在服务器上安装 Java 和 Jenkins 包。

  1. 安装 Java (JDK)

    # Ubuntu/Debian
    sudo apt update
    sudo apt install openjdk-17-jdk -y
    
    # CentOS/RHEL
    sudo yum install java-17-openjdk-devel -y
  2. 添加 Jenkins 官方源并安装

    # 导入 GPG Key
    curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee 
     /usr/share/keyrings/jenkins-keyring.asc > /dev/null
    
    # 添加源
    echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] 
     https://pkg.jenkins.io/debian-stable binary/ | sudo tee 
     /etc/apt/sources.list.d/jenkins.list > /dev/null
    
    # 安装
    sudo apt update
    sudo apt install jenkins -y
  3. 启动服务

    sudo systemctl start jenkins
    sudo systemctl enable jenkins
  4. 访问:同样访问 http://<IP>:8080,通过 /var/lib/jenkins/secrets/initialAdminPassword 获取密码。


⚠️ 腾讯云轻量服务器特别注意事项

  1. 安全组配置(防火墙)
    默认情况下,轻量服务器的安全组只开放了 SSH 端口。你必须手动放行 Jenkins 端口:

    • 登录腾讯云控制台 -> 轻量应用服务器 -> 详情 -> 网络 -> 安全组
    • 添加入方向规则:
      • 协议类型:TCP
      • 端口范围:8080 (Jenkins Web) 和 50000 (Agent 连接)
      • 授权对象:0.0.0.0/0 (或仅填写你的本地 IP 以提高安全性)
  2. 资源规划

    • Jenkins 比较吃内存。如果是 1 核 1G 或 2G 内存的实例,建议开启 Swap 分区 防止构建任务多时内存溢出(OOM)。
    • 开启 Swap 示例:
      sudo fallocate -l 2G /swapfile
      sudo chmod 600 /swapfile
      sudo mkswap /swapfile
      sudo swapon /swapfile
      # 写入 fstab 开机生效
      echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
  3. X_X与X_X
    如果你的构建任务需要拉取 GitHub/GitLab 代码或 Maven 依赖,且服务器处于内网受限环境,可能需要配置 HTTP X_X或在 Jenkins 中配置全局X_X。

总结

对于大多数用户,方案一(Docker Compose) 是最佳选择,因为它不仅安装简单,还能让 Jenkins 具备“构建 Docker 镜像”的能力,非常适合现代 CI/CD 流程。记得第一时间去控制台配置安全组规则,否则无法从网络访问。

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