In this topic, We will address A quick installation using Docker-compose with Drone-Server, NPM with Let’s Encrypt certificate.
We assume you already have a Linux host with docker installed.
Here is an example of a docker-compose with Drone-Server and Nginx Proxy Manager:
version: '3.8' services: drone-server: image: drone/drone:latest container_name: drone volumes: - CHANGE_ME:/var/lib/drone/ - /etc/localtime:/etc/localtime:ro restart: unless-stopped environment: - DRONE_DEBUG=true - DRONE_LOGS_TRACE=true - DRONE_ORGS=CHANGE_ME - DRONE_RUNNER_CAPACITY=20 - DRONE_AGENTS_ENABLED=true - DRONE_GITHUB_SERVER=https://github.com - DRONE_GITHUB_CLIENT_ID=CHANGE_ME - DRONE_GITHUB_CLIENT_SECRET=CHANGE_ME - DRONE_USER_CREATE=CHANGE_ME - DRONE_RPC_SECRET=CHANGE_ME - DRONE_OPEN=false - DRONE_GITHUB=true - DRONE_ADMIN_ALL=false - DRONE_SERVER_HOST=drone.vinicima.com #CHANGE_ME - DRONE_SERVER_PROTO=http - DRONE_CONVERT_MULTI=false npm: image: jc21/nginx-proxy-manager:latest container_name: npm ports: - 80:80 - 443:443 - 81:81 environment: - X_FRAME_OPTIONS="sameorigin" volumes: - CHANGE_ME:/data - CHANGE_ME:/etc/letsencrypt - /etc/localtime:/etc/localtime:ro restart: unless-stopped
Obs: Remember to change the variables according to your environment.
#docker-compose up -d
After both Dockers are running, go to your host address on port 81:
Default Admin User:
Email: firstname.lastname@example.org Password: changeme
Creating a Let`s Encrypt certificate:
Go to SSL Certificates, Add SSL Certificate and select Let`s Encrypt:
Obs: In this example, I’m using Cloudflare. However, NPM has support for other DNS Providers, configure it according to your preference.
Click Save, and After This, go to Hosts and then Proxy Hosts:
Add Proxy Host:
And the Domain Names:
Then Just Save and Ready your drone-Server with Web-proxy with SSL configured: