温馨提示×

ubuntu下jenkins怎么部署

小樊
45
2026-10-15 23:36:21
栏目: 智能运维

下面给你一个在 Ubuntu 下部署 Jenkins 的实用流程,从安装到基本配置,适合新手和日常使用。


一、环境准备

1. 系统要求

  • Ubuntu 20.04 / 22.04(推荐)
  • 至少 2GB 内存(构建多任务建议 4GB+)
  • 已安装 Java(JDK 11 或 17)

2. 安装 Java

sudo apt update
sudo apt install openjdk-17-jdk -y

检查:

java -version

二、安装 Jenkins

方式一(推荐):官方仓库安装

1. 添加 Jenkins 源

sudo apt update
sudo apt install -y curl gnupg
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.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

2. 安装 Jenkins

sudo apt update
sudo apt install jenkins -y

三、启动 Jenkins

sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins

确认端口(默认 8080):

sudo netstat -tlnp | grep 8080

四、初始化配置

1. 浏览器访问

http://<服务器IP>:8080

2. 获取初始管理员密码

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

复制密码粘贴到页面中。

3. 安装插件

  • 推荐:Install suggested plugins
  • 常用插件:
    • Git
    • Pipeline
    • Docker
    • SSH Publisher

4. 创建管理员账号


五、基础安全配置(重要)

1. 修改默认端口(可选)

编辑:

sudo nano /etc/default/jenkins

修改:

JENKINS_PORT=8080

重启:

sudo systemctl restart jenkins

2. 使用 Nginx 反向代理(推荐)

sudo apt install nginx -y

示例配置 /etc/nginx/sites-available/jenkins:

server {
    listen 80;
    server_name jenkins.example.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

启用:

sudo ln -s /etc/nginx/sites-available/jenkins /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

六、创建第一个任务(示例)

  1. 新建 Item → Freestyle project
  2. 源码管理:Git
  3. 构建步骤:
    • Execute shell
    echo "Hello Jenkins"
    
  4. 保存并 Build Now

七、常见问题

1. 无法访问 8080

  • 防火墙:
sudo ufw allow 8080
  • 云服务器需开放安全组

2. Jenkins 启动失败

journalctl -u jenkins -n 50

八、后续建议

  • 使用 Pipeline + Jenkinsfile
  • 集成 Docker / Kubernetes
  • 配置 凭证管理(Credentials)
  • 定期备份 /var/lib/jenkins

如果你需要的是:

  • Docker 方式部署 Jenkins
  • Jenkins + GitLab / GitHub 自动构建
  • Jenkins Pipeline 示例

可以告诉我你的使用场景,我可以直接给你对应方案。

0 踩