Я настраиваю среду Dockerised на сервере Fedora в моей передней комнате. Поскольку я использую домашний маршрутизатор, IP-адрес назначается DHCP и время от времени меняется (IP-адрес stati c от моего интернет-провайдера стоит 15 долларов в месяц, и за это я мог бы просто заплатить за хостинг). Я использую dynu.com в качестве службы размещения DNS c и ddclient для обновления записей DNS на Dynu.
Я использую этот пакет для установки вещи до. Однако одной из указанных вещей является внешний IP-адрес сервера. Так как это изменяется, файл должен быть обновлен, чтобы отразить это.
Это моя текущая идея для решения. Сначала я установлю переменную окружения с текущим IP-адресом, затем напишу скрипт bash, который будет:
- Получить внешний IP-адрес с checkip.dynu.com с помощью curl;
- Проверьте это по переменной среды;
- Если они различаются, используйте команду
sed
, чтобы обновить адрес в файле, а затем используйте sed
, чтобы обновить переменную среды в * 1018. * папка с самым последним значением.
Скрипт будет запускаться как задание cron каждые 5 минут.
Это лучший способ выполнить sh это? Или это можно сделать, просто установив IP-адрес в файле для переменной среды для текущего внешнего IP, а затем просто используя скрипт для обновления переменной среды? Или есть еще более простой способ?