Tentando instalar Discourse no Docker antes do servidor, apenas testando o software?

Olá,

Estou tentando testar o contêiner docker para o software discourse porque me disseram que ele vinha com o postsql, e tinha todos os bancos de dados configurados e prontos para uso. bitnami:discourse:latest do docker … Estou vendo isso no meu terminal


1. [Containers](app://dd/dashboard/containers)
2. /
3. tester

### tester

[bitnami/discourse:latest](app://dd/dashboard/images/local/details?imageId=sha256%3Aad71ab26c224ab1d50f4f57ec5ddbc7a549ff331f3cf442860307358d59f79d5&nameHint=bitnami%2Fdiscourse%3Alatest&nameHintType=image-identity)

440:3000

**STATUS**

Exited (1) (0 seconds ago)

LogsInspectBind mountsExecFilesStats

2025-05-16 15:43:26

discourse 19:43:26.78 INFO ==>

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> Welcome to the Bitnami discourse container

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> Subscribe to project updates by watching [https://github.com/bitnami/containers⁠](https://github.com/bitnami/containers)

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> Did you know there are enterprise versions of the Bitnami catalog? For enhanced secure software supply chain features, unlimited pulls from Docker, LTS support, or application customization, see Bitnami Premium or Tanzu Application Catalog. See [https://www.arrow.com/globalecs/na/vendors/bitnami/⁠](https://www.arrow.com/globalecs/na/vendors/bitnami/) for more information.

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==>

2025-05-16 15:43:26

discourse 19:43:26.80 INFO ==> Validating settings in POSTGRESQL_CLIENT_* env vars

2025-05-16 15:43:26

discourse 19:43:26.85 WARN ==> Hostname postgresql could not be resolved, this could lead to connection issues

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> Hostname redis could not be resolved, this could lead to connection issues

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> The DISCOURSE_DATABASE_PASSWORD environment variable is empty or not set. Set the environment variable ALLOW_EMPTY_PASSWORD=yes to allow a blank password. This is only recommended for development environments.

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> The DISCOURSE_REDIS_PASSWORD environment variable is empty or not set. Set the environment variable ALLOW_EMPTY_PASSWORD=yes to allow a blank password. This is only recommended for development environments.

2025-05-16 15:43:26

discourse 19:43:26.86 INFO ==> Creating Discourse configuration file

2025-05-16 15:43:26

discourse 19:43:26.90 INFO ==> Ensuring Discourse directories exist

2025-05-16 15:43:26

discourse 19:43:26.91 INFO ==> Trying to connect to the database server

2025-05-16 15:44:27

discourse 19:44:27.12 ERROR ==> Could not connect to the database

Alguém sabe o que fazer, pois pensei que os bancos de dados estivessem configurados na primeira execução? Alguém tem basicamente um gitbook ou um guia que possa ser usado para descobrir isso, sei que é de terceiros e deve ser instalado diretamente em uma máquina, então isso funcionaria a partir de um contêiner docker de um sistema operacional vazio como Debian?

Eu realmente só quero ver o backend do software, para ser honesto, e depois removo o contêiner, então estou procurando algo que possa ser configurado rapidamente.

Qual é a melhor maneira usando docker?

Executando através do meu terminal, estou preso nesta tela e não consigo encontrar nenhum script do discourse, na verdade toda a pasta está vazia? em bin


alex@PollockFarm Scripts % docker run -ti --rm bitnami/discourse /bin/bash

discourse 19:43:37.88 INFO ==>

discourse 19:43:37.88 INFO ==> **Welcome to the Bitnami discourse container**

discourse 19:43:37.88 INFO ==> Subscribe to project updates by watching **https://github.com/bitnami/containers**

discourse 19:43:37.89 INFO ==> Did you know there are enterprise versions of the Bitnami catalog? For enhanced secure software supply chain features, unlimited pulls from Docker, LTS support, or application customization, see Bitnami Premium or Tanzu Application Catalog. See https://www.arrow.com/globalecs/na/vendors/bitnami/ for more information.

discourse 19:43:37.89 INFO ==>

Obrigado

Alex

Não suportamos o Bitnami aqui, use os fóruns deles.

Se você deseja suporte aqui, use a instalação padrão.

2 curtidas

Ah, obrigado pela sua resposta rápida @merefield, você poderia sugerir o link direto para o fórum deles ou o que eles utilizam para comunicar esses problemas?

Entãooo

a melhor maneira é rodar isso no modo básico? Você pode usar Docker e uma instalação básica do Debian, e apenas instalar todos os pacotes necessários? Só quero usar para testes e quero que seja removível rapidamente.

1 curtida

Eu forneci um link na minha postagem :slight_smile:

1 curtida

Adoro a rapidez com que isso funciona! Estou realmente gostando do Discourse.

Obrigado novamente! @merefield.

Edição: Encontrei instruções passo a passo para a imagem do Docker:

https://hub.docker.com/r/bitnami/discourse

A maneira recomendada de obter a Imagem Docker do Bitnami Discourse é baixar a imagem pré-compilada do Docker Hub Registry.

docker pull bitnami/discourse:latest

Para usar uma versão específica, você pode baixar uma tag versionada. Você pode ver a lista de versões disponíveis no Docker Hub Registry.

docker pull bitnami/discourse:[TAG]

Se desejar, você também pode compilar a imagem você mesmo clonando o repositório, navegando até o diretório que contém o Dockerfile e executando o comando docker build. Lembre-se de substituir os placeholders de caminho APP, VERSION e OPERATING-SYSTEM no comando de exemplo abaixo pelos valores corretos.

git clone https://github.com/bitnami/containers.git
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t bitnami/APP:latest .

Como usar esta imagem

O Discourse requer acesso a um banco de dados PostgreSQL para armazenar informações. Usaremos a Imagem Docker do Bitnami para PostgreSQL⁠ para os requisitos do banco de dados.

Usando a Linha de Comando do Docker

Etapa 1: Criar uma rede

docker network create discourse-network

Etapa 2: Criar um volume para persistência do PostgreSQL e criar um contêiner 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

Etapa 3: Criar um volume para persistência do Redis e criar um contêiner 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

Etapa 4: Criar volumes para persistência do Discourse e iniciar o contêiner

$ 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

Etapa 5: Iniciar o contêiner Sidekiq

docker run -d --name sidekiq \
  --network discourse-network \
  --volume discourse_data:/bitnami/discourse \
  bitnami/discourse:latest /opt/bitnami/scripts/discourse-sidekiq/run.sh

Acesse sua aplicação em http://your-ip/

Executar a aplicação usando Docker Compose
curl -sSL https://raw.githubusercontent.com/bitnami/containers/main/bitnami/discourse/docker-compose.yml > docker-compose.yml
docker-compose up -d

Esteja ciente de que este arquivo não passou por testes internos. Consequentemente, recomendamos seu uso exclusivamente para fins de desenvolvimento ou teste. Para implantações prontas para produção, recomendamos fortemente a utilização de seu Bitnami Helm chart⁠ associado.

Se você detectar qualquer problema no arquivo docker-compose.yaml, sinta-se à vontade para relatá-lo ou contribuir com uma correção seguindo nossas Diretrizes de Contribuição⁠.

Solução de problemas do Discourse

Se você precisar executar comandos administrativos do Discourse, como Criar conta de administrador a partir do console⁠, você pode fazê-lo executando um shell dentro do contêiner e executando com as variáveis de ambiente apropriadas.

cd /opt/bitnami/discourse
RAILS_ENV=production bundle exec rake admin:create
2 curtidas

De nada @alex.diker e bem-vindo à Meta :slight_smile:

1 curtida

A maneira recomendada é seguir as instruções de instalação e remover os templates para postgres e redis e adicionar as configurações do banco de dados em variáveis de ambiente.

A configuração de dois contêineres (que você pode obter adicionando uma opção ao discourse-setup) é uma maneira fácil de descobrir como obter as variáveis de ambiente.

A vantagem em relação ao Bitnami é que você pode obter ajuda aqui e instalar plugins seguindo as instruções padrão.