Как запустить go код на vds ubuntu?

Я купил vds с ОС ubuntu, и скачал туда go. Но возник вопрос-как мне запустить мой проект на golang в сервере правильно? Я запускаю go файл через go run main.go, там вывод Println работает, а вывод на страницу нет код:

    package main
import (
     "github.com/gorilla/mux"
      "net/http"
    "fmt"
)
func setDefaultHeaders(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "helloooooooo")
   }
func main() {
    fmt.Println("helloooooo")
    r := mux.NewRouter()

   r.HandleFunc("/", setDefaultHeaders)
    http.ListenAndServe(":8000", r)
}

Ответы (1 шт):

Автор решения: Pak Uula

Скопируйте ваш main.go на сервер в какой-нибудь каталог. Пусть для определённости это будет ~/tmp/stackoverflow.

Теперь в этом каталоге подготовьте окружение и скомпилируйте приложение:

cd ~/tmp/stackoverflow
go mod init example.org/server
go mod tidy
go build ./

В результате в каталоге ~/tmp/stackoverflow появится исполнимый файл server. Это бинарник вашей программы.

Имя модуля example.org выбрано мной "от балды". Вы можете назвать ваш модуль как угодно. Бинарник по умолчанию получит имя, стоящее после крайнего / в имени модуля.

Ссылки:

→ Ссылка