Можно ли как то добиться включения/стопа/рестарта golang сервера через консоль?

Да, в Go есть несколько способов включения, остановки и перезапуска сервера через командную строку. Ниже я рассмотрю несколько возможных вариантов.

1. Использование утилиты go run:
Вы можете запустить сервер, используя команду go run, указав путь к файлу, содержащему ваше приложение сервера. Например, если ваш файл называется main.go, вы можете выполнить команду go run main.go, чтобы запустить сервер. В этом случае, чтобы остановить сервер, вы можете нажать Ctrl+C в командной строке, где сервер был запущен.

2. Использование фреймворка "github.com/urfave/cli":
Вы можете воспользоваться фреймворком "github.com/urfave/cli", чтобы создать свой собственный интерфейс командной строки для вашего сервера. Вы можете определить команды для запуска, остановки и перезапуска сервера и обрабатывать их в вашем приложении. Этот фреймворк предоставляет удобные средства для разбора аргументов командной строки и выполнения нужных задач.

3. Использование сторонних утилит для управления процессом сервера:
Существуют различные утилиты третьих лиц, такие как go-daemon, supervisor, systemd и др., которые позволяют запускать и управлять процессом сервера через командную строку. Вы можете исследовать эти утилиты и выбрать наиболее подходящую для вашей среды разработки.

Независимо от выбранного подхода, вы можете добавить логику обработки команд для остановки, перезапуска и прочих действий в вашем коде сервера, чтобы обеспечить правильное завершение работы сервера и отработку команд, полученных из командной строки.

Определенный подход зависит от ваших потребностей и среды разработки. Надеюсь, эта информация поможет вам определить наиболее подходящий способ управления вашим Go-сервером через командную строку.