How to automate Docker image deployment on server?

Please explain a complete deployment lifecycle to deploy latest code on server using CICD / Github Actions.