If I remove the github oauth application for Drone from my personal github account (the one I login with) Drone does show the page which asks for permissions to access the repos and email address etc.
As part of the oauth flow, you are redirected from Drone to GitHub. Please note that this is a client-side redirect, which means the redirect is happening in your browser, on your laptop. It would not, therefore, confirm the server’s ability to reach GitHub.
Once you authorize access, GitHub will redirect you back to the Drone server. The Drone server will then make an API call to github.com and request an oauth access token. Based on your error message, we can see that this API call is failing.
The error message indicates your Drone server is unable to reach github.com with an i/o timeout. This is a low level network error coming from the tcp package in the Go standard library. If the Go standard library cannot establish a TCP connection, we can be reasonably sure there is a network issue somewhere in your stack.
If you continue to experience issues, you could run the drone/drone:0.8-alpine image, which supports a bash command prompt, and exec into the container and try to curl the github.com endpoint and attempt to reproduce connectivity issues.