- Udemy or Udacity Courses
- A relationships between docker & devops
- Docker certification tips
- Ssl сертификат для docker web-app
- Top certifications for docker professionals
- What to expect from a docker certification?
- Как установить ssl сертификат на ubuntu docker?
- Как установить ssl-сертификат на onlyoffice docker сборки
Udemy or Udacity Courses
While training courses like these don’t necessarily end in a professional certification, you can be awarded a certificate at the end that might be valuable to your employer. Further, if you are an employer looking to bolster your team, Udemy and Udacity have comprehensive coursework, some of which is offered for free.
Udemy, for example, offers a course called Docker Mastery Tutorial, taught by a Bret Fisher, Docker pro who has trained more than 30,000 people. Among the highlights of this course :
Using these techniques, even un-certified Docker professionals can display leadership that makes teams more efficient and propels Docker developers to new heights in their careers.
A relationships between docker & devops
Docker supports some of the key principles of DevOps. Primarily, it allows for more agility and speed in programming. How does it do that?
Containerization platforms, like Docker, allow developers to quickly replicate development environments. This reduces the amount of time a DevOps team spends configuring the environment before moving onto the next phase in programming, reducing the chance of mistakes.
Importantly, Docker also allows automation to be configured. This includes:
Using programs like Docker, developers can write basic code and set up instructions, allowing Docker to do a lot of the heavy lifting. For this reason, it’s an ideal tool for DevOps teams that must be able to act fast and with precision.
Docker certification tips
Below are our favorite tips for developers looking to achieve a Docker certification:
Containerization allows businesses to be more flexible and better equipped to handle changes to the business ecosystem. It does this because, by using tools like Docker, developers can work faster, more consistently, and they can ensure the correct customizations and configurations follow a development project through every phase of development, avoiding mistakes that might only be found in the testing phase.
If your enterprise business uses Docker containers as part of your build, a certification or two within your developer-base can improve your organization’s use of the tool. And if you’re a developer working for an enterprise company, adding Docker certifications to your education can increase the value you offer as an employee.
Ssl сертификат для docker web-app
В данной статье я хочу поделиться с вами способом создания SSL сертификата для вашего веб-приложения работающего на Docker, т.к. в рускоязычной части интернета — подобного решения я не нашел.

Подробнее под катом.
У нас был docker v.17.05, docker-compose v.1.21, Ubuntu Server 18 и пинта чистого Let’sEncrypt. Не то что бы обязательно нужно было разворачивать продакшен на Docker. Но если начал собирать Docker, становится трудно остановиться.
Итак для начала приведу стандартные настройки — которые у нас были на этапе dev, т.е. без 443 порта и SSL в целом:
Далее собственно нам необходимо реализовать SSL. Честно сказать — штудировал com зону я порядка часов 2-х. Все предложенные варианты там — интересные. Но на текушем этапе проекта, нам(бизнесу) нужно было быстро и надежно прикрутить
SSL Let’sEnctypt
к
nginx
контейнеру и не более.
В первую очередь мы установили на сервер certbotsudo apt-get install certbot
Далее мы сгенерили сертификаты wildcard для нашего домена
sudo certbot certonly -d stomup.ru -d *.stomup.ru --manual --preferred-challenges dns
после выполнения certbot предоставит нам 2 TXT записи, которые нужно указать в настройках DNS.
_acme-challenge.stomup.ru TXT {тотКлючКоторыйВамВыдалCertBot}
И нажимаем enter.
После этого certbot проверит наличие этих записей в DNS и создаст для вас сертификаты.
если вы добавили сертификат, но certbot его не нашел — пробуйте перезапустить команду через 5-10 минут.
Ну вот мы и гордые обладатели Let’sEncrypt сертификата на 90 дней, но теперь нам нужно его прокинуть в Docker.
Для этого банальнейшим образом в docker-compose.yml, в секции nginx — прилинковываем дирректории.
Прилинковали? Супер — продолжаем:
Теперь нам нужно изменить конфиг nginx на работу с 443 портом и SSL в целом:
Собственно после этих манипуляций — идем в дирректорию с Docker-compose, пишем docker-compose up -d. И проверяем работоспособность SSL. Должно все взлететь.
Главное не забывайте что Let’sEnctypt сертификат выдается на 90 дней и вам необходимо будет его обновить через команду sudo certbot renew, а после перезапустить проект командой docker-compose restart
Как вариант — добавить данную последовательность в crontab.
На мой взгляд это самый простой способ подключения SSL к Docker Web-app.
P.S. Прошу принять во внимание что все скрипты представленные в тексте — не окончательны, сейчас проект находится на стадии глубокого Dev, по этому хочу вас попросить не критиковать конфиги- они будут еще много раз видоизменяться.
Top certifications for docker professionals
Below are the top certifications for Docker developers in 2021:
What to expect from a docker certification?
Docker certifications can include any number of certifications for DevOps that will improve your Docker skills, and that includes learning about peripheral principles in DevOps that can be applied to Docker. For that reason, Docker certifications are a much broader group than something like data science certifications.
These certifications usually consist of online or in-person coursework followed by a test. As with most certifications, tests can be online or taken in person at testing centers. Many certifying bodies offer proctored tests online, so check with the certification board to learn what steps they are taking to bring digital education and testing to you.
Beyond online coursework and testing, people interested in certifying in Docker are likely to certify in areas of IT like:
Because Docker has broad appeal across IT organizations, a Docker certification is an asset for any enterprise organization that wants to grow and scale.
Как установить ssl сертификат на ubuntu docker?
Все разобрался, создал один прокси-контейнер nginx туда смаунтил конфиг nginx и сертификат.
Спасибо ребятам из reg.ru помогли настроить сертификат. (как оказалось это не сложно, но я забыл как)
В docker-compose создал сеть типа nginx_net.
И потом каждый новый контейнер, если мне нужно его выставить на новом порту, настраиваю не на внешний порт, а на сеть nginx_net. А внешний порт открываю в прокси-контейнере.
Таким образом, сертификат проброшен только в один контейнер, а остальные контейнеры видят только локальную сеть докера nginx_net и нет необходимости каждый контейнер настраивать на внешние порты, ssl-сертификаты, домены и т.п.
Как установить ssl-сертификат на onlyoffice docker сборки
Поставив и настроив комьюнити версию этого пакета я столкнулся с тем что нет официальных рекомендаций как сгенерировать и запустить работу этого комплекса по защищенному протоколу используя сертификат от Letsencrypt. Этот короткий туториал поможет вам получить сертификат в течении 5-10 минут без сложных телодвижений.
Итак, поехали по шагам.
Я все делал на системе Ubuntu 18.04 запущенной в режиме ВМ на хост машине Proxmox. Данная ВМ была не единой в пуле этого хоста потому, если кому то понадобится, могу дать свой конфиг работающего решения для реверс прокси HAPROXY.
Остановим все контейнеры одной командой docker stop $(docker ps -a -q)
Удалим из системы certbot (если он у вас есть, хотя если вы ставите Onlyoffice на чистую систему его там быть не должно в принципе).
Зайдем на официальный сайт и в выпадающем меню выставим нужные параметры как на скриншоте:

