下面按常见场景给你一套远程部署 Ubuntu + Jenkins的完整思路与操作步骤,从“服务器准备”到“远程访问/自动化部署”都覆盖。
你需要一台 远程 Ubuntu 服务器(物理机 / 云服务器均可):
ssh user@your_server_ip
sudo apt update && sudo apt upgrade -y
Jenkins 需要 Java 11 或 17
sudo apt install openjdk-17-jdk -y
java -version
# 安装依赖
sudo apt install -y curl fontconfig
# 添加 Jenkins 密钥
sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
# 添加源
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
# 安装
sudo apt update
sudo apt install jenkins -y
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
http://服务器IP:8080
确保放行:
sudo apt install nginx -y
sudo nano /etc/nginx/sites-available/jenkins
server {
listen 80;
server_name jenkins.example.com;
location / {
proxy_pass http://127.0.0.1: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 reload nginx
(HTTPS 可用 Let’s Encrypt)
Jenkins → 系统管理 → 系统配置 → Publish over SSH
pipeline {
agent any
stages {
stage('Pull Code') {
steps {
git 'https://github.com/your/repo.git'
}
}
stage('Deploy') {
steps {
sshPublisher(
publishers: [
sshPublisherDesc(
configName: 'remote-server',
transfers: [
sshTransfer(sourceFiles: 'dist/**', remoteDirectory: '/app')
]
)
]
)
}
}
}
}
journalctl -u jenkins -f
修改:
sudo nano /etc/default/jenkins
# HTTP_PORT=8080
✅ 远程 Ubuntu
✅ 安装 Java + Jenkins
✅ SSH / Nginx 远程访问
✅ Pipeline 自动化部署
如果你愿意,我可以:
你现在是 学习 / 公司生产 / 云服务器 哪种场景?