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 году Сантъяго Алессандри.

О проекте

Setup a ghost blog using docker container

Установить
ansible-galaxy install salessandri/ansible-ghost
Лицензия
mit
Загрузки
133
Владелец