# 서버에 설치하기 전에 Docker에서 Discourse를 테스트해 볼 수 있나요?

**URL:** https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503
**Category:** Self-hosting
**Tags:** unsupported-install, docker
**Created:** [5월 16, 2025, 8:00오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503 "2025-05-16T20:00:40Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![alex.diker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alex.diker/32/503482_2.png) [@alex.diker](https://meta.discourse.org/u/alex.diker)
#### Post date: [5월 16, 2025, 8:00오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/1 "2025-05-16T20:00:40Z")

</div>

안녕하세요,

Discourse 소프트웨어의 Docker 컨테이너를 테스트해 보고 있습니다. PostgreSQL이 번들로 제공되고, 모든 데이터베이스가 설정되어 바로 사용 가능하다고 들었기 때문입니다. Docker Hub에서 bitnami:discourse:latest를 사용 중인데 터미널에 다음과 같은 메시지가 표시됩니다.

```plaintext

1. [컨테이너](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

**상태**

종료됨 (1) (0초 전)

로그 검사 바인드 마운트 실행 파일 통계

2025-05-16 15:43:26

discourse 19:43:26.78 INFO ==>

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> Bitnami discourse 컨테이너에 오신 것을 환영합니다

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> [https://github.com/bitnami/containers⁠](https://github.com/bitnami/containers)를 지켜보며 프로젝트 업데이트를 구독하세요

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==> Bitnami 카탈로그의 엔터프라이즈 버전이 있다는 것을 아셨나요? 강화된 안전한 소프트웨어 공급망 기능, Docker에서 무제한 풀링, LTS 지원 또는 애플리케이션 커스터마이징이 필요하시다면 Bitnami Premium 또는 Tanzu Application Catalog를 확인해 보세요. 자세한 내용은 [https://www.arrow.com/globalecs/na/vendors/bitnami/⁠](https://www.arrow.com/globalecs/na/vendors/bitnami/)를 참고하세요.

2025-05-16 15:43:26

discourse 19:43:26.79 INFO ==>

2025-05-16 15:43:26

discourse 19:43:26.80 INFO ==> POSTGRESQL_CLIENT_* 환경 변수의 설정을 검증하는 중

2025-05-16 15:43:26

discourse 19:43:26.85 WARN ==> 호스트 이름 postgresql을 해석할 수 없습니다. 이로 인해 연결 문제가 발생할 수 있습니다

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> 호스트 이름 redis를 해석할 수 없습니다. 이로 인해 연결 문제가 발생할 수 있습니다

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> DISCOURSE_DATABASE_PASSWORD 환경 변수가 비어 있거나 설정되지 않았습니다. 빈 비밀번호를 허용하려면 환경 변수 ALLOW_EMPTY_PASSWORD=yes를 설정하세요. 이는 개발 환경에서만 권장됩니다.

2025-05-16 15:43:26

discourse 19:43:26.86 WARN ==> DISCOURSE_REDIS_PASSWORD 환경 변수가 비어 있거나 설정되지 않았습니다. 빈 비밀번호를 허용하려면 환경 변수 ALLOW_EMPTY_PASSWORD=yes를 설정하세요. 이는 개발 환경에서만 권장됩니다.

2025-05-16 15:43:26

discourse 19:43:26.86 INFO ==> Discourse 설정 파일 생성 중

2025-05-16 15:43:26

discourse 19:43:26.90 INFO ==> Discourse 디렉터리 존재 여부 확인 중

2025-05-16 15:43:26

discourse 19:43:26.91 INFO ==> 데이터베이스 서버에 연결 시도 중

2025-05-16 15:44:27

discourse 19:44:27.12 ERROR ==> 데이터베이스에 연결할 수 없음

```

처음 실행 시 데이터베이스가 설정된다고 생각했는데, 어떻게 해야 할지 아시는 분 계신가요? 이 문제를 해결하는 데 사용할 수 있는 gitbook이나 가이드가 있는 분도 있을까요? 제3자 소프트웨어이므로 머신에 직접 설치해야 한다고 알고 있는데, Debian과 같은 빈 OS의 Docker 컨테이너에서 이것이 작동할까요?

솔직히 소프트웨어 백엔드를 잠깐 보고 싶을 뿐이며, 이후에는 컨테이너를 제거할 계획입니다. 따라서 빠르게 시작할 수 있는 방법을 찾고 있습니다.

Docker를 사용하는 가장 좋은 방법은 무엇인가요?

터미널에서 실행하면 이 화면에서 멈춰 있고 discourse 스크립트를 찾을 수 없습니다. 실제로 bin 아래에 있는 전체 폴더가 비어 있습니다?

```plaintext

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

discourse 19:43:37.88 INFO ==>

discourse 19:43:37.88 INFO ==> **Bitnami discourse 컨테이너에 오신 것을 환영합니다**

discourse 19:43:37.88 INFO ==> **https://github.com/bitnami/containers** 를 지켜보며 프로젝트 업데이트를 구독하세요

discourse 19:43:37.89 INFO ==> Bitnami 카탈로그의 엔터프라이즈 버전이 있다는 것을 아셨나요? 강화된 안전한 소프트웨어 공급망 기능, Docker에서 무제한 풀링, LTS 지원 또는 애플리케이션 커스터마이징이 필요하시다면 Bitnami Premium 또는 Tanzu Application Catalog를 확인해 보세요. 자세한 내용은 https://www.arrow.com/globalecs/na/vendors/bitnami/를 참고하세요.

discourse 19:43:37.89 INFO ==>

```

감사합니다

Alex

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [5월 16, 2025, 8:03오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/3 "2025-05-16T20:03:23Z")

</div>

여기서는 Bitnami를 지원하지 않습니다. 해당 포럼을 이용하세요.

여기서 지원을 받으려면 표준 설치를 사용하세요.

---

<div class="post-metadata">

### Author: ![alex.diker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alex.diker/32/503482_2.png) [@alex.diker](https://meta.discourse.org/u/alex.diker)
#### Post date: [5월 16, 2025, 8:04오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/4 "2025-05-16T20:04:39Z")

</div>

아, 아쉽네요. 빠른 답변 감사드립니다, @merefield. 해당 포럼의 직접 링크나 이런 문제들을 소통하는 도구를 추천해 주실 수 있을까요?

그리고

가장 좋은 방법은 이걸 베어본(barebones)으로 실행하는 건가요? Docker와 기본적인 Debian 빌드를 사용해 필요한 패키지만 설치하면 될까요? 테스트 용도로만 사용할 예정이라서 나중에 쉽게 제거할 수 있으면 좋겠습니다.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [5월 16, 2025, 8:05오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/5 "2025-05-16T20:05:06Z")

</div>

제 게시물에 링크를 첨부해 두었습니다 🙂

---

<div class="post-metadata">

### Author: ![alex.diker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alex.diker/32/503482_2.png) [@alex.diker](https://meta.discourse.org/u/alex.diker)
#### Post date: [5월 16, 2025, 8:05오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/6 "2025-05-16T20:05:32Z")

</div>

이 도구가 얼마나 빠르게 작동하는지 정말 마음에 듭니다! Discourse를 점점 더 깊이 있게 다루고 있습니다.

다시 한번 감사합니다! @merefield.

수정: Docker 이미지에 대한 단계별 설명을 찾았습니다:

> **[bitnami/discourse - Docker Image](https://hub.docker.com/r/bitnami/discourse)**

Bitnami Discourse Docker 이미지를 사용하는 권장 방법은 [Docker Hub 레지스트리](https://hub.docker.com/r/bitnami/discourse)에서 미리 빌드된 이미지를 가져오는 것입니다.

```plaintext
docker pull bitnami/discourse:latest

```

특정 버전을 사용하려면 버전 태그를 지정하여 가져올 수 있습니다. Docker Hub 레지스트리에서 [사용 가능한 버전 목록](https://hub.docker.com/r/bitnami/discourse/tags/)을 확인할 수 있습니다.

```plaintext
docker pull bitnami/discourse:[TAG]

```

원하는 경우, 저장소를 클론하고 Dockerfile이 포함된 디렉터리로 이동한 후 `docker build` 명령을 실행하여 이미지를 직접 빌드할 수도 있습니다. 아래 예제 명령에서 `APP`, `VERSION`, `OPERATING-SYSTEM` 경로 플레이스홀더를 올바른 값으로 대체해야 합니다.

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

```

#### 이 이미지 사용법

Discourse는 정보를 저장하기 위해 PostgreSQL 데이터베이스에 액세스해야 합니다. 데이터베이스 요구사항을 위해 [Bitnami PostgreSQL Docker 이미지](https://github.com/bitnami/containers/tree/main/bitnami/postgresql)를 사용하겠습니다.

##### Docker 명령줄 사용

**1단계: 네트워크 생성**

```plaintext
docker network create discourse-network

```

**2단계: PostgreSQL 영구성을 위한 볼륨 생성 및 PostgreSQL 컨테이너 생성**

```plaintext
$ 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 컨테이너 생성**

```plaintext
$ 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 영구성을 위한 볼륨 생성 및 컨테이너 시작**

```plaintext
$ 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 컨테이너 시작**

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

```

`http://your-ip/`에서 애플리케이션에 액세스하세요.

##### Docker Compose를 사용하여 애플리케이션 실행

```plaintext
curl -sSL https://raw.githubusercontent.com/bitnami/containers/main/bitnami/discourse/docker-compose.yml > docker-compose.yml
docker-compose up -d

```

이 파일은 내부 테스트를 거치지 않았다는 점에 유의하세요. 따라서 개발 또는 테스트 목적으로만 사용하도록 권장합니다. 프로덕션 환경에 배포하려면 관련 [Bitnami Helm 차트](https://github.com/bitnami/charts/tree/main/bitnami/discourse) 사용을 강력히 권장합니다.

`docker-compose.yaml` 파일에서 문제가 발견되면, [기여 가이드라인](https://github.com/bitnami/containers/blob/main/CONTRIBUTING.md)을 따르며 문제를 보고하거나 수정을 기여할 수 있습니다.

##### Discourse 문제 해결

[콘솔에서 관리자 계정 생성](https://meta.discourse.org/t/create-admin-account-from-console/17274)과 같은 Discourse 관리 명령을 실행해야 하는 경우, 컨테이너 내부에서 셸을 실행하고 올바른 환경 변수와 함께 실행하면 됩니다.

```plaintext
cd /opt/bitnami/discourse
RAILS_ENV=production bundle exec rake admin:create

```

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [5월 16, 2025, 8:05오후 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/7 "2025-05-16T20:05:56Z")

</div>

환영합니다, @alex.diker! 메타에 오신 것을 환영합니다 🙂

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [5월 17, 2025, 3:50오전 UTC](https://meta.discourse.org/t/trying-to-install-discourse-on-docker-before-server-just-testing-software/366503/8 "2025-05-17T03:50:28Z")

</div>

> [@alex.diker](#):
>
> 가장 좋은 방법은 이것을 베어본(barebones)으로 실행하는 것입니다.

권장하는 방법은 설치 지침을 따르고 postgres 및 redis 템플릿을 제거한 후 환경 변수에 데이터베이스 설정을 추가하는 것입니다.

두 개의 컨테이너를 설정하는 방법(discourse-setup에 스위치를 추가하여 얻을 수 있음)은 환경 변수를 어떻게 설정해야 하는지 파악하는 쉬운 방법입니다.

Bitnami에 비해 여기에서 도움을 받을 수 있고 표준 지침에 따라 플러그인을 설치할 수 있다는 것이 장점입니다.
