如何在Ubuntu 18.04上安装Drone CI

介绍

Drone是一个自动化,连续的测试和交付平台,可在您自己的基础架构上运行。无人机支持可以在Docker容器中运行的任何语言,服务或数据库。Drone管道配置以YAML格式写入名为的文件,该文件.drone.yml位于项目的根目录中。无人机可以轻松地与Github,Gitlab,Bitbucket或Gitea集成。在本教程中,我们将把Drone与Github结合使用。

要求

  • 至少具有2 GB RAM的新鲜Vultr Ubuntu 18.04实例。
  • 具有sudo特权的非root用户。
  • Github帐户。

确保您的系统是最新的。

sudo apt update && sudo apt upgrade -y

步骤1:安装Docker CE

Docker提供了易于使用的安装脚本,可以在任何受支持的系统上执行。它将配置Docker官方存储库以及Docker Community Edition的安装。

安装最新版本的Docker。

curl -L https://get.docker.com | bash

安装Docker之后,将当前用户添加到该docker组中,以便我们可以从已登录用户运行docker命令。

sudo usermod -aG docker $USER

为了使以上命令生效,您需要从终端注销并重新登录。

测试docker版本以确保我们可以成功运行docker命令。

docker --version

您将看到类似的输出。

user@vultr:~$ docker --version
Docker version 18.09.5, build e8ff056

第2步:获取Github客户端ID和密码

登录Github并导航以注册新的OAuth应用程序。将您选择的任何名称提供给OAuth应用程序。提供“ 首页URLhttp://203.0.113.101和“ 授权回调URLhttp://203.0.113.101/login。确保203.0.113.101用您的实际Vultr IP地址或指向Vultr实例的任何域名替换。

如何在Ubuntu 18.04上安装Drone CI

单击Register application按钮后,将为您提供一个Client IDClient Secret

如何在Ubuntu 18.04上安装Drone CI

记下这些内容,因为本教程将进一步要求它们。

步骤3:安装Drone CI

下载Drone的最新可用版本。

docker pull drone/drone:1

您可以随时在Drone docker hub页面上检查最新标签。

创建一个新的环境文件来存储Drone配置。

sudo nano /var/drone.env

将以下配置放入编辑器。确保将示例值替换为实际值。

DRONE_GITHUB_SERVER=https://github.com
DRONE_GITHUB_CLIENT_ID=43ddc12735c28example
DRONE_GITHUB_CLIENT_SECRET=0b8c7c479fefb027758dbdfc5662b7c4example
DRONE_RUNNER_CAPACITY=2
DRONE_SERVER_HOST=http://203.0.113.101
DRONE_SERVER_PROTO=http

注意: DRONE_RUNNER_CAPACITY可以根据实例上可用的RAM进行增加。

保存文件并退出编辑器。

通过运行以下命令来启动Drone。

docker run \
  --volume=/var/run/docker.sock:/var/run/docker.sock \
  --volume=/var/lib/drone:/data \
  --env-file=/var/drone.env \
  --publish=80:80 \
  --publish=443:443 \
  --restart=always \
  --detach=true \
  --name=drone \
  drone/drone:1

而已。要打开Drone Web UI,请http://203.0.113.101在浏览器中访问并使用您的Github帐户登录。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息