TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

Намерени 219 подобни публикации

Търсене: #docker

当前筛选 #docker清除筛选
豆豆の垃圾桶

@fdd_JSB · Post #4314 · 09.06.2024 г., 17:39

6月8日,南京大学和中国科技大学的镜像源也宣布因上级通知关闭。 6月6日,上海交大的Docker Hub镜像加速器宣布因监管要求被下架。 Docker Hub是目前最大的容器镜像社区,但由于中国防火长城的限制,程序员开发者从Docker Hub上获取容器镜像的时候很不方便。Docker Hub 镜像加速器可以帮助开发者更快地下载 Docker 镜像。 能翻墙没影响 Docker 镜像转存 https://github.com/tech-shrimp/docker_image_pusher #docker

Hashtags

豆豆の垃圾桶

@fdd_JSB · Post #4217 · 17.12.2023 г., 16:02

docker-autocompose 把已经创建好的docker容器生成docker-compose.yaml 以 docker-compose 格式打印出所有容器: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose $(docker ps -aq) 项目地址 :docker-autocompose #docker

Hashtags

豆豆の垃圾桶

@fdd_JSB · Post #4211 · 14.12.2023 г., 15:32

docker-compose 非大陆服务器 Docker-compose 安装 sudo curl -L "https://github.com/docker/compose/releases/download/2.23.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose docker-compose --version #查看docker-compose版本 国内服务器安装 docker-compose curl -L https://get.daocloud.io/docker/compose/releases/download/v2.23.3/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose docker-compose --version #查看docker-compose版本 关联 Docker run转Docker compose 群辉安装Docker Compose #docker

Hashtags

infosecurity

@tg_infosec · Post #4139 · 30.03.2026 г., 11:32

• На хабре есть очень хороший лонгрид по Docker, в котором описаны механизмы контейнеризации + примеры, эксперименты и реализация. Подойдет новичкам, кто хотел погрузиться в данную тему. • Краткое содержание: ➡Chroot как первый популярный механизм, с помощью которого можно изолировать процесс в контексте файловой системы; ➡Namespaces как механизм, представляющий собой прослойку между желанием процесса получить ресурс и самим ресурсом; ➡Cgroups как ещё один механизм изоляции процессов, но только уже в контексте физических ресурсов системы; ➡OverlayFS как способ экономить место за счёт хитрой работы с файловыми системами контейнеров. Самое главное, поняли почему Docker слоёный пирог :); ➡Стандарт OCI как вещь, на которой держится вся современная контейнерная инфраструктура и утилиту runC, являющуюся эталонной реализацией OCI. ➡Читать статью [33 min]. #Docker

Hashtags

Repositorio data science

@repo_science · Post #4043 · 27.02.2024 г., 20:26

#docker 🐳 Docker & Kubernetes: The Practical Guide Learn Docker, Docker Compose, Multi-Container Projects, Deployment and all about Kubernetes from the ground up! ----- Main channel: @repo_science Coupons: @freecoupons_reposcience -----

Hashtags

infosecurity

@tg_infosec · Post #3551 · 05.09.2025 г., 12:33

👣 Docker Escape. • Очень крутой и содержательный урок (вебинар) про различные методы, которые злоумышленник может использовать для побега из контейнера Docker, а ещё мы разберем необходимые шаги для успешного побега на понятных примерах. Также обсудим причины возникновения таких уязвимостей и разберём, какие меры можно принять, чтобы предотвратить побег из контейнеров по следующим сценариям: ➡SYS_ADMIN; ➡SYS_PTRACE; ➡SYS_MODULE; ➡DAC_READ_SEARCH; ➡DAC_OVERRIDE; ➡docker soсket. ➡️https://youtu.be/biC3TO7OELY ➡️https://github.com/aleksey0xffd/docker-escape #Docker

Hashtags

infosecurity

@tg_infosec · Post #3012 · 12.03.2025 г., 12:35

👩‍💻 Play with Docker — онлайн-сервис для практического знакомства с Docker. • Интересный и уникальный ресурс для изучения Docker, который был создан еще в далеком 2017 году. Идея заключается в том, что после авторизации нас пересылает на один из облачных хостов, где стартует 4-часовая сессия «игровой площадки». В ней вы можете создавать новые сущности (instances), т.е. узлы тестового Docker-кластера. Каждый из них — это инсталляция легковесного дистрибутива Alpine Linux с редактируемым локальным IP-адресом. В них установлен Docker актуальной версии: https://labs.play-with-docker.com • А чтобы начинающим пользователям Docker было проще и лучше понять, чем же вообще можно (и полезно) заниматься в игровой площадке Docker, авторы Play with Docker дополнили свой сервис удобным ресурсом по обучению: ➡️https://training.play-with-docker.com • Дополнительная информация есть на GitHub: https://github.com/play-with-docker/play-with-docker #Docker

Hashtags

infosecurity

@tg_infosec · Post #3009 · 11.03.2025 г., 08:35

👩‍💻 Play with Docker — онлайн-сервис для практического знакомства с Docker. • Интересный и уникальный ресурс для изучения Docker, который был создан еще в далеком 2017 году. Идея заключается в том, что после авторизации нас пересылает на один из облачных хостов, где стартует 4-часовая сессия «игровой площадки». В ней вы можете создавать новые сущности (instances), т.е. узлы тестового Docker-кластера. Каждый из них — это инсталляция легковесного дистрибутива Alpine Linux с редактируемым локальным IP-адресом. В них установлен Docker актуальной версии: https://labs.play-with-docker.com • А чтобы начинающим пользователям Docker было проще и лучше понять, чем же вообще можно (и полезно) заниматься в игровой площадке Docker, авторы Play with Docker дополнили свой сервис удобным ресурсом по обучению: ➡️https://training.play-with-docker.com • Дополнительная информация есть на GitHub: https://github.com/play-with-docker/play-with-docker #Docker

Hashtags

infosecurity

@tg_infosec · Post #2920 · 07.02.2025 г., 16:29

👩‍💻Attacking Docker. • Статья включает в себя описание актуальных методов атак на Docker, описание различных уязвимостей и неправильных конфигураций, слабых мест в различных компонентах и другую полезную информацию: - Privileged Container; - Exposed Container APIs; - Container Escape; - Container Image Tampering; - Insecure Container Configuration; - Denial-of-Service (DoS); - Kernel Vulnerabilities; - Shared Kernel Exploitation; - Insecure Container Orchestration; - Insecure Container Images; - References. #Docker

Hashtags

infosecurity

@tg_infosec · Post #2880 · 24.01.2025 г., 16:32

👩‍💻 Docker guide. • Ловите полезную и объемную (50 страниц) шпаргалку по Docker, которая содержит примеры различных команд и их пояснение. • К слову, у авторов этого материала есть еще множество различных шпаргалок, в основном для разработчиков, но может быть кто-нибудь из Вас найдет для себя полезный материал: https://www.jsmastery.pro/resources?category=all #Docker

Hashtags

infosecurity

@tg_infosec · Post #2723 · 28.11.2024 г., 08:31

👩‍💻 Программы для управления Docker контейнерами. • 00:13 | Portainer. Management Docker; • 01:25 | Yacht. Management Docker; • 02:28 | Watchtower. Docker Update; • 03:44 | WUD. Whats-up-docker. Docker Update; • 05:26 | Dozzle - Logging; • 06:43 | Gotify. Alerting, Messenger. #Docker

Hashtags

123•••10•••1819
ПредишнаСтр. 1 от 19Следваща