Drone Kostenloses Bereitstellungstool
Erstellen und testen Sie Software mit Open -Source -Bereitstellungswerkzeug
Automatisieren Sie Softwarebau, Testen, Bereitstellung mit Self-Service-kontinuierlicher Integration und kontinuierlicher Lieferplattform auf der GO-Sprache.
Überblick
Softwareaufbau, Test und Bereitstellung sind die wichtigste Aufgabe für Entwicklungsteams. Die Softwarebereitstellung ist eine kontinuierliche Aufgabe, da Teams häufig neue Versionen veröffentlichen. Mit dem Bereitstellungstool können Entwicklungsteams und einzelne Entwickler den Software -Bereitstellungsprozess automatisieren und sich auf andere wichtige Aufgaben konzentrieren. Es handelt sich um ein kostenloses und Open -Source -Bereitstellungswerkzeug für die Automatisierung des Softwarelieferprozesses. Es basiert auf Container -Technologie. Die Drohne bietet zwei Versionen wie Enterprise Edition und Community Edition. Die Enterprise Edition wird bezahlt, während die Community Edition kostenlos verwendet wird. Diese kostenlose Software -Bereitstellung Plattform unterstützt mehrere Betriebssysteme. Darüber hinaus funktioniert es mit jeder Sprache und Datenbank. Mit diesem Open Source Continuous Integration Tool ermöglicht es Entwicklungsteams, Pipelines einfach zu konfigurieren. Jede Pipeline läuft in einem Container, der zur Laufzeit isoliert und heruntergeladen wird. Die Drohne bietet eine Out-of-the-Box-Integration mit mehreren Quellcode-Management-Systemen. Es unterstützt die Integration mit SCM -Systemen wie Github, Githubenterprise, Bitbucket und GitLab. Dieses Freeware -Software -Bereitstellungswerkzeug unterstützt Plugins für die Ausführung einer Vielzahl von Aufgaben. Plugins sind wie Docker -Container und erledigen bestimmte Jobs wie Bereitstellung von Code, Veröffentlichung von Artefakten und senden die Benachrichtigung. Entwickler können das Plugin in jeder Sprache schreiben und als Docker -Bild veröffentlichen. Die Drohne ist in Go -Sprache geschrieben. Dieses Open Source -Bereitstellungswerkzeug ** wird unter der Apache -Lizenz veröffentlicht.
Merkmale
Drohne hat eine hervorragende Feature -Liste und einige davon sind:
- Frei und Open Source
- isolierte Builds
- Pipelines einfach konfigurieren
- Unterstützt beliebte Quellcode -Managementsysteme
- Unterstützung mehrerer Betriebssysteme unterstützen
- Unterstützt Plugins
- Unterstützt Webhooks, Erweiterungen, Autoscaling
- Self-Service kontinuierliche Integration
- Benutzerdefinierte Zugriffssteuerungen
- Genehmigungsworkflows
Installation
Installieren mit Ubuntu
Installieren Sie zunächst die neueste Version von Docker.
curl -L https://get.docker.com | bash
Fügen Sie den aktuellen Benutzer in die Docker -Gruppe hinzu.
sudo usermod -aG docker $USER'
Führen Sie den Befehl unten aus, um die Docker -Installation sicherzustellen.
docker --version
Erstellen Sie eine GitHub -Anwendung, indem Sie sich in Ihrem Konto anmelden. Navigieren Sie zu Einstellungen -& gt; Entwicklereinstellungen -& gt; OAuth -Anwendungen. Klicken Sie auf die neue OAuth -App -Schaltfläche. Füllen Sie das Formular mit den erforderlichen Informationen aus und drücken Sie die Taste zur Anwendung von Register. Kopieren Sie die Client -ID und das Client -Geheimnis. Sie brauchen sie in den kommenden Schritten. Laden Sie die neueste verfügbare Version von Drohnen herunter.
docker pull drone/drone:1
Führen Sie den folgenden Befehl aus, um eine neue Umgebungsdatei zu erstellen.
sudo nano /var/drone.env
Kopieren Sie den folgenden Konfigurationscode und fügen Sie in Editor ein. Ersetzen Sie die Werte durch die tatsächlichen.
DRONE_GITHUB_SERVER=https://github.com
DRONE_GITHUB_CLIENT_ID=xxxxxxxxxxxx
DRONE_GITHUB_CLIENT_SECRET=xxxxxxxxxxxxxx
DRONE_RUNNER_CAPACITY=2
DRONE_SERVER_HOST=http://example.com
DRONE_SERVER_PROTO=http
Befehl ausführen, um die Drohne zu starten.
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
Öffnen Sie die Site http: // Ihr \ _server \ _ip \ _or \ _domain.