TGViewer
Go for Devs Go for Devs @go_for_devs · 854 subscribers
Post #103 1.75K
⚙️ Go + cgo + Docker: как вернуть воспроизводимую кросс-сборку

Хороший практичный разбор про то, что происходит с Go-проектом после появления cgo. Формально go build всё ещё работает, но на практике каждый разработчик начинает жить в своём окружении с набором флагов, версий библиотек и локальных костылей.

В статье простой, но рабочий выход: всю сборку вынести в Docker и рассматривать его как единое билд-окружение. Внутри контейнера явно задаются CC, CXX, AS и ldflags для каждой пары OS/arch, что позволяет из одного места собирать Linux, macOS и Windows бинарники, включая статическую линковку там, где это возможно.

Важно, что Docker используется без Dockerfile — берётся официальный golang-образ и напрямую запускается bash-скрипт. Это делает процесс легко воспроизводимым как для команды, так и для пользователей open source-проекта.

Подход не самый быстрый и не самый изящный, но он позволяет сделать локальную сборку идентичной продакшену, а cgo перестаёт быть источником проблем.

@go_for_devs
  • 👍 6
  • 🔥 3
  • ❤ 2
More from @go_for_devs
  1. Sep 30, 2026Тут больше не будет новостей, статей и постов про Go. Go-разработчику сейчас важнее не син…
  2. Apr 16, 2026⚡️ Anthropic выпустили Claude Opus 4.7 Cursor зафиксировал рост с 58% до 70% на своём бенч…
  3. Feb 11, 2026🥳 Состоялся релиз Go 1.26 В релиз вошли несколько заметных изменений: 1. Функция new тепе…
  4. Jan 29, 2026Post #116
  5. Jan 22, 2026Помните, осенью мы писали про запуск опроса Go Survey 2025. Так вот, вчера команда Go опуб…
  6. Jan 21, 2026Философский подход к бэкенду
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →