<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Recently Active Topics]]></title><description><![CDATA[A list of topics that have been active within the past 24 hours]]></description><link>http://bb.mirimonhub.com/recent</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Jul 2026 17:31:10 GMT</lastBuildDate><atom:link href="http://bb.mirimonhub.com/recent.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 18 Jun 2026 23:58:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Ubuntu 22.04 + Docker + Nginx Proxy Manager + Let’s Encrypt + ThingsBoard 구축 가이드]]></title><description><![CDATA[Ubuntu 22.04 + Docker + Nginx Proxy Manager + Let’s Encrypt + ThingsBoard 구축 가이드

개요

본 문서는 다음 환경을 기준으로 ThingsBoard Community Edition(CE)을 구축하는 방법을 설명한다.
구성도
Internet
│
▼
Nginx Proxy Manager
│
▼
ThingsBoard (Docker)
│
├─ PostgreSQL
└─ Redis
사용 환경

Ubuntu 22.04 LTS
Docker
Docker Compose
Nginx Proxy Manager(NPM)
Let’s Encrypt SSL
ThingsBoard CE
PostgreSQL
Redis

예제 도메인
iot.example.com
본인의 도메인으로 변경하여 사용한다.
⸻

DNS 설정

도메인 관리 페이지에서 A 레코드를 추가한다.
타입	호스트	값
A	iot	서버 공인IP
예시
iot.example.com
→ 123.123.123.123
DNS 전파 확인
nslookup iot.example.com
또는
dig iot.example.com
⸻

Docker 설치

패키지 업데이트
sudo apt update
sudo apt upgrade -y
Docker 설치
curl -fsSL https://get.docker.com | sudo sh
Docker Compose 확인
docker compose version
현재 사용자 권한 추가
sudo usermod -aG docker $USER
재로그인 후 확인
docker ps
⸻

작업 폴더 생성

mkdir -p ~/thingsboard
cd ~/thingsboard
⸻

docker-compose.yml 작성

services:
postgres:
image: postgres:16
container_name: tb-postgres
restart: unless-stopped
environment:
POSTGRES_DB: thingsboard
POSTGRES_USER: thingsboard
POSTGRES_PASSWORD: tb_password
volumes:
- ./postgres:/var/lib/postgresql/data
networks:
- tb-net
redis:
image: redis:7
container_name: tb-redis
restart: unless-stopped
command: redis-server --appendonly yes
volumes:
- ./redis:/data
networks:
- tb-net
thingsboard:
image: thingsboard/tb-postgres:latest
container_name: thingsboard
restart: unless-stopped
depends_on:
- postgres
- redis
environment:
TB_QUEUE_TYPE: in-memory
SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/thingsboard
SPRING_DATASOURCE_USERNAME: thingsboard
SPRING_DATASOURCE_PASSWORD: tb_password
REDIS_HOST: redis
REDIS_PORT: 6379
ports:
- "1883:1883"
- "5683:5683"
- "8080:9090"
volumes:
- ./tb-data:/data
- ./tb-logs:/var/log/thingsboard
networks:
- tb-net
networks:
tb-net:
⸻

ThingsBoard 실행

docker compose up -d
상태 확인
docker ps
⸻

ThingsBoard DB 초기화

최초 1회 실행
docker exec -it thingsboard bash
컨테이너 내부에서
/usr/bin/install/install.sh
설치 완료 후
exit
컨테이너 재시작
docker restart thingsboard
⸻

ThingsBoard 접속 확인

브라우저 접속
http://서버IP:8080
초기 관리자 계정
ID : sysadmin@thingsboard.org
PW : sysadmin
최초 로그인 후 반드시 비밀번호를 변경한다.
⸻

Nginx Proxy Manager 설정

NPM 관리자 페이지 접속
http://서버IP:81
기본 계정
admin@example.com
changeme
⸻

Proxy Host 생성

NPM 메뉴
Hosts
→ Proxy Hosts
→ Add Proxy Host
Domain Names
iot.example.com
Scheme
http
Forward Hostname
thingsboard
또는
서버IP
Forward Port
8080
옵션 체크
Websockets Support
Block Common Exploits
저장
⸻

Let’s Encrypt SSL 설정

생성한 Proxy Host 편집
SSL 탭 이동
SSL Certificate
Request a new SSL Certificate
체크
Force SSL
HTTP/2 Support
HSTS Enabled
이메일 입력 후 저장
예시
admin@example.com
정상 발급되면
https://iot.example.com
으로 접속 가능하다.
⸻

MQTT 포트 개방

방화벽 허용
sudo ufw allow 1883/tcp
MQTT TLS 사용 시
sudo ufw allow 8883/tcp
⸻

ThingsBoard MQTT 테스트

Device 생성
Devices
→ Add Device
Access Token 확인
Device Details
→ Copy Access Token
예시
abcd1234efgh5678
⸻
MQTT Publish 테스트
설치
sudo apt install mosquitto-clients -y
전송
mosquitto_pub 
-h iot.example.com 
-p 1883 
-t v1/devices/me/telemetry 
-u abcd1234efgh5678 
-m '{"temperature":25}'
ThingsBoard Dashboard에서 데이터 수신 확인 가능.
⸻

백업

PostgreSQL 백업
docker exec tb-postgres pg_dump 
-U thingsboard 
thingsboard \

backup.sql

복원
cat backup.sql | docker exec -i tb-postgres 
psql -U thingsboard thingsboard
⸻

업데이트

이미지 업데이트
docker compose pull
docker compose down
docker compose up -d
버전 확인
docker logs thingsboard
⸻

추천 운영 설정

자동 재시작
이미 적용됨
restart: unless-stopped
로그 확인
docker logs -f thingsboard
리소스 확인
docker stats
데이터 백업 권장
postgres/
tb-data/
tb-logs/
정기적으로 백업한다.
⸻
완료
최종 접속 주소
https://iot.example.com
기본 관리자 계정
sysadmin@thingsboard.org
sysadmin
이제 HTTPS가 적용된 ThingsBoard IoT 플랫폼을 운영할 수 있다.
]]></description><link>http://bb.mirimonhub.com/topic/7/ubuntu-22.04-docker-nginx-proxy-manager-let-s-encrypt-thingsboard-구축-가이드</link><guid isPermaLink="true">http://bb.mirimonhub.com/topic/7/ubuntu-22.04-docker-nginx-proxy-manager-let-s-encrypt-thingsboard-구축-가이드</guid><dc:creator><![CDATA[ktw]]></dc:creator><pubDate>Thu, 18 Jun 2026 23:58:21 GMT</pubDate></item><item><title><![CDATA[NextCloud구축해서 KiCAD 라이브러리 저장소로 활용하기]]></title><description><![CDATA[Nextcloud로 KiCad 라이브러리 서버 구축하기 (Docker Compose + Nginx Proxy Manager + Let's Encrypt)
KiCad를 사용하다 보면 심볼(Symbol), 풋프린트(Footprint), 3D 모델, 프로젝트 파일이 계속 늘어나게 됩니다.
특히 여러 PC에서 작업하거나 회사와 집에서 동시에 개발하는 경우 라이브러리 관리가 매우 중요합니다.
저는 KiCad 라이브러리와 프로젝트를 중앙에서 관리하기 위해 Nextcloud를 구축했습니다.
이번 글에서는 Ubuntu 22.04 서버에 Docker Compose를 이용하여 다음 환경을 구축하는 방법을 소개합니다.
구성 요소

Nextcloud
MariaDB
Redis
Nginx Proxy Manager
Let's Encrypt SSL
Docker
Docker Compose

최종 구성도
인터넷
    │
    ▼
kicad.example.com
    │
    ▼
Nginx Proxy Manager
    │
    ▼
Nextcloud
    │
 ┌──┴─────┐
 ▼        ▼
Redis   MariaDB


왜 Nextcloud인가?
KiCad 라이브러리를 Git으로 관리할 수도 있지만 다음과 같은 불편함이 있습니다.

대용량 3D 모델 관리
Windows 사용자 접근성
모바일 접근
파일 버전 관리
외부 협업

Nextcloud를 사용하면

웹 브라우저 접속
윈도우 탐색기 동기화
자동 백업
파일 버전 관리
HTTPS 보안
스마트폰 앱 지원

이 가능합니다.

구축 환경
서버
Ubuntu 22.04 LTS
Docker
Docker Compose

도메인 예시
kicad.example.com


Docker 설치
curl -fsSL https://get.docker.com | sudo sh

확인
docker --version
docker compose version


작업 디렉토리 생성
mkdir -p ~/nextcloud
cd ~/nextcloud


docker-compose.yml 작성
아래 파일 하나로 모든 서비스를 구축합니다.
version: "3.9"

services:

  npm:
    image: jc21/nginx-proxy-manager:latest
    container_name: npm

    restart: unless-stopped

    ports:
      - "80:80"
      - "81:81"
      - "443:443"

    volumes:
      - ./npm/data:/data
      - ./npm/letsencrypt:/etc/letsencrypt

  mariadb:
    image: mariadb:11
    container_name: nextcloud-db

    restart: unless-stopped

    command:
      --transaction-isolation=READ-COMMITTED
      --binlog-format=ROW

    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: nextcloudpassword

    volumes:
      - ./mariadb:/var/lib/mysql

  redis:
    image: redis:7-alpine
    container_name: nextcloud-redis

    restart: unless-stopped

    volumes:
      - ./redis:/data

  nextcloud:
    image: nextcloud:latest
    container_name: nextcloud

    restart: unless-stopped

    depends_on:
      - mariadb
      - redis

    environment:
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: nextcloudpassword
      MYSQL_HOST: mariadb

      REDIS_HOST: redis

    ports:
      - "8080:80"

    volumes:
      - ./nextcloud:/var/www/html

networks:
  default:
    name: nextcloud-network


컨테이너 실행
docker compose up -d

확인
docker ps

정상 실행 시
npm
nextcloud
nextcloud-db
nextcloud-redis

확인됩니다.

DNS 설정
도메인 등록
kicad.example.com

DNS 설정



타입
이름
값




A
kicad
서버 공인IP



예시
kicad.example.com → 123.123.123.123

확인
nslookup kicad.example.com


Nginx Proxy Manager 설정
접속
http://서버IP:81

기본 계정
admin@example.com
changeme


Proxy Host 생성
메뉴
Hosts
→ Proxy Hosts
→ Add Proxy Host

설정
Domain Names:
kicad.example.com

Scheme:
http

Forward Hostname:
nextcloud

Forward Port:
80

체크
Block Common Exploits
Websockets Support


SSL 인증서 발급
SSL 탭
Request a new SSL Certificate

선택
Force SSL
HTTP/2
HSTS

저장
Let's Encrypt 인증서가 자동 발급됩니다.

Nextcloud 최초 접속
브라우저
https://kicad.example.com

관리자 생성
관리자 계정
비밀번호

데이터베이스 설정
MySQL/MariaDB

Database User:
nextcloud

Database Password:
nextcloudpassword

Database Name:
nextcloud

Database Host:
mariadb

설치 완료

Nextcloud 최적화 설정
컨테이너 접속
docker exec -it nextcloud bash

설정
apt update
apt install nano -y

config.php 수정
nano /var/www/html/config/config.php

추가
'trusted_proxies' =&gt;
array (
  0 =&gt; 'npm',
),

'overwriteprotocol' =&gt; 'https',

'memcache.local' =&gt; '\\OC\\Memcache\\APCu',

'memcache.locking' =&gt; '\\OC\\Memcache\\Redis',

'redis' =&gt;
array (
  'host' =&gt; 'redis',
  'port' =&gt; 6379,
),


KiCad 라이브러리 구조 만들기
Nextcloud 폴더 생성
KiCad
 ├─ Symbol
 ├─ Footprint
 ├─ 3D_Model
 ├─ Project
 ├─ Datasheet
 └─ Template

예시
KiCad
 ├─ Symbol
 │   ├─ MCU
 │   ├─ Power
 │   └─ Sensor
 │
 ├─ Footprint
 │   ├─ QFN
 │   ├─ LQFP
 │   └─ Connector
 │
 └─ 3D_Model


Windows에서 동기화
Nextcloud Desktop Client 설치
공식 사이트
https://nextcloud.com/install

로그인 후
C:\KiCadLibrary

와 동기화

KiCad 라이브러리 연결
KiCad 실행
Preferences
→ Manage Symbol Libraries

추가
C:\KiCadLibrary\Symbol

풋프린트
Preferences
→ Manage Footprint Libraries

추가
C:\KiCadLibrary\Footprint


버전 관리 기능
Nextcloud는 자동으로 변경 이력을 보관합니다.
장점

실수 복구
라이브러리 롤백
프로젝트 복원
삭제 파일 복구


백업
전체 백업
tar czvf nextcloud_backup.tar.gz \
nextcloud \
mariadb \
redis \
npm

MariaDB 백업
docker exec nextcloud-db \
mysqldump \
-u root \
-prootpassword \
nextcloud &gt; nextcloud.sql


업데이트
docker compose pull
docker compose up -d


활용 예시
개인 개발자
집 PC
회사 PC
노트북

동일 라이브러리 사용

개발팀
회로설계팀
PCB설계팀
펌웨어팀

공동 라이브러리 관리

마무리
KiCad 프로젝트가 많아질수록 심볼, 풋프린트, 3D 모델 관리가 어려워집니다.
Nextcloud를 구축하면 단순한 파일 저장소가 아니라 다음과 같은 중앙 라이브러리 서버를 만들 수 있습니다.

KiCad 라이브러리 공유
프로젝트 동기화
버전 관리
HTTPS 보안
모바일 접근
자동 백업

Docker Compose와 Nginx Proxy Manager를 사용하면 설치도 간단하며 Let's Encrypt SSL 인증서도 무료로 적용할 수 있습니다.
개인 연구실, 메이커 공간, 회사 개발팀 모두에게 추천할 만한 구축 방법입니다.
]]></description><link>http://bb.mirimonhub.com/topic/6/nextcloud구축해서-kicad-라이브러리-저장소로-활용하기</link><guid isPermaLink="true">http://bb.mirimonhub.com/topic/6/nextcloud구축해서-kicad-라이브러리-저장소로-활용하기</guid><dc:creator><![CDATA[ktw]]></dc:creator><pubDate>Thu, 18 Jun 2026 11:41:32 GMT</pubDate></item><item><title><![CDATA[PartDB로 재고관리 웹사이트 구축하기]]></title><description><![CDATA[Part-DB로 전자부품 재고관리 웹사이트 구축하기 (Docker Compose + Nginx Proxy Manager + Let's Encrypt)
전자부품이 많아질수록 어디에 어떤 부품이 있는지 찾기 어려워집니다.
저는 저항, 커패시터, IC, 커넥터, 릴레이, MOSFET 등을 관리하기 위해 오픈소스 재고관리 시스템인 Part-DB를 구축했습니다.
이번 글에서는 Ubuntu 서버에서 Docker Compose를 이용하여 다음 서비스를 한 번에 구성하는 방법을 소개합니다.
구성 요소

Part-DB
MariaDB
Nginx Proxy Manager
Let's Encrypt SSL
Docker
Docker Compose

최종 구성도
인터넷
    │
    ▼
parts.example.com
    │
    ▼
Nginx Proxy Manager
    │
    ▼
Part-DB
    │
    ▼
MariaDB


1. 서버 준비
Ubuntu 업데이트
sudo apt update
sudo apt upgrade -y

필수 패키지 설치
sudo apt install -y curl wget git nano


2. Docker 설치
curl -fsSL https://get.docker.com | sudo sh

확인
docker --version


3. Docker Compose 확인
docker compose version


4. 작업 폴더 생성
mkdir -p ~/partdb
cd ~/partdb


5. docker-compose.yml 작성
아래 파일 하나로 모든 서비스를 구성합니다.
version: "3.9"

services:

  npm:
    image: jc21/nginx-proxy-manager:latest
    container_name: npm

    restart: unless-stopped

    ports:
      - "80:80"
      - "81:81"
      - "443:443"

    volumes:
      - ./npm/data:/data
      - ./npm/letsencrypt:/etc/letsencrypt

  mariadb:
    image: mariadb:11
    container_name: partdb-db

    restart: unless-stopped

    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: partdb
      MYSQL_USER: partdb
      MYSQL_PASSWORD: partdbpassword

    command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_unicode_ci

    volumes:
      - ./mariadb:/var/lib/mysql

  partdb:
    image: jbtronics/part-db1:latest
    container_name: partdb

    restart: unless-stopped

    depends_on:
      - mariadb

    environment:
      DATABASE_URL: mysql://partdb:partdbpassword@mariadb:3306/partdb

      APP_ENV: prod
      TRUSTED_PROXIES: 127.0.0.1,REMOTE_ADDR

    ports:
      - "8080:80"

    volumes:
      - ./partdb/uploads:/var/www/html/uploads
      - ./partdb/public_media:/var/www/html/public/media

networks:
  default:
    name: partdb-network


6. 컨테이너 실행
docker compose up -d

상태 확인
docker ps

정상 실행되면 다음 컨테이너가 보입니다.
npm
partdb
partdb-db


7. 도메인 설정
예시
parts.example.com

DNS에서 A 레코드 생성



타입
이름
값




A
parts
서버 공인IP



예시
parts.example.com → 123.123.123.123

확인
nslookup parts.example.com


8. Nginx Proxy Manager 접속
브라우저
http://서버IP:81

초기 계정
Email:
admin@example.com

Password:
changeme

첫 로그인 후 비밀번호 변경

9. Proxy Host 등록
메뉴
Hosts
→ Proxy Hosts
→ Add Proxy Host

설정
Domain Names:
parts.example.com

Scheme:
http

Forward Hostname:
partdb

Forward Port:
80

체크
Block Common Exploits
Websockets Support

저장

10. SSL 인증서 발급
SSL 탭 이동
Request a new SSL Certificate

체크
Force SSL
HTTP/2 Support
HSTS Enabled

이메일 입력 후 저장
몇 초 후 Let's Encrypt 인증서가 자동 발급됩니다.

11. Part-DB 최초 접속
브라우저 접속
https://parts.example.com

설치 마법사가 시작됩니다.

12. 관리자 계정 생성
최초 접속 시
관리자 계정
이메일
비밀번호

입력 후 완료

13. 한국어 설정
우측 상단
Settings
→ Language
→ 한국어

선택

14. 저장 위치 구조 만들기
Part-DB의 강력한 기능은 보관 위치 관리입니다.
예시
창고
 ├─ 서랍장1
 │   ├─ A1
 │   ├─ A2
 │   └─ A3
 │
 ├─ 서랍장2
 │   ├─ B1
 │   ├─ B2
 │   └─ B3
 │
 └─ 부품함

부품 등록 시 위치를 지정하면 쉽게 찾을 수 있습니다.

15. 부품 등록
예시
품명:
STM32G431K8T6

제조사:
STMicroelectronics

수량:
100

보관위치:
서랍장1-A3


16. 바코드 및 QR 코드 활용
Part-DB는 바코드와 QR코드를 지원합니다.
라벨 프린터를 이용하면
부품명
부품번호
QR코드
보관위치

를 출력하여 관리할 수 있습니다.
스마트폰으로 QR을 스캔하면 바로 해당 부품 페이지가 열립니다.

17. 공급업체 연동
지원되는 공급업체 예시
Mouser
DigiKey
LCSC
TME
Farnell

API를 등록하면 부품 정보를 자동으로 가져올 수 있습니다.

18. 백업
MariaDB 백업
docker exec partdb-db mysqldump \
-u root \
-prootpassword \
partdb &gt; partdb.sql

복원
docker exec -i partdb-db mysql \
-u root \
-prootpassword \
partdb &lt; partdb.sql

전체 데이터 백업
tar czvf partdb_backup.tar.gz \
mariadb \
partdb \
npm


19. 업데이트
이미지 최신화
docker compose pull

재시작
docker compose up -d


20. 운영 팁
추천 카테고리
저항
커패시터
인덕터
다이오드
트랜지스터
MOSFET
IC
MCU
센서
릴레이
커넥터
케이블
전원모듈
PCB
기구부품

추천 저장 위치
R-저항
C-커패시터
D-다이오드
Q-트랜지스터
U-IC
J-커넥터


마무리
Part-DB는 단순한 재고관리 프로그램이 아니라 전자부품 데이터베이스에 가깝습니다.
부품 검색, 재고 관리, 위치 관리, 바코드 관리, 공급업체 연동까지 가능하기 때문에 개인 연구실부터 기업 개발팀까지 활용할 수 있습니다.
Docker Compose와 Nginx Proxy Manager를 이용하면 설치도 매우 간단하며, Let's Encrypt SSL 인증서까지 무료로 적용할 수 있습니다.
부품이 늘어나기 시작했다면 엑셀 대신 Part-DB를 사용해보시기 바랍니다.
]]></description><link>http://bb.mirimonhub.com/topic/5/partdb로-재고관리-웹사이트-구축하기</link><guid isPermaLink="true">http://bb.mirimonhub.com/topic/5/partdb로-재고관리-웹사이트-구축하기</guid><dc:creator><![CDATA[ktw]]></dc:creator><pubDate>Thu, 18 Jun 2026 11:38:47 GMT</pubDate></item><item><title><![CDATA[NodeBB로 게시판 만들기]]></title><description><![CDATA[Ubuntu 22.04 + Docker + Nginx Proxy Manager + Let's Encrypt + Redis + NodeBB 설치 가이드
1. 개요
본 문서는 Ubuntu 22.04 서버에서 다음 서비스를 Docker Compose로 한 번에 구축하는 방법을 설명합니다.
구성 요소

NodeBB (게시판)
Redis (데이터 저장소)
Nginx Proxy Manager (역방향 프록시)
Let's Encrypt SSL 인증서 자동 발급
Docker
Docker Compose

최종 구성도
인터넷
    │
    ▼
도메인(nodebb.example.com)
    │
    ▼
Nginx Proxy Manager (80,443)
    │
    ▼
NodeBB (4567)
    │
    ▼
Redis (6379)


2. 서버 준비
Ubuntu 업데이트
sudo apt update
sudo apt upgrade -y

필수 패키지 설치
sudo apt install -y curl wget git nano


3. Docker 설치
curl -fsSL https://get.docker.com | sudo sh

설치 확인
docker --version

예상 출력
Docker version 28.x.x


4. Docker Compose 설치 확인
최근 Docker는 Compose Plugin이 포함되어 있습니다.
docker compose version

예상 출력
Docker Compose version v2.x.x


5. 프로젝트 폴더 생성
mkdir -p ~/nodebb
cd ~/nodebb


6. docker-compose.yml 작성
version: "3.9"

services:

  npm:
    image: jc21/nginx-proxy-manager:latest
    container_name: npm

    restart: unless-stopped

    ports:
      - "80:80"
      - "81:81"
      - "443:443"

    volumes:
      - ./npm/data:/data
      - ./npm/letsencrypt:/etc/letsencrypt

  redis:
    image: redis:7-alpine
    container_name: redis

    restart: unless-stopped

    command: redis-server --appendonly yes

    volumes:
      - ./redis:/data

  nodebb:
    image: nodebb/docker:latest
    container_name: nodebb

    restart: unless-stopped

    depends_on:
      - redis

    ports:
      - "4567:4567"

    environment:
      - NODEBB_URL=https://nodebb.example.com
      - NODEBB_PORT=4567

    volumes:
      - ./nodebb:/usr/src/app

