Не хочу выглядеть некомпетентно, но где находится эта утилита запуска? Я искал в пути /discourse в образе Docker, который загрузил, но не нашёл никаких скриптов… возможно, я смотрю не туда? Вероятно, просто запущу стандартный контейнер Ubuntu и настрою всё сам для теста, как при обычной установке?
Нашёл такие инструкции:
Рекомендуемый способ получения образа Docker Bitnami Discourse — загрузить готовый образ из реестра Docker Hub.
docker pull bitnami/discourse:latest
Чтобы использовать конкретную версию, можно загрузить образ с тегом версии. Список доступных версий можно посмотреть в реестре Docker Hub.
docker pull bitnami/discourse:[TAG]
При желании вы также можете собрать образ самостоятельно, клонировав репозиторий, перейдя в каталог, содержащий файл Dockerfile, и выполнив команду docker build. Не забудьте заменить плейсхолдеры путей APP, VERSION и OPERATING-SYSTEM в примере ниже на соответствующие значения.
git clone https://github.com/bitnami/containers.git
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t bitnami/APP:latest .
Как использовать этот образ
Для хранения данных Discourse требуется доступ к базе данных PostgreSQL. Для выполнения требований базы данных мы будем использовать образ Docker Bitnami для PostgreSQL.
Использование командной строки Docker
Шаг 1: Создание сети
docker network create discourse-network
Шаг 2: Создание тома для персистентности PostgreSQL и запуск контейнера PostgreSQL
$ docker volume create --name postgresql_data
docker run -d --name postgresql \
--env ALLOW_EMPTY_PASSWORD=yes \
--env POSTGRESQL_USERNAME=bn_discourse \
--env POSTGRESQL_PASSWORD=bitnami123 \
--env POSTGRESQL_DATABASE=bitnami_discourse \
--network discourse-network \
--volume postgresql_data:/bitnami/postgresql \
bitnami/postgresql:latest
Шаг 3: Создание тома для персистентности Redis и запуск контейнера Redis
$ docker volume create --name redis_data
docker run -d --name redis \
--env ALLOW_EMPTY_PASSWORD=yes \
--network discourse-network \
--volume redis_data:/bitnami/redis \
bitnami/redis:latest
Шаг 4: Создание томов для персистентности Discourse и запуск контейнера
$ docker volume create --name discourse_data
docker run -d --name discourse \
-p 8080:8080 -p 8443:8443 \
--env ALLOW_EMPTY_PASSWORD=yes \
--env DISCOURSE_DATABASE_USER=bn_discourse \
--env DISCOURSE_DATABASE_PASSWORD=bitnami123 \
--env DISCOURSE_DATABASE_NAME=bitnami_discourse \
--env DISCOURSE_HOST=www.example.com \
--network discourse-network \
--volume discourse_data:/bitnami/discourse \
bitnami/discourse:latest
Шаг 5: Запуск контейнера Sidekiq
docker run -d --name sidekiq \
--network discourse-network \
--volume discourse_data:/bitnami/discourse \
bitnami/discourse:latest /opt/bitnami/scripts/discourse-sidekiq/run.sh
Доступ к вашему приложению осуществляется по адресу http://ваш-ip/
Запуск приложения с помощью Docker Compose
curl -sSL https://raw.githubusercontent.com/bitnami/containers/main/bitnami/discourse/docker-compose.yml > docker-compose.yml
docker-compose up -d
Обратите внимание: этот файл не проходил внутреннее тестирование. Поэтому мы рекомендуем использовать его исключительно для целей разработки или тестирования. Для развёртываний в производственной среде настоятельно рекомендуем использовать связанный Helm-чарт Bitnami.
Если вы обнаружите какие-либо проблемы в файле docker-compose.yaml, вы можете сообщить о них или внести исправление, следуя нашим правилам внесения вкладов.
Устранение неполадок в Discourse
Если вам нужно выполнить административные команды для Discourse, такие как создание учётной записи администратора из консоли, вы можете сделать это, запустив оболочку внутри контейнера и выполнив команду с соответствующими переменными окружения.
cd /opt/bitnami/discourse
RAILS_ENV=production bundle exec rake admin:create