3.1 Кому лень или он не разобрался переходим сразу на готовый линк. Выполняем инструкции с шага №1 по шаг №7 на этой странице. Напомню, в процессе по ссылке – вы должны будете установить пакет snapd, без него не заработает. Просто сделайте и все будет работать без лишних слов.
Запустим в консоли от рута certbot certonly –standalone sitename.ru (вместо sitename.ru укажите тот домен на котором будет виден из интернета ваш офисный сервер)
4.1 Если все пройдет Ок – вы получите сообщение что сертификаты сгенерированы и лежат на вашем сервере по адресу:
/etc/letsencrypt/live/sitename.ru/fullchain.pem /etc/letsencrypt/live/sitename.ru/privkey.pem
4.2 Далее, переименуем и перенесем в нужный каталог полученные сертификаты
cp /etc/letsencrypt/live/sitename.ru/fullchain.pem app/onlyoffice/CommunityServer/data/certs/onlyoffice.crt
cp /etc/letsencrypt/live/sitename.ru/privkey.pem /app/onlyoffice/CommunityServer/data/certs/onlyoffice.key
Перезагрузим сервер с офисом командой shutdown -r now Так будет надежней и наверняка все сервисы запустятся сами, т.к. сам пакет весьма большой и завязан на связанные между собой сервисы лучше его перезапустить целиком а не стартовать докер контейнеры по одному, так меньше шансов что какой то не запустился.
В принципе всё. Теперь зайдя по адресу sitename.ru вы должны попасть на корректно работающий портал документооборота.
На последок крайне желательно зайти в админку офиса и проверить:
Система подцепила ваш домен:

В настройках вы прописали доменное имя sitename.ru – в противном случае в письмах этого пакета будет некорректный адрес типа https://iuyhgi8798ygiknqwq – такой адрес или вымышленный или присваивается по имени докер контейнера – таким образом ни зайти на сайт, ни скачать документов – ничего. Вот такой вот капризный пакет.

Из пока не решенных проблем: а как собственно продлевать сертификаты? Как продлевать я знаю – на эту тему написано куча материала в интернете – но как автоматизировать их переименование и перенос в глубины каталогов на сервере пока не придумал. Если сообщество поможет дельным советом то прошу в комменты или в личку, добавлю в текст основной статьи.
На этом всё, позвольте откланяться.
