Как я приручал Docker

main

О том, зачем нужен Docker — написано сто тысяч статей, и примерно столько же докладов. Но у меня возникла вполне реальная проблема, под которую Docker ложился идеально. Совсем недавно я начал один небольшой проект на Node.js. Сначала все шло легко и просто, но внезапно я понял, что понятия не имею, где в open source проектах хранят секретные данные. Ну, то есть, обычно всякие пароли и секретные ключи я храню в конфигурационных файлах, ведь репозитории приватные. А тут GitHub, открытый проект. После недолгого гугления оказалось, что реальные пацаны давно хранят секретные ключи в переменных окружения. Задавать пару десятков переменных окружения каждый раз вручную… Тут-то на ум и пришел Docker.

Хотя про Docker я слышал уже много, но попробовать его на чем-то реальном пока не получалось. И вот настал тот час. Сразу оговорюсь, что в статье я описываю настройку докера для локальной разработки, для продакшна такая конфигурация никак не пойдет.

Раз я строю контейнер для локальной разработки, ничего сложного мне не нужно. Мне нужен контейнер, в котором будет крутиться только один Node.js процесс. Исходник проекта я хочу подключать как внешний том из моей системы и монтировать его в директорию /var/app. При изменении исходников в моей системе Node.js процесс должен перезапускаться. Порт 3000 должен пробрасываться из контейнера в мою систему, чтобы я мог видеть свой проект в браузере. Вроде ничего сложного.

(далее…)

Начинаем карьеру программиста: Пишем код

Как начать карьеру программиста

Каждую неделю вижу на тостере очередной вопрос из серии: “Ребята, программить умею, вчера вот градусы в фаренгейты на C++ переводил! Как теперь работу найти?”. Самое печальное, что отвечают на эти вопросы, чаще всего, такие же новички, советуя всякую чушь, типа: “Иди для начала в opensource”, “Пойди на курсы «Супер-Стартап своими руками за 16 дней»”, “Устройся уборщицей, и дорасти до программиста”… На самом деле, начать карьеру программиста достаточно легко. Нет, конечно, если вчера ты узнал, что твой школьный товарищ Василий получает зарплату в три раза больше твоей за то, что программирует в каких-то интернетах, и тоже захотел программировать интернеты — мне тебя порадовать нечем. Я предполагаю, что читатель этих строк уже определился с будущей специализацией, прочел пару-тройку книжек и чувствует, что готов зарабатывать программированием на хлеб. Вот только не знает как.

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

(далее…)