Useful Tools | Linux | GitOps | DevOps
5.67K subscribers
133 photos
1 video
7 files
649 links
Полезные бесплатные opensource инструменты на все случаи жизни, а иногда и советы.

Понравился проект из поста - поддержи автора звездой!

Автор: @dmitry_malinin
Web: https://gitgate.d3.ru

Сотрудничество: @maxgrue
Обсуждение: @gittalk
Download Telegram
Dito- усовершенствованный обратный прокси-сервер уровня 7, написанный на Go.

Он обеспечивает гибкую поддержку мидлваре, настраиваемую обработку сертификатов для внутренних соединений, динамическую перезагрузку конфигурации, а также распределенное кэширование и ограничение скорости с помощью Redis.


Функции:

- Обратный прокси-сервер уровня 7 для обработки HTTP-запросов
- Динамическая перезагрузка конфигурации (горячая перезагрузка)
- Поддержка промежуточного программного обеспечения (например, пример аутентификации, ограничения скорости, кэширования)
- Распределенное ограничение скорости с помощью Redis
- Распределенное кэширование с помощью Redis
- Управление пользовательскими сертификатами TLS для серверов (поддержка mTLS)
- Манипулирование заголовками (дополнительные заголовки, исключенные заголовки)
- Поддержка ведения журналов с подробными журналами запросов и ответов.

https://github.com/andrearaponi/dito

опубликовано в @gitgate

#go #reverseproxy #level7 #cli #redis
👍7🔥6
the-little-go-book - русский перевод книги "The ​​Little Go Book"

"Маленькая книга о Go" распространяется под лицензией Attribution-NonCommercial-ShareAlike 4.0 International license. Вы не должны платить за эту книгу.

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

https://github.com/sefus/the-little-go-book

опубликовано в @gitgate

#book #go #translate
👍16🔥9
py2many - транспилятор (конвертер) кода Python для многих CLike языков

Поддерживается Rust, С++, Julia, Kotlin, Nim, Go, Dart, V, and D.

Python популярен, на нем легко программировать, но он имеет низкую производительность во время выполнения. Мы можем исправить это, транспилировав подмножество языка в более производительный статически типизированный язык.

Второе преимущество - безопасность. Написание чувствительного к безопасности кода на языке низкого уровня, таком как C, подвержено ошибкам и может привести к повышению привилегий. Для решения этого варианта использования существуют специализированные языки, такие как wuffs. py2many может быть более универсальным решением проблемы, когда вы можете проверить источник с помощью модульных тестов перед транспилированием.

Третий потенциальный вариант использования — ускорить код Python путем его передачи в расширение.

Swift и Kotlin доминируют в рабочем процессе разработки мобильных приложений. Однако не существует единого решения, которое бы хорошо работало для библиотек нижнего уровня, где есть желание совместно использовать код между платформами. Kotlin Mobile Multiplatform (KMM) является игроком на этом месте, но он еще не прижился. py2many предоставляет альтернативу.

Наконец, это отличный образовательный инструмент для изучения нового языка путем реализации серверной части для вашего любимого языка.

https://github.com/py2many/py2many

опубликовано в @gitgate

#python #rust #cpp #julia #kotlin #nim #go #dart #v #d #convert
👍12🔥5
bunster - скомпилируйте сценарии оболочки bash в статические двоичные файлы.

Вы когда-нибудь хотели, чтобы ваши сценарии оболочки были быстрее, портативнее и безопаснее? Bunster воплощает это в жизнь, преобразуя ваши сценарии оболочки в эффективные автономные двоичные файлы, которые легко распространять и развертывать на разных платформах (на данный момент поддерживается только Unix) .

В отличие от других инструментов, Bunster не просто оборачивает ваши сценарии в двоичный файл - он компилирует их в эффективный машинный код, используя мощную цепочку инструментов Go. Это обеспечивает производительность, портативность и надежность.

Технически говоря, Bunster на самом деле является shell-to-Go транслятором, который генерирует исходный код Go из ваших скриптов. Затем при необходимости используется Go Toolchain для компиляции кода в исполняемую программу.

https://github.com/yassinebenaid/bunster

опубликовано в @gitgate

#bash #go #binary #compiller
👍14🔥12
go-audit - альтернатива демону auditd, который поставляется со многими дистрибутивами.

Проект от Slack, написанный на Go, который предоставляет альтернативный способ взаимодействия с auditd, минуя работу через ausearch или логи напрямую.

Что делает go-audit:
- это демон, который подключается напрямую к audit netlink socket (/dev/audit).
- слушает все события ядра, передаваемые через audit subsystem (например, запуск процессов, доступ к файлам, ошибки и т.д.).
- подключается к ядру Linux через netlink
- парсит эти события в удобную JSON-структуру.
- может логировать их в stdout, файл или удалённый сервер
- фильтрует события по типу и передает их в другие системы (например, через syslog, HTTP или Kafka).