networks:
  default:
    name: nodebb-network


7. 컨테이너 실행
docker compose up -d

상태 확인
docker ps

정상 실행 예시
npm
redis
nodebb


8. 방화벽 설정
UFW 사용 시
sudo ufw allow 80/tcp
sudo ufw allow 81/tcp
sudo ufw allow 443/tcp
sudo ufw reload

확인
sudo ufw status


9. 도메인 설정
예제
nodebb.example.com

DNS 설정



타입
이름
값




A
@
서버IP


A
nodebb
서버IP



예시
nodebb.example.com → 123.123.123.123

DNS 전파 확인
nslookup nodebb.example.com


10. Nginx Proxy Manager 접속
브라우저
http://서버IP:81

기본 로그인
Email:
admin@example.com

Password:
changeme

첫 로그인 시 비밀번호 변경

11. Proxy Host 생성
NPM 메뉴
Hosts
→ Proxy Hosts
→ Add Proxy Host

설정
Domain Names:
nodebb.example.com

Forward Hostname:
nodebb

Forward Port:
4567

체크
Block Common Exploits
Websocket Support

저장

12. SSL 인증서 발급
SSL 탭 이동
Request a new SSL Certificate

체크
Force SSL
HTTP/2 Support
HSTS Enabled

이메일 입력 후 저장
Nginx Proxy Manager가 Let's Encrypt 인증서를 자동 발급합니다.

13. NodeBB 초기 설정
브라우저 접속
https://nodebb.example.com

설치 화면이 나타납니다.

Redis 설정
Database Type : Redis
Host IP       : redis
Port          : 6379
Password      :


관리자 계정 생성
Admin Username : admin
Admin Email    : admin@example.com
Password       : 원하는 비밀번호

설치 완료

14. 관리자 페이지 접속
https://nodebb.example.com/admin

관리자 계정으로 로그인

15. 한글 게시판 설정
관리자 메뉴
Settings
→ General

Language
한국어 (ko)

저장 후 재시작
docker restart nodebb


16. 이메일 설정 (선택)
회원가입 인증메일 사용 시
관리자 페이지
Settings
→ Email

SMTP 예제
smtp.gmail.com
Port 587
TLS 사용


17. 백업
Redis 데이터
./redis

NodeBB 데이터
./nodebb

백업
tar czvf nodebb_backup.tar.gz nodebb redis npm

복원
tar xzvf nodebb_backup.tar.gz


18. 업데이트
이미지 다운로드
docker compose pull

재시작
docker compose up -d

불필요 이미지 정리
docker image prune -a


19. 트러블슈팅
SSL 발급 실패
확인
nslookup nodebb.example.com

80번 포트 확인
sudo ss -ntlp | grep :80


NodeBB 접속 불가
로그 확인
docker logs nodebb


Redis 연결 실패
로그 확인
docker logs redis

컨테이너 확인
docker ps


20. 완료
최종 접속 주소
https://nodebb.example.com

운영 서비스
Nginx Proxy Manager
Redis
NodeBB
Let's Encrypt SSL

Docker Compose 한 파일만으로 관리가 가능하며, SSL 인증서 갱신도 자동으로 처리됩니다.
]]></description><link>http://bb.mirimonhub.com/topic/3/nodebb로-게시판-만들기</link><guid isPermaLink="true">http://bb.mirimonhub.com/topic/3/nodebb로-게시판-만들기</guid><dc:creator><![CDATA[ktw]]></dc:creator><pubDate>Wed, 13 May 2026 21:37:29 GMT</pubDate></item></channel></rss>