Создать сборщик debian-пакета в Docker

Цена договорная
02 мая 2020, 14:46 • 5 откликов • 44 просмотра
Есть готовый бинарник без зависимостей (веб-сервис http, написан на golang). Обычно запускаем все в докере, но в силу ряда причин этот сервис нужно устанавливать в систему (ubuntu 18.04).

Прошу вас сделать и отладить Dockerfile и build.sh запускающий сборку со всеми переменными-аргументами, чтобы положить в исходниках проекта.

  1. При сборке Dockerfile в качестве аргумента в docker build передавать имя(<servicename>), версию сервиса и архитектуру (amd64), чтобы по шаблону можно было быстро сделать похожий с другим именем.
  2. Пакет при установке должен создавать пользователя и группу, которые при удалении пакета тоже должны быть удалены. <servicename>.<servicename>
  3. Создавать /etc/<servicename> и копировать туда шаблон конфига.
  4. Исполняемый фал /usr/bin/<servicename>
  5. pid в /run/<servicename>/<servicename>.pid (при удалении тоже почистить).
  6. Поддерживать start,stop,restart,reload (сервис реагирует на SIGINT для корректной остановки и SIGHUP для чтения конфигурации )
  7. Чтобы логи можно было смотреть через journalctl

Бинарник и шаблон конфига для тестов предоставлю.

Оплата по факту демонстрации результата на вашем компьютере (запишите видео экрана с показом всех моментов или расшарьте десктоп с терминалом). Яндекс-деньги, перевод на на карту, безнал по счету.

Оцените пожалуйста свои трудозатраты и интерес. Конечный принятый результат хотел бы до 12 мая, в спокойном рабочем порядке.

За повышенное качество плачу дополнительно.

В отклике, пожалуйста, напишите какой командой узнать версию ядра или команду для версии дистрибутива ubuntu (извините за формальность, достали спамеры с автооткликами). Было бы неплохо пару слов о ваших компетенциях в администрировании linux, девопс практиках, для расширения круга передаваемых задач.

Критерии качества:
  1. Выполнены все требования, работает
  2. Задача решена максимально простым способом
  3. Решение поддается модификации, прозрачно для понимания и отладки, не требует кардинальной переделки если понадобится вдруг добавить пару файлов в установку. Этому пункту удовлетворяют bash-скрипты, но сложно с готовыми приложениями-комбайнами.
  4. Скрипты разумно документированы, не описывая операции (это и так понятно по коду), а с позиции «зачем это здесь», если не ясно из имен переменных и контекста. Программист, который захочет упаковать свой бинарник в deb через год, должен сориентироваться.
  5. Если сделаете заготовку чейнджлога и лицензии - будет отлично, но не обязательно.
Надеюсь на сотрудничество с грамотным инженером, который(которая) занудно учитывает все нюансы.
Отзывы
Результатом доволен, соответствует заданию по всем пунктами. В процессе были важные уточняющие вопросы и промежуточные результаты на тестирование, задолго до планируемого окончания. Рекомендую.
4 года назад
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Фрилансер
Отличный заказчик. Детальное ТЗ. Оплата без задержек сразу после выполнения задачи.
4 года назад