Найти тему
Mad Devs

Самый простой способ деплоить гошные бинарники

Бывают моменты, когда нужно написать на Го простой тул, но вот работать он должен на каком-то совершенно олдовом боксе и на не менее олдовом Линуксе.

Докер туда не поставишь без обновления ядра, а ядро обновлять страшно. Ставить там последний Го тоже не вариант, в пакетах его нет, а тащить его туда и ставить руками лень.

Классно, что гошные софты можно компилять и получать бинарник. А еще классно то, что есть кросс-компиляция. То есть на Маке можно скомпилять бинарник, который будет запускаться на Линуске. Это, конечно, не всегда срабатывает, особенно если у вас там используется коммуникация с внешними либами. Надо ставить на Мак кросстулы для gcc или сс.

Легче компилять в Докере, вот так:

-2

Ну так вот. Проблема в том, что бинарник надо доставить на олдовый бокс, а олдовый бокс он на то и олдовый, что с ним лучше не делать никаких манипуляций. А еще этот бокс стоит на NAT’ом.

Как деплоить?

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

Хорошо проканывает, если у вас опенсорцевый проект.

🤘

Ранее статья была опубликована тут.