• Docker для Symfony 4 — от локалки до production

    Предистория


    Одним прекрасным днём мне понадобилось развернуть среду разработки для своего проекта. Vagrant уже порядком поднадоел и хотелось иметь единую среду разработки для всех участников проекта которая была бы идентичной production серверу. Соответственно наслушавшись информации про хипстерский docker, я решил начать с ним разбираться. Далее я постараюсь максимально подробно описать все шаги начиная от установки докера на локалке вплоть до разворачивания продуктива на KVM.

    Исходный стек технологий:

    — Docker
    — Symfony 4
    — nginx
    — php-fpm
    — postgresql
    — elasticsearch
    — rabbitmq
    — jenkins

    Железо:

    — ноутбук под ОС Ubuntu 16.04
    — продакшн сервер на хостинге KVM

    Почему кроме технологического стека я перечислил ещё и стек железа?

    Если вы никогда ранее не работали с докером, то вы можете столкнуться с рядом проблем, связанных именно с железом, операционной системой вашего ноутбука или типом виртуализации на хостинге.

    Первый и наверно самый важный аспект при начале работы с докером — это операционная система вашего ноутбука. Проще всего работать с докером именно на linux системах. Если вы работаете на Windows или Mac то у вас 100 % будут некоторые сложности, но эти сложности не будут являться критическими и при желании «нагуглить» как это исправляется не составит никаких проблем.

    Второй вопрос — это хостинг. Зачем нужен Hosting именно с типом виртуализации KVM? Причина в том, что виртуализация VPS разительно отличается от KVM и установить сам docker на VPS у вас попросту не выйдет, так как VPS распределяет ресурсы сервера динамически.

    Подитог: для самого быстрого старта на докере резоннее всего выбирать Ubuntu в качестве локальной операционки и KVM хостинг (либо собственный сервер). Далее рассказ пойдёт опираясь именно на эти две составляющие.
    Читать дальше →
  • Погружение в F#. Пособие для C#-разработчиков

    • Перевод

    Этот пост будет не о том, как «перевести» код с C# на F#: различные парадигмы делают каждый из этих языков лучшим для своего круга задач. Однако вы сможете оценить все достоинства функционального программирования быстрее, если не будете думать о переводе кода из одной парадигмы в другую. Настало время любопытных, пытливых и готовых изучать совершенно новые вещи. Давайте начнем!



    Все материалы из серии переводов русскоязычного сообщества F#-разработчиков вы сможете найти по тегу #fsharplangru.
    Читать дальше →
  • «Я бесполезный дурак и хочу уволиться» — 10 вопросов программисту, пилотный выпуск



      Привет, Хабр!

      Помните историю про Стива Джобса и Денниса Ритчи? Не хотим снова устраивать споры и читать морали, но правда остается правдой — тысячи крутых технарей сидят в тени, а их истории запрятаны в чулан.

      Мы в редакции Хабра намерены это исправлять. Отныне будем регулярно брать интервью у людей, про которых не пишут в СМИ и за которыми не гоняются в соцсетях. Так что если вам есть что о себе рассказать — готовьтесь.

      Чтобы вы поняли, как оно будет выглядеть, начнем со своего примера. Под катом 10 общих вопросов, которые мы будем задавать всем. Для пилота на них ответил fillpackart. (В этом месяце я брал вместе с ним несколько, кажется, неплохих интервью: раз, два, три). Почитайте, и если хотите рассказать о себе таким же образом, пишите сообщения мне или baragol.
      Читать дальше →
    • Как я автоматизировал дачу на 90%



        Дачная электрика – известная проблема, отношение к ней в большинстве случаев наплевательское, если не сказать хуже. Если есть возможность подключить что-то не так и не туда — это, конечно, будет сделано.

        Когда мы с женой начинали строить новую дачу вместо старой (где электрика прокладывалась многими поколениями и представляла собой жуткую мешанину из проводов и распаячных коробок), то прежде всего решили, что электрика будет грамотной, а дача – умной.
        Читать дальше →
      • О том, как я переизобретал медиацентр

        • Tutorial

        Raspberry Pi 3 model B


        С приобретением нового телевизора возник вопрос, какую приставку для него брать. Возможностей Chromecast уже не хватало и хотелось полноценный медиацентр на Kodi. Телевизор со SmartTV покупать не вариант — Kodi можно установить только на Android (из SmartTV платформ), а к нему я отношусь без особой любви, к тому же он уже внутри телевизора, а не в отдельной коробке, которую можно безбоязненно перепрошивать. Ну а зачем мне полноразмерный Android, со всеми его сервисами и программами в виртуальной машине, без полноценного GNU/Linux окружения и, скорее всего, без обновлений? По той же причине также были отметены многочисленные готовые медиацентры на Android, хотя та же приставка от Xiaomi довольно хороша. Можно было бы подумать насчёт SmartTV на TizenOS, но для него нет Kodi.

        Читать дальше →
      • Пять Docker-утилит, о которых вам стоит узнать

        • Перевод

        Источник изображения


        На просторах сети Интернет можно найти немало полезных утилит для Docker. Многие из них принадлежат к разряду Open Source и доступны на Github. В последние два года я достаточно активно использую Docker в большинстве своих проектов по разработке программного обеспечения. Однажды начав работать с Docker, вы осознаете, что он оказывается полезен для гораздо более широкого круга задач, нежели вы изначально предполагали. Вам захочется сделать с Docker еще больше, и он не разочарует!


        Docker-сообщество живет активной жизнью, ежедневно производя новые полезные инструменты. За этой бурной деятельностью достаточно сложно уследить. Поэтому я решил выбрать несколько наиболее интересных и полезных из ежедневно используемых мной Docker-утилит. Они делают работу более продуктивной, автоматизируя операции, которые пришлось бы выполнять вручную.


        Давайте посмотрим на утилиты, которые помогают мне в процессе докеризации всего и вся.

        Читать дальше →
      • Un-FuckUp-able Development Protocol (UDP)

          Недавно после очередного Team Building’a получил от одного Коллеги-Графомана письмо-притчу про большую кнопку «сделать всё хорошо». Он и раньше баловался изобретением велосипедов, но в этот раз конструкция показалась мне на редкость удачной. Кому интересно — прошу-приглашаю под кат. С его разрешения дословно:

          В эту сиесту на веранде практически никто не курил, потому, что все ушли на очередной двухдневный SCRUM-тренинг. Джонни устало окинул взглядом присутствующих: Дёму и Варю. Они тоже не были в восторге от происходящего, было слишком жарко и душно, лето в Долине было в самом разгаре, и казалось, что на улице даже жарче чем в Task Tracker’е.


          Читать дальше →
        • Прекратите скручивать!

          • Tutorial
          Ну действительно, прекратите. Есть куча прикольных штук для соединения самых разнообразных проводов, а все равно технология «откусить зубами изоляцию, скрутить, замотать изолентой» жива до сих пор.

          Дальше много текста, фотографий, разборок. Ну все как обычно
        • Переключения языка ввода в Windows с помощью CapsLock

          Предлагаемый мной способ не является чем-то уникальным и/или неизвестным. В любой из двух поисковых системы вы легко найдёте множество заметок о том, как настроить в Windows переключение языка ввода с помощью любой кнопки клавиатуры, прямо как в Linux, только чуть сложнее и с перезагрузкой. Однако, я так и не нашёл (тут можно меня поправить и предложить в комментариях ссылку) готовой инструкции, включающей в себя и такой немаловажный пункт, как спасение буквы Ё, а равно и обратного апострофа с тильдой. Таковую инструкцию я вам и предлагаю.
          Читать дальше →
        • Как не надо покупать на Ebay

            В связи с обещанием открыть полноценный русскоязычный сайт EBay на хабре появились хорошие посты о том, как покупать надо, например:

            Советы из личного опыта от olyapka,
            Как правильно покупать от darbin.

            У людей был удачный опыт покупок, и они им делятся. Я делюсь своим негативным опытом, чтобы другие пользователи поняли: сложного в покупках ничего нет, но лишняя осторожность все-таки не повредит. Всегда ведь лучше учиться на чужих ошибках, а не на своих!
            Семь ошибок по порядку
          • GTD на кухне: чем накормить голодного программиста

            • Tutorial
            imageИтак, как и обещал в первой части, продолжаем упрощать бытовую жизнь хабражителя. Сегодня 8 марта (кстати, девушки, поздравляю!) и части мужчин хочется порадовать своих женщин и освободить их от «рабского труда» на кухне, а другой части – приготовить для себя не традиционные пельмени\вареники\сосиски, а что-то посущественней.
            Вот несколько проверенных рецептов, которые пригодятся и первым, и вторым.

            Осторожно, много картинок. Голодным не входить!
            Читать дальше →
          • Как слушать музыку из iTunes на Android-устройствах. Пошаговая инструкция

            Добрый день!
            Последний месяц прошлого года (когда была написана эта статья) принес уйму радостных новостей всем любителям музыки, испытывавшим угрызения совести за пиратское содержимое своих плееров: сначала Яндекс сильно обновил приложение Яндекс.Музыка, потом обновился медиа-комбайн iTunes и, наконец, стало известно, что в России теперь доступен полноценный iTunes-store с фильмами, музыкой, блэкдж… кхм.

            Вобщем: «Ура, товарищи! Дождались.» И я вместе со всеми обрадовался, теоретически оценил все прелести iTunes-match, но стало как-то обидно за пользователей Android: нам что, по прежнему только торренты и грабберы? Несправедливо.



            Начал копать в сторону недооцененного, как мне кажется, сервиса Google Music и нашел, что искал, а именно:
            — управление музыкальной коллекцией при помощи iTunes;
            — возможность стримить музыку из своей коллекции на смартфон с Android;
            — возможность сохранить любой трек в смартфон.

            *всё нижесказанное точно работает в связке Windows 7 PC + iTunes 11 + Android 4.2. Но и с другими версиями проблем быть не должно.

            Читать дальше →
          • Хочется плакать от российских сайтов недвижимости

              Несколько лет назад уехал из России, а родители остались в Питере. Сейчас перед ними встал квартирный вопрос, меняются. Взялся им помочь, полез на сайты по недвижимости, офигел. Офигел от цен, это само собой. Но еще офигел от самих сайтов. После 2005 время на них будто застыло.

              Целей у моей писанины две: открыть для себя нормальный сайт по питерской недвижимости — вдруг такой есть. Это главное. И вторая цель — иногда сидишь на жопе, и вроде все ок… до тех пор, пока со стороны не ткнут носом в твое «дело». Так вот, товарищи, которые занимаются bn, bkn, bsn, eip, emls, itakа, — эти вот «интернет проекты» — это не нормально, это даже не позавчера.

              Вот как надо. Хотя бы.
            • Устраняем шум на встроенных звуковых картах

                Не секрет что многие жалуются на то что слышат как работает их комп при использовании встроенного в материнку звука. Слышно как перемещается мышь, как прокручиваются страницы, как ползают черви по винчестеру… :) Отключение различных входов звуковой карты (LineIn, Microphone, CD In) не помогает или помогает но не полностью. Недавно я столкнулся с этой проблемой аж на 2-х компьютерах за которыми слушаю музыку. Решение для XP и Windows 7 под катом.
                Читать дальше →
              • Командная строка на службе сервисов Google

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



                GoogleCL — это специальный проект, который упростит работу с сервисами Blogger, Picasa Web, YouTube, Google Docs и Google Calendar, благодаря командной строке. Это оболочка для Google Data API, поэтому вам сперва понадобится установить Python 2.6 (или 2.5) и Google Data APIs Python Client Library.
                Читать дальше →
              • 8-битный stop-motion

                  Видео-игра, сложенная на столе из кубиков и снятая в stop-motion. Вызывает очень ностальгичные чувства, жалко короткая. Интересен эффект перекрытия объектов другими — смотрится более реалистично, чем обычно.

                • Iji

                    Даже среди двумерных игр попадаются маленькие жемчужины. Кто помнит Worms, Jets'n'Guns и Braid?
                    Особенно приятно, когда в такие игры можно поиграть бесплатно и когда при этом ты получаешь от игры очень большое удовольствие.

                    Хотите увидеть ещё одну игру в таком стиле?
                    Пожалуйста.


                    Читать дальше →
                  • Chem4Word — редактор химических формул для Office

                      Команда Microsoft Research представляет свою новую работу — расширение для Office, которое позволяет добавлять и редактировать в офисных документах представления химических формул. Для создания формул в полной мере поддерживается специализированный язык разметки Chemical Markup Language.

                      image

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

                      via blogs.msdn.com/msr_er/archive/2010/03/23/introducing-chemistry-add-in-for-word.aspx
                    • Ты мне кредитка или не кредитка?..

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

                          Это мой перевод статьи Макса Клейна (Max Klein) — Your high IQ will kill your startup. Чесно говоря я не знаю кто он. Просто просматривая утром Delicious hotlist увидел его статью и, прочитав ее, захотел поделиться с вами.
                          ______________________________________________________________________

                          image

                          В 2004, будучи в Бразилии, я спускалcя по холму в Лапа, чтобы пообедать. Со мной был друг, с которым я познакомился в гостинице — звали его Офер. Темой нашего разговора был интеллект и его роль в успехе.

                          На встречу нам, со стороны дороги, вышел мужчина. В одной руке он держал нож, а в другой бутылку. По португальски он велел нам отдать свои вещи. Я был растерян и не знал, что делать. А Офер начал быстро говорить ему, чтобы тот нас не грабил.

                          Должен вам сказать, что Офер был израильским солдатом. Он ненавидел насилие в любой форме, но сам умел быть жестким.
                          Читать дальше →