DevOps
WARNING
Текст не отформатирован
Постараемся сделать конфигурацию максимально простую, требующую лишь базовые навыки системного администрирования. В основном будем делать напор на UI, чем на CLI.
Перейти к технической части ->
Начальная OC
В качестве OC для выделенной машины лучше всего выбирать debian. Debian является классикой для сервера, он не имеет yaml конфигов (как ubuntu) в которых нужно соблюдать табуляцую (подойдет только для любителей vim/vi). Имеет более простую настройку сети, особенно если в момент инсталляции вы не имеете прямого выхода в интернет. Есть хорошая альтернатива CentOS, но это на любителя. Ссылка на базовую установку...
Виртуализация
Для работы с виртуализацией возьмём классический стэк на базе docker
+ portainer
. Позволит быстро развернуть сайт.
Неспорю вы можете развернуть proxmox (или чистую KVM), vwware, затем нагородить кучу виртуалок, но есть один минус, это конфиги. К тому же вы поощряете разработчиков поднимать полностью ручное окружение. Напоминаю! Установка бэкенда laravel может быть не самой приятной вещью в вашей жизни, особенно если это не последняя версия. Вы смогли настройть? Молодцы! Пригласили нового члена команды? Мучайся сам!
Подготовление
Порядок настройки базового стэка для работы с веб-приложениями:
- Домен. Настройка DNS. Создание почтового домена и настройки для поднятия рейтинга
- Сертификаты и пароли
- Туннели для приложений. localhost-> внешняя сеть
- Виртуализация
- SSO
- Настройка приложений для администрирования, коммуникации, документации
- Внутренние связи
- Внешние связи
- ...
Я выкупил домен shalotts.site
для проведения опытов, именно на нём я буду создавать поддомены для внутренних ресурсов. Я выбрал dreamhost из-за простоты и цены. Ещё он хорошо совместим с cloudflare, поэтому я добавил в dns некоторые записи.
В cloudflare мы добавляем новый сайт с бесплатным тарифным планом free
, далее отправляемся в настройки DNS
и прописываем NS
записи (проверить, это кажется не нужно)
Далее я буду в каждый стэк добавлять контейнер c clouflared
, чтобы пробрасывать приложения из localhost
. Из данных для контейнера будет необходим только token
наружу.