ghost
Ghost
Эта роль настраивает ghost блог с использованием образа ghost от сообщества Docker.
Требования
Эта роль требует, чтобы docker
был доступен на хосте, а также модуль docker_container
в Ansible.
Для установки Docker можно использовать роль geerlingguy.docker
.
Для удовлетворения зависимостей модуля docker_container
можно установить пакет Python docker
с помощью роли geerlingguy.pip
.
Переменные роли
ghost__host
(обязательно, по умолчанию: localhost): Эта переменная имеет 2 основных применения: она определяет URL для блога и используется для задания имени контейнера. URL будет определен какhttps://{{ ghost__host }}
, а имя контейнера будет сгенерировано, заменив точки в переменной на подчеркивания и добавивghost_
перед именем.ghost__version
(необязательно, по умолчанию: 5.85.1): Тег образа Docker для ghost, который будет использоваться в контейнере. Смотрите теги образов ghost на dockerhub.ghost__base_dir
(необязательно, по умолчанию: /var/ghost-blog): Папка, в которой будут храниться постоянные файлы блога.ghost__blog_name
(необязательно, по умолчанию: Ghost Blog): Название для ссылки на конкретный экземпляр роли в Ansible. Не влияет на работоспособность сервиса.ghost__listen_host
(необязательно, по умолчанию: 127.0.0.1): Адрес, на котором контейнер будет публиковать сокет блога.ghost__listen_port
(необязательно, по умолчанию: 2368): Порт, на котором контейнер будет публиковать порт блога.ghost__configs
(необязательно, по умолчанию: {}): Словарь конфигураций, который будет передан контейнеру в виде переменных окружения. Смотрите документацию по конфигурации ghost для всех возможных значений и конкретно здесь о том, как преобразовать ключи в переменные окружения.
Рекомендации
Рекомендуется не открывать порт ghost напрямую для внешнего мира, а использовать обратный прокси, такой как nginx, для перенаправления соответствующего трафика.
Это упростит настройку TLS и распределение HTTPS порта между несколькими приложениями.
Пример плейбука
Следующий пример демонстрирует довольно распространенное использование роли:
- host: my-blog.my-domain.com
roles:
- role: salessandri.ghost
vars:
ghost__host: my-blog.my-domain.com
ghost__base_dir: /var/my-blog
ghost__blog_name: Личный блог
ghost__configs:
mail__from: '"Email моего блога" <[email protected]>'
mail__transport: 'SMTP'
mail__options__host: smtp.my-domain.com
mail__options__port: 465
mail__options__secureConnection: true
mail__options__auth__user: blog_mail_user
mail__options__auth__pass: '{{ blog_mail_password_vault }}'
Лицензия
MIT
Информация об авторе
Эта роль была создана в 2020 году Сантъяго Алессандри.
Установить
ansible-galaxy install salessandri/ansible-ghost
Лицензия
mit
Загрузки
126
Владелец