Drone Free Deployment Tool
Build And Test Software With Open Source Deployment Tool
Automate software building, testing, deployment with self-service Continuous Integration and Continuous Delivery platform based on Go language.
Overview
Software building, testing, and deployment is the most important task for development teams. Software delivery is a continuous job as teams frequently release new versions. The deployment tool enables development teams and individual developers to automate the software delivery process and focus on other important tasks. It is a free and open source deployment tool for automating the software delivery process. It’s based on container technology. The Drone offers two versions such as Enterprise edition, and community edition. Enterprise edition is paid one whereas community edition is free to use. This free software deployment platform supports multiple operating systems. Further, it works with any language and database.
This open source continuous integration tool allows development teams to easily configure pipelines. Each pipeline runs in a container that is isolated and downloaded at runtime. The Drone offers out-of-the-box integration with multiple source code management systems. It supports integration with SCM systems such as GitHub, GitHubEnterprise, Bitbucket, and GitLab. This freeware software deployment tool supports plugins for performing a wide range of tasks. Plugins are like Docker containers and do certain jobs such as deploy code, publish artifacts, send the notification. Developers can write the plugin in any language and publish it as a Docker image. The Drone is written in Go language. This open source deployment tool is released under the Apache License.
Features
Drone has an excellent feature list and some of them are:
- Free and open source
- Isolated Builds
- Easily Configure Pipelines
- Supports Popular Source Code Management Systems
- Support Multiple Operating Systems
- Supports Plugins
- Supports Webhooks, Extensions, Autoscaling
- Self-service Continuous Integration
- Custom Access Controls
- Approval Workflows
Installation
Installing using Ubuntu
First, Install the latest version of Docker..
curl -L https://get.docker.com | bash
Add the current user into the docker group.
sudo usermod -aG docker $USER'
Run below command to ensure the docker installation.
docker --version
Create GitHub application by login into your account. Navigate to Settings -> Developer Settings -> oAuth Applications. Click on the New OAuth App button. Fill the form with required information and press Register Application button.
Copy Client ID and Client Secret. You need them in coming steps.
Download the latest available version of Drone.
docker pull drone/drone:1
Execute the below command to create new environment file.
sudo nano /var/drone.env
Copy the following configuration code and paste in editor. Replace values with the actual ones.
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
Run command to start 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
Open the site http://your_server_ip_or_domain.