написал маленький простой скрипт, который читает конфиг и делает в сеть пару запросов по апи. Скомпилировал экзешник. И понадеялся, что сейчас scp его на VPS и все будет там работать. Но у меня убунту 20, на сервере 16, в результате я получил просто несколько ошибок о несовместимости версий libc.
Тогда я устанивил там на VPS stack, запуллил репу и скомпилировал на месте. Пришлось увеличивать swap при этом, потому что 2 GB оперативки сервера не хватило, чтобы установить все библиотеки.
Вчера посмотрел какой-то ток Сноймана, где он рассказывал, как они деплоят. Там были с его стороны те же жалобы и всё свелось к докеру. Говорит, что тупо, конечно 3GB докер делать ради скриптика, но "оно работает и нам достаточно".
Я было уже смирился, что придется либо компилировать на сервере всё, либо возиться с докером, типа такова жизнь.
Но, вот, я увидел сейчас репу kowainik/hit-on — и там лежит скомпилированная кли-тулза hit-linux, которую я могу скачать и запустить у себя. То есть я, получается, могу просто экзешник у себя сделать и закачать. Но как?
Подозреваю, что в скомпилированной утилите совпадают требуемые версии библиотек с вашими. На сервере её можно запустить?
Вы про hit-on? Я не знаю, я еще нигде не пробовал ее запускать. Просто вижу, что они так ее распространяют: https://github.com/kowainik/hit-on/releases — один бинарник для любого линукса, предполагается, что оно должно работать :) Буду дома, попробую.
glibc старается сохранять обратную совместимость, потому скомпилировав со старой версией при отсутствии разногласий по версиям других зависимостей должно работать
Если ничего динамически не линкуется, что может разойтись по версиям, то должно работать. Есть ещё вариант статической линковки с MUSL, чтобы исключить зависимость от libc вообще.
Спасибо, буду пробовать.
Обсуждают сегодня