Я использую docker, в котором контейнер имеет свой файл /etc/hosts. Он очищается при перезагрузке. Я хотел бы создать скрипт для проверки записи и, если ее нет, добавить ее.
Итак, если в /etc/hosts есть запись следующего содержания:
10.1.1.1 important-server
Тогда ничего не делайте. Если не делать:
echo "10.1.1.1 important-server" >> /etc/hosts
Я предполагаю, что могу использовать sed
или awk
что-то подобное для сопоставления с образцом.
решение1
Как сказалРинзвиндв комментариях:
Вам следует добавить
--add-host="import-server:10.1.1.1"
команду docker run ИЛИ файл docker-compose.yml, если вы используете docker-compose.
Или в оболочке:
sudo -s
grep -Pq '^10\.1\.1\.1\s+important-server' /etc/hosts ||
echo '10.1.1.1 important-server' >> /etc/hosts
exit