返回

Ubuntu 上一键安装 Drone 持续集成环境

见解分享

Drone 是一个流行且免费的持续集成和交付(CI/CD)平台,支持常见的版本控制系统,如 GitHub、GitLab 和 Bitbucket。

在本文中,我们将引导您在 Ubuntu 服务器上安装和配置 Drone,并连接一个 GitLab 仓库以演示如何使用它进行持续集成。

前提条件

  • 一台运行 Ubuntu 20.04 或更高版本的服务器。
  • 一个域名(本教程中使用 drone.yourdomain.com)。
  • 一个有效的 SSL 证书,可通过腾讯云或 Let's Encrypt 等 CA 获取。
  • 一个 GitLab 账号和一个包含代码的仓库。

步骤 1:安装 Nginx 和 Let's Encrypt SSL

  1. 更新软件包列表:
sudo apt update
  1. 安装 Nginx:
sudo apt install nginx
  1. 启用 Nginx:
sudo systemctl enable nginx
  1. 开始 Nginx 服务:
sudo systemctl start nginx
  1. 获取 Let's Encrypt SSL 证书:
sudo certbot --nginx -d drone.yourdomain.com
  1. 按照提示完成 SSL 证书安装。

步骤 2:安装 Docker

  1. 安装 Docker:
sudo apt install docker.io
  1. 启用 Docker:
sudo systemctl enable docker
  1. 启动 Docker 服务:
sudo systemctl start docker
  1. 添加当前用户到 docker 组:
sudo usermod -aG docker $USER
  1. 退出并重新登录以应用更改。

步骤 3:安装 Drone

  1. 添加 Drone 软件源:
sudo curl -fsSL https://drone.io/drone.gpg | sudo apt-key add -
sudo apt-add-repository "deb https://drone.io/drone /"
  1. 更新软件包列表:
sudo apt update
  1. 安装 Drone:
sudo apt install drone
  1. 启用 Drone:
sudo systemctl enable drone
  1. 启动 Drone 服务:
sudo systemctl start drone

步骤 4:配置 Drone

  1. 编辑 /etc/drone/drone.toml 配置文件:
sudo nano /etc/drone/drone.toml
  1. 将以下内容复制到文件中,并替换 drone.yourdomain.com 为您的域名:
bind = "drone.yourdomain.com:8000"
  1. 保存并关闭文件。

步骤 5:配置 GitLab 集成

  1. 在 Drone 管理面板中,导航到 "Settings" > "Integrations"。
  2. 点击 "GitLab"。
  3. 输入您的 GitLab URL,如 https://gitlab.com/
  4. 输入您的 GitLab OAuth token。
  5. 点击 "Save Changes"。

步骤 6:连接 GitLab 仓库

  1. 在 GitLab 仓库中,导航到 "Settings" > "Integrations"。
  2. 点击 "Drone CI"。
  3. 选择 "Active"。
  4. 点击 "Save changes"。

步骤 7:测试 Drone

  1. 在 GitLab 仓库中推送一些代码。
  2. 在 Drone 管理面板中,导航到 "Builds"。
  3. 您应该会看到新构建的列表。

结论

您现在已经成功地在 Ubuntu 上安装和配置了 Drone 持续集成环境,并连接了 GitLab 仓库。现在,您就可以开始使用 Drone 自动构建、测试和部署您的代码了。