• Linux-контейнеры дома: зачем и как




      Рассуждения


      При упоминании словосочетания «контейнерная виртуализация», многим на ум сразу же приходят Virtuozzo и OpenVZ, а также Docker. Ассоциируется же это все, в первую очередь, с хостингом, VPS и другими подобными вещами.

      Дома, на личных компьютерах многие используют виртуальные машины: в основном, пожалуй, Virtualbox. Как правило, для того, чтобы работая под Linux, иметь под рукой Windows или наоборот. Однако, при наличии множества родственных Linux-операционок, я стал замечать, что использование виртуальных машин — это, мягко говоря, нерационально.
      Читать дальше →
    • Принудительное введение в системы управления конфигурациями

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


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


        Введение для отшельников, которые не слышали что такое configuration management systems


        Уже многие годы (по айтишным меркам — три поколения как) существуют программы, которые позволяют автоматизировать процесс конфигурации серверов. Все эти программы сложные, они вторгаются в святую святых администраторов и заставляют их делать "всё не так, как раньше". Их изучение и интернализация (признание, что "так надо и так правильно") — абсолютный must have в карьере любого системного администратора.


        Главная боль любой системы управления конфигурациями


        Главная боль состоит в том, что система управления конфигурациями ломает привычную автоматику пальцев. Раньше вы могли поднять веб-сервер за 2 минуты почти не глядя на экран. Теперь вам предлагают потратить на абсолютно те же самые действия минут 15-20 (если вы хорошо знаете систему управления конфигурациями) или даже несколько дней (!!!!!), если вы её изучаете.


        Это преступление против личной эффективности. Уменьшить её в десять (0xA) раз — и это они называют прогрессом?

        Читать дальше →
      • Настраиваем интернет шлюз с прозрачным обходом блокировок (а рекламу таки будем блокировать)

        • Tutorial


        У вас есть старенький (или не очень) компьютер с двумя сетевыми картами? Вам надоела реклама и лишние телодвижения для обхода блокировок? Вы не хотите с этим мириться? Тогда добро пожаловать под кат.
        Читать дальше →
      • Охота на работу мечты

        Хотите попасть на работу в компанию мечты? Работать с конкретными технологиями? Нужна более высокая зарплата и различные бонусы? Рынок по вашей специализации высококонкурентен, и вы чувствуете, что у вас мало шансов?

        Множество людей, узнав о подходящей вакансии, подают резюме и сопроводительное письмо в компанию, тягостно ждут ответного звонка или e-mail’а, и получают в ответ тишину, или вежливый отказ. Кому-то везёт больше, они проходят на собеседование, после которого также могут получить отказ.
        Читать дальше →
      • Как работает Git

        • Перевод
        В этом эссе описана схема работы Git. Предполагается, что вы знакомы с Git достаточно, чтобы использовать его для контроля версий своих проектов.

        Эссе концентрируется на структуре графа, на которой основан Git, и на том, как свойства этого графа определяют поведение Git. Изучая основы, вы строите своё представление на достоверной информации, а не на гипотезах, полученных из экспериментов с API. Правильная модель позволит вам лучше понять, что сделал Git, что он делает и что он собирается сделать.

        Текст разбит на серии команд, работающих с единым проектом. Иногда встречаются наблюдения по поводу структуры данных графа, лежащего в основе Git. Наблюдения иллюстрируют свойство графа и поведение, основанное на нём.

        После прочтения для ещё более глубокого погружения можно обратиться к обильно комментируемому исходному коду моей реализации Git на JavaScript.
        Читать дальше →
      • Как перестать ходить на конференции участником и начать выступать? Советы от Андрея Акиньшина

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

          Андрей Акиньшин (@DreamWalker) — разработчик Rider в JetBrains, мейнтейнер проекта BenchmarkDotNet (библиотека для написания .NET-бенчмарков, поддержанная .NET Foundation), .NET MVP, кандидат физико-математических наук, серебряный призёр ACM ICPC.

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

          image
          Андрей Акиньшин — спикер многих конференций. Вот, например, одно из последних выступлений — «Поговорим про арифметику».
          Читать дальше →
        • UNIX-подобные системы содержат кучу костылей. Крах «философии UNIX»

            UPD от 2017-03-04: кто-то выполнил английский перевод. Обсуждение на Hacker News.

            В первой части статьи перечислю кучу костылей UNIX, и вообще разных недостатков. Во второй — про «философию UNIX». Статья написана наскоро, «полировать» дальше не хочу, скажите спасибо, что написал. Поэтому многие факты привожу без ссылок.

            Костыли в UNIX начали возникать ещё с момента появления UNIX, а это было ещё раньше появления не только Windows, но даже вроде бы Microsoft DOS (вроде бы, мне лень проверять, проверяйте сами). Если лень читать, хотя бы просмотрите все пункты, что-нибудь интересное найдёте. Это далеко не полный список, это просто те косяки, который я захотел упомянуть.
            Читать дальше →
          • Экосистема разработчиков в Telegram

              Лого

              Многим уже известно, что в мессенджере Telegram помимо прямого общения между двумя людьми также реализованы другие полезные инструменты:

              • Каналы — некий симбиоз сообщений и списков рассылки, где автор или коллектив авторов обращаются к своей аудитории, но аудитория не может влиять на содержимое канала.
              • Группы — своеобразные чаты между большим количеством пользователей, где каждый участник является полноправным представителем сообщества и может влиять на повестку дня.
              • Боты — специальные аккаунты в Telegram, созданные для того, чтобы автоматически обрабатывать и отправлять сообщения, часто используются для интеграции c сервисами.

              На днях на просторах Github, наткнулся на список каналов, групп, ботов в Telegram, который пополняется непосредственно разработчиками, использующими этот проект совместной разработки. Под катом можно увидеть саму IT-подборку, из которой каждый сможет выбрать что-то интересное для себя.
              Читать дальше →
            • Тяжелое расставание с Net-Tools

              • Tutorial

              Не секрет, что Net-Tools пора на почетную отставку. Да, многим админам и мне в том числе, до условного рефлекса Павлова знакомы команды ifconfig, route, netstat. На первый взгляд нет причин что-то менять, а лучшее как всегда враг хорошего.




              Давайте узнаем почему Net-Tools уже не тот и как безболезненно с него перейти на iproute2 .

              Читать дальше →
            • Поднимаем Owncloud с нуля с динамическим IP и Let's Encrypt. Тысяча слонов!*

              • Tutorial


              Давно хотел написать целостный туториал по поднятию Owncloud в условиях домашнего сервера или небольшой компании до 500 пользователей. Owncloud — это прекрасный open-source проект, который позволяет на собственной инфраструктуре поднять свой вариант сервера синхронизации. По возможностям очень похож на Dropbox, а в чем-то его и превосходит. Огромный плюс — отсутствие ограничений по объемам хранения, полный контроль над сервером. Минусы тоже очевидны: вам самим придется следить за всем этим безобразием и беспокоиться о надежности сервера, валяющегося на антресолях или в шкафу.

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

              1. Развертывание актуального LEMP-stack
              2. HTTPS. Let's Encrypt для Nginx с автоматическим обновлением сертификата
              3. Конфигурирование Nginx для Owncloud
              4. Кэширование php-apcu
              5. Подключение внешнего основного хранилища по NFS
              Читать дальше →