Pull to refresh

Comments 16

Hello world можно сделать еще меньше - добавьте эти строчки в Cargo.toml

[profile.release]
strip = true
lto = true
panic = 'abort'

Для безопасности попробуйте еще https://console.cloud.google.com/gcr/images/distroless/GLOBAL/static-debian12:latest/details?pli=1
Но вы должны быть готовы что не сможете никак отлаживать контейнер, т.к. там вообще ничего нет, ни шелла ни даже glibc

Спасибо, это очень хорошая идея - оптимизировать сборку, буду дальше пробовать и экспериментировать

Ещё можно установить UPX и написать upx -9 ./path/to/compiled_program
И файл будет ещё меньше места занимать на диске,
но распаковываться будет , скорее всего, в оперативную память.

Может кому-нибудь пригодится, не для докера, а просто.

Так, если вы написали уже сервис на Go, то почему решили вернуться на Rust?

Тут скорее вопрос в плоскости саморазвития, у меня нет ответа почему Go или Rust лучше. Возможно когда будет написана парочка микросервисов на Rust, то ответ на этот вопрос появится.

P.S. Тот сервис так и живёт на Go

По go мало информации, надеялся на сравнение. Но за гайд большое благодарю

Счастье это закончится на первом крейте с сишными зависимостями. А ещё, надо не забыть про сертификаты и всякое такое.

Мне интересно в какой момент вам понадобятся такие крейты для вебни. Какой-то чудо tls крафтить?

Ну бред же полный!!!

Возьмите nodejs http2, накиньте graphql-yoga или еще что попроще - envelop, hive. Потом соберите это все в 1 бандл без внешних зависимостей. На выходе 30-70mb потребление памяти

То есть примерно столько же сколько и "PostgreSQL, MinIO, Nginx потребляли до 30 Мб оперативной памяти каждый"
Понятно, что nodejs это про скорость разработки и унификацию, а не про экономию памяти...
Но у автора то цель - простой сервис и минимум памяти

А зачем вообще нужен контейнер доя единственного исполняемого файла, который ни от чего не зависит?

Для удобства управления и унификации - есть пайплайн по сборке любых docker приложений, загрузке их в репозиторий docker образов на сервере и дальнейшей развёртке

Sign up to leave a comment.