https://github.com/slackhq/go-audit

Подсказал: Alex Kup - @Lifailon

опубликовано в @gitgate

#security #auditd #go
🔥9👍6
wiki-go - быстрая, современная, простая WiKi, написанная на Go.

Создана для простоты и производительности с Markdown. Не использует базы данных, Все данные хранятся в виде обычных текстовых файлов.

Краткий обзор характеристик:
- полное редактирование Markdown с эмодзи, таблицами, диаграммами и математикой LaTeX
- умный полнотекстовый поиск с подсветкой и расширенными фильтрами
- иерархическая структура страницы с историей версий
- управление пользователями, контроль доступа и режим приватной вики
- комментарии с модерацией и поддержкой markdown
- мгновенная настройка через Docker или готовые двоичные файлы
- пользовательские логотипы, баннеры, шорткоды и многое другое...

https://github.com/leomoon-studios/wiki-go

Демо: https://wikigo.leomoon.com (User: admin Password: demo123)

Чтобы далеко не ходить - онлайн bcrypt генератор для создания админского пароля: https://bcrypt-generator.com

опубликовано в @gitgate

#wiki #go
1👍15🔥7
Documize Community - современное, автономное решение корпоративного уровня для управления знаниями с открытым исходным кодом.

- cоздан для технических и не технических пользователей
- разработан для унификации как клиентской, так и внутренней документации.
- организация с помощью меток, пространств и категорий

Он создан с использованием Golang + EmberJS и скомпилирован в один исполняемый двоичный файл, доступный для Linux, Windows и Mac.

Все, что вам нужно предоставить, это ваша база данных - PostgreSQL, Microsoft SQL Server или любой вариант MySQL.

Версия Community+ предоставляется бесплатно для первых пяти пользователей.

С помощью внешнего модуля умеет автоматически конвертировать .doc и .pdf документы в Markdown Так же поддерживает интеграцию с draw.io

https://github.com/documize/community

опубликовано в @gitgate

#wiki #documentation #go #pdf #doc #drawio
👍11🔥5
FrankenPHP - современный сервер приложений для PHP, созданный на основе веб-сервера Caddy. Написан на go, один исполняемый файл.

FrankenPHP дает вашим PHP-приложениям сверхвозможности благодаря своим потрясающим функциям: ранние подсказки, рабочий режим, возможности реального времени, автоматическая поддержка HTTPS, HTTP/2 и HTTP/3...

FrankenPHP работает с любым PHP-приложением и ускоряет ваши проекты Laravel и Symfony как никогда прежде благодаря официальной интеграции с рабочим режимом.

Поддерживает большинство расширений PHP и все расширения Caddy, встроенная поддержка Prometheus, автоматическая генерация, продление и отзыв HTTPS-сертификатов, мягкая перезагрузка и многое другое !

https://github.com/dunglas/frankenphp

Web: https://frankenphp.dev/ru/

PS. FrankenPHP теперь официально поддерживается PHP Foundation - https://les-tilleuls.coop/en/blog/frankenphp-is-now-officially-supported-by-the-php-foundation

опубликовано в @gitgate

#php #go #caddy #appserver #cert #metrics #prometheus
🔥12👍8
Dufs - уникальный служебный файловый сервер, который поддерживает статическое обслуживание, загрузку, поиск, управление доступом к фалам, webdav

Возможности:
- обслуживает статические файлы
- скачать папку как zip-файл
- загрузка файлов и папок (перетаскивание)
- создание/редактирование/поиск файлов
- возобновляемые/частичные загрузки/загрузки
- контроль доступа
- поддержка https
- роддержка webdav
- Легко использовать с curl

Или другими словами очень легковесная простенькая замена NextCloud в виде одного исполняемого файла (написано на Go, кросплатформенное) когда надо быстро и без вытребенек.

https://github.com/sigoden/dufs

Подсказал: Alex - @BEERSK

опубликовано в @gitgate

#file #share #webdav #go
👍13🔥7
doggo - современный DNS клиент командной строки (вроде dig), написанный на Golang. Он выводит информацию в аккуратной лаконичной манере и поддерживает такие протоколы, как DoH, DoT, DoQ и DNSCrypt.

Он полностью вдохновлен dog, написанным на Rust. Я хотел добавить в него некоторые функции, но поскольку я не знаю Rust, я посчитал это хорошей возможностью поэкспериментировать с написанием DNS клиента с нуля самостоятельно на Go. Отсюда и название dog + go => doggo.

Может запускаться и как web сервис.

https://github.com/mr-karan/doggo

Веб: https://doggo.mrkaran.dev

опубликовано в @gitgate

#dns #cli #webui #go
👍17🔥10