Go (Golang) — это язык программирования, который придумали ребята из Google, чтобы не страдать от боли C++ и Java. Сейчас Go — это must-have для бэкендеров, девопсов, и вообще всех, кто любит быстро собирать крутые штуки, которые не падают просто так. Если ты работаешь на Ubuntu или только собираешься, эта инструкция поможет поставить Go, не наступая на грабли.
Возможности Go и зачем он нужен
- Молниеносная компиляция и запуск (да, реально быстро).
- Встроенная поддержка конкурентности (goroutines — наше всё).
- Кроссплатформенность: собираешь под Linux, Windows, ARM — хоть на тостере.
- Огромное комьюнити и куча библиотек.
- Простота синтаксиса, но при этом мощь.
Go отлично подходит для микросервисов, CLI-тулов, web-серверов, backend’а и даже для написания девопсных тулов (см. Docker, Kubernetes — они на Go).
Что потребуется
- ОС: Ubuntu 18.04, 20.04, 22.04 или свежее (всё работает и на Debian-подобных, но тут про Ubuntu).
- Железо: Go не прожорлив, хватит любого современного ПК или VPS.
- Права: sudo-доступ для установки пакетов.
- Интернет: нужен для загрузки дистрибутива Go.
Установка Go — пошаговая инструкция
- Проверь, нет ли уже Go:
go version
Если видишь что-то вроде
go version go1.x.x
— возможно, Go уже стоит, но это может быть древняя версия из репозиториев Ubuntu. Лучше ставить свежак с офсайта. - Скачай актуальную версию Go:
Иди на https://go.dev/dl/ и скопируй ссылку на tar.gz для Linux amd64 (или arm64, если ты на ARM). Например:wget https://go.dev/dl/go1.22.4.linux-amd64.tar.gz
- Удаляем старую версию (если была):
sudo rm -rf /usr/local/go
- Распаковываем архив в /usr/local:
sudo tar -C /usr/local -xzf go1.22.4.linux-amd64.tar.gz
- Добавляем Go в PATH:
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile source ~/.profile
Для zsh — добавь строку в
~/.zshrc
. - Проверь, что всё ок:
go version
Должно вывести актуальную версию, например
go version go1.22.4 linux/amd64
.
Использование: основные команды и варианты
- go version — показать версию Go.
- go env — показать переменные окружения Go (важно для отладки путей).
- go run main.go — собрать и запустить файл (или несколько файлов) на лету.
- go build — собрать бинарник из исходников.
- go install — собрать и установить бинарник в
$GOPATH/bin
. - go mod init <module_name> — инициализировать новый проект с go modules (обязательно для новых проектов).
- go get <package> — подтянуть внешний пакет (библиотеку) в проект.
- go test ./… — запустить тесты во всех пакетах.
- go fmt ./… — привести код к каноническому стилю Go.
- go doc <package> — прочитать документацию по пакету.
Подробнее по командам — официальная документация.
Ошибки и как делать не надо
- Не ставь Go из
apt install golang
— там обычно устаревшая версия. - Не забывай обновлять PATH, иначе будет боль:
command not found: go
. - Не мешай разные версии Go в одной системе без явной нужды — это чревато конфликтами.
- Не игнорируй
go mod
— старый GOPATH устарел, лучше юзать модули. - Если используешь IDE, проверь, чтобы она видела твой Go (пути и переменные окружения).
Пример реального использования в окружении
Допустим, ты девопс и хочешь быстро собрать CLI-утилиту для автоматизации деплоя. Создаём директорию проекта:
mkdir ~/go-deploy-tool
cd ~/go-deploy-tool
go mod init github.com/yourname/go-deploy-tool
nano main.go
Пишем простой код (например, выводим «Hello, DevOps!»), сохраняем. Дальше:
go build
./go-deploy-tool
Если нужно подтянуть сторонние библиотеки (например, для работы с API), делаем go get github.com/spf13/cobra
и используем её как обычный модуль. Всё быстро, просто и без плясок с бубном.
Заключение
Go — отличный выбор для девопса, бэкендера, инженера и просто любителя автоматизации. Установка на Ubuntu занимает 5 минут, если знаешь, что делаешь. Главное — качай только с официального сайта, не ленись настраивать окружение, и используй go mod
для новых проектов. Если что-то пошло не так — официальная документация и гугл помогут. Happy coding!
Ваш отзыв