Pull to refresh
-17
0.1
Send message

Для debian based набросал себе скриптов и конфигов. Проще чем в официальной доке.

sudo apt install rootlesskit

#!/bin/bash
# Запускать НЕ от рута и НЕ через sudo. systemctl спросит пароль. 
# Системные сервисы важно задизаблить, иначе они не дадут запуститься безрутовым.
set -e
systemctl disable docker.service docker.socket containerd.service
docker --context=default context create rootless --docker "host=unix://${XDG_RUNTIME_DIR}/docker.sock" --description "Rootless mode"
docker --context=default context use rootless
# ~/.config/systemd/user/docker.service
[Unit]
Description=Docker Application Container Engine (Rootless)
Documentation=https://docs.docker.com/go/rootless/
[Service]
ExecStart=/usr/bin/rootlesskit --disable-host-loopback --net=slirp4netns --port-driver=builtin --copy-up=/etc --copy-up=/run --propagation=rslave /usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
Type=notify
NotifyAccess=all
KillMode=mixed
[Install]
WantedBy=default.target

systemctl --user enable docker

reboot

По вкусу (чтобы запускался если даже не залогинился)

sudo loginctl enable-linger $(whoami)

Не лучше - таким образом этот пользователь можно сказать становится рутом. И через монтирование можно будет поменять любой файл на хостовой системе без sudo. Для sudo хотя бы требуется пароль.

Лучше уж rootless mode

https://docs.docker.com/engine/security/rootless/

В плохом примере мы видим и бизнес логику и низкоуровневые операции в одном месте

А в хорошем мы видим не работающий код ;)

Отжимаем бизнес "по другому"

Эти ваши "мы не блокируем ютуб" как еще воспринимать ?

Когда то VK отжали у дурова, а теперь надо отжать аудиторию у ютуба ?

Извините, но когда я хочу послушать клип, а мне говорят "он без звука потому что мы так решили, и пока не знаем" - идите нах.

> Почему они уходят?

Началась "неделя" Нинтендо ? Все что связано с консолями заблокировано вдвое ?

> В подобных случаях я восторгаюсь Сатоши

Сноуден круче. Все забывают постоянно про "человеческий фактор"

Как бы красиво не звучала идея о "защите детей от педофилов", кто то на этом заработает деньги.

Немножко противно, что в политику идут чтобы заработать, но живем с тем что есть.

В готовом виде я такую утилиту не нашел и написал свою: mcdig.

avahi-browse ?

В пакете avahi-utils

Для обеспечения защиты токена я храню его в отдельном файле secrets.py и импортирую.

.env же для этого придумали. И например пакет dotenv.
Можно напрямую в ENV задавать значения (в контейнерах удобно), а можно в файлике хранить. Приоритет у реального ENV

Мне нравится подход как в symfony - в .env какие нибудь значения "по умолчанию" и файлик в репе (чтобы было видно какие вообще переменные доступны) и еще один .env.local который в .gitignore и где уже реальные прописываются. Приоритет (от меньшего к большему) .env -> .env.local -> реальный ENV

Помогаю - делаем, потому что можем и ничто за это нам не будет.

Я вообще удивляюсь все этим "правилам", которые для себя же придумывают чтобы самим же их нарушить )

Зачем мне докер например для этого https://github.com/symfony-cli/symfony-cli ?

Закинул в ~/.local/bin и не паришься.

composer там же у меня живет (он сам может обновляться через self-upgrade), хоть и есть в стандартных репах.

В /usr/local/bin - да, замусоривание системы. А в хоме - это другое )

PS. docker у меня кстати тоже rootless и какает в ~/.local/share/docker

гораздо правильнее и полезнее потратить 5 секунд времени и помочь мейнтейнерам своего дистрибутива опакетить недостающее ПО

Удачи с дебианом за 5 секунд сделать )

А установку пакетов в обход стандартных репозиториев я считаю еще большим злом (как минимум нужен рут, а в пакет можно запихать скриптов на что фантазии хватит). И тем более добавление каких то левых реп в систему.

Бинарник для скачивания бинарников без зависимостей, сам имеет зависимости )

$ binup

binup: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

$ lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04 LTS
Release:        24.04
Codename:       noble


$ apt show openssl

Package: openssl
Version: 3.0.13-0ubuntu3.2

...

деградируют прогресс

Мощно. Это как вперед, только назад ?

А они должны ?

Понятно что это "приятный бонус" для работодателя, но серверами разве не должны другие люди заниматься ?

На других языках по другому ?

Каждый питонист знает как настроить rate limit в nginx или отбросить ненужные запросы чтобы они даже до приложения не доходили ?

-- ADDED ибо косякопор (лимит на сообщения)

Я понял о чем речь. Видимо про это https://habr.com/ru/articles/179399/

В мозгах ПХП разработчика нет таких проблем как неочищенная память, статические переменные между запросами и т.п.

Есть запрос, твой скрипт должен вернуть ответ - ВСЕ.

Каждый запрос "новая жизнь".

Очень удобно, но не всегда, как вы заметили. Так и живем )

Ошибка была в том что была ошибка. Это все что я прочитал из этой новости.

Да пора уже сажать, за то что пишешь код.

Ибо всем известно - не написаный код не имеет багов.

C:\Windows\System32\drivers\CrowdStrike

Ясен пень что кривой драйвер для виндовс не запустится на mac и linux.

Говорим очевидности чтобы сгладить вину ? )

@Wesha

Красавчик, пизданул херню, а мне распинаться )

Ведь в интернете кто то не прав )))

Information

Rating
3,012-th
Registered
Activity