What is the easiest way to deploy a simple Go (Golang) web application on a server, for someone coming from a PHP environment?
The easiest way is to compile your Go executable for the server’s architecture and OS on your development machine, just copy and run it there.
A Go executable is self-sufficient. It won’t need an external web-server, a runtime, runtime configurations, etc.
However, usually, you’ll also have a database backing your service, some kind of configuration files and similar. Containerization is a good way to deal with these situations. I use Docker Compose to deploy my services and I’ve also automated it in such a way that when I push to the "release" git branch the CI/CD system will automatically compile my Go code, verify it’s correct using various static code analysis tools such as https://golangci.com/ and go vet and deploy it as a containerized service on production servers.
If you want to get new posts, check out the tech blog.
The easiest way is to compile your Go executable for the server’s architecture and OS on your development machine, just copy and run it there.
A Go executable is self-sufficient. It won’t need an external web-server, a runtime, runtime configurations, etc.
However, usually, you’ll also have a database backing your service, some kind of configuration files and similar. Containerization is a good way to deal with these situations. I use Docker Compose to deploy my services and I’ve also automated it in such a way that when I push to the "release" git branch the CI/CD system will automatically compile my Go code, verify it’s correct using various static code analysis tools such as https://golangci.com/ and go vet and deploy it as a containerized service on production servers.
If you want to get new posts, check out the tech blog.