visilii's blog

Блог о программировании, инфосеке и чём-то ещё

Переезд сайта

October 20, 2024 — visilii

Тем временем, этот сайт переехал на новый сервер.

Я решил на практике применить полученные на первом этапе стажировки знания (да, в этот раз я прошёл первый этап, пусть и почти что чудом) и развернуть сайт, используя git и Docker. Раньше я не видел в этом большого смысла, но теперь понял, что это действительно удобно.


Развернуть контейнер с nginx и томом, указывающим на директорию с файлами сайта, труда не составило, а вот остальное...

Чтобы настроить Let's encrypt, я пользовался вот этим шаблоном и статьей к нему: wmnnd/nginx-certbot, однако даже так заставить certbot работать удалось лишь через пару часов и с такой-то матерью. Попутно меня ждал побочный квест с гитом, решившим вдруг показать характер. Зато я смог настроить хук, который автоматически при пуше изменений на сервер пуллит их в директорию, которую читает nginx - вышел некий рудиментарный CI/CD.

Хук работает очень просто - это bash-скрипт в удалённом репозитории на моем сервере, который срабатывает после получения изменений. Всё, что он делает - переходит в директорию с репозиторием и пуллит с удалённого репозитория. Можно найти тут: gist

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

P.S. "Веселый" побочный эффект git'а - слетевшая сортировка статей на главной странице. Bashblog, по всей видимости, опирается на дату создания соответствующего файла при размещении статей на главной. При этом на странице "Все посты" все спокойно.

UPD 20.10: только что обнаружил вот такой готовый контейнер nginx со встроенным certbot'ом: weejewel/nginx-with-certbot. Не пробовал его на практике и пока, наверное, останусь с текущей системой, но, наверное, работать с этим контейнером будет попроще.

Теги: мета, стажировка

badge: proud member of the 250KB Club badge: proud member of the darktheme.club

Домен предоставлен FreeDNS