Dolibarr Docker 설치 가이드: 중소기업을 위한 ERP/CRM 자체 호스팅




Dolibarr는 프랑스에서 시작되어 전 세계적으로 사랑받는 오픈소스 ERP/CRM 솔루션입니다. 특히 중소기업과 프리랜서를 위해 설계되어 복잡한 설정 없이도 바로 사용할 수 있습니다. 고객 관리, 인보이스, 견적, 재고, 프로젝트 관리 등 비즈니스에 필요한 핵심 기능을 모두 갖추고 있습니다.

Dolibarr 주요 특징

Dolibarr는 “필요한 기능만 활성화”하는 모듈식 철학을 따릅니다.

핵심 모듈

  • 고객/공급업체 관리: 거래처 정보, 연락처, 카테고리 관리
  • 영업 관리: 견적서, 판매 주문, 계약, 구독 관리
  • 청구/인보이스: 인보이스 생성, 반복 청구, 결제 추적
  • 재고 관리: 제품, 창고, 재고 이동, 배송
  • 구매 관리: 발주서, 입고, 공급업체 인보이스
  • 프로젝트 관리: 작업, 타임시트, 간트 차트
  • HR: 직원 관리, 휴가, 경비
  • POS: 판매 시점 관리 (터치 인터페이스)

장점

  • 매우 가벼운 리소스 사용
  • 직관적인 UI
  • 85개 이상 언어 지원 (한국어 포함)
  • 활발한 커뮤니티
  • 다양한 외부 모듈
  • 완전 무료 오픈소스

사전 요구 사항

  • Docker 및 Docker Compose 설치
  • 최소 512MB RAM
  • 2GB 이상 저장 공간

Docker Compose로 Dolibarr 설치

기본 설치

# docker-compose.yml
services:
  mariadb:
    image: mariadb:latest
    container_name: dolibarr-db
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-rootpassword}
      MYSQL_DATABASE: ${MYSQL_DATABASE:-dolidb}
      MYSQL_USER: ${MYSQL_USER:-dolidbuser}
      MYSQL_PASSWORD: ${MYSQL_PASSWORD:-dolidbpass}
    volumes:
      - mariadb-data:/var/lib/mysql
    networks:
      - dolibarr-net

  dolibarr:
    image: dolibarr/dolibarr:latest
    container_name: dolibarr
    restart: unless-stopped
    depends_on:
      - mariadb
    ports:
      - "8080:80"
    environment:
      DOLI_DB_HOST: mariadb
      DOLI_DB_NAME: ${MYSQL_DATABASE:-dolidb}
      DOLI_DB_USER: ${MYSQL_USER:-dolidbuser}
      DOLI_DB_PASSWORD: ${MYSQL_PASSWORD:-dolidbpass}
      DOLI_URL_ROOT: ${DOLI_URL_ROOT:-http://localhost:8080}
      DOLI_ADMIN_LOGIN: ${DOLI_ADMIN_LOGIN:-admin}
      DOLI_ADMIN_PASSWORD: ${DOLI_ADMIN_PASSWORD:-admin}
      DOLI_INSTALL_AUTO: 1
      DOLI_INIT_DEMO: 0
      PHP_INI_DATE_TIMEZONE: Asia/Seoul
    volumes:
      - dolibarr-documents:/var/www/documents
      - dolibarr-custom:/var/www/html/custom
    networks:
      - dolibarr-net

volumes:
  mariadb-data:
  dolibarr-documents:
  dolibarr-custom:

networks:
  dolibarr-net:
    driver: bridge

환경 변수 파일

# .env
MYSQL_ROOT_PASSWORD=your_secure_root_password
MYSQL_DATABASE=dolidb
MYSQL_USER=dolidbuser
MYSQL_PASSWORD=your_secure_db_password
DOLI_URL_ROOT=http://dolibarr.yourdomain.com
DOLI_ADMIN_LOGIN=admin
DOLI_ADMIN_PASSWORD=your_admin_password

설치 및 실행

# 디렉토리 생성 및 이동
mkdir dolibarr && cd dolibarr

# 영구 저장소 디렉토리 생성 (선택사항)
mkdir -p data/mariadb data/documents data/custom

# docker-compose.yml 및 .env 파일 생성

# 컨테이너 실행
docker compose up -d

# 로그 확인
docker compose logs -f dolibarr

# 약 1-2분 후 브라우저에서 접속
# http://localhost:8080
# 로그인: admin / admin (또는 .env에서 설정한 값)

고급 설정

로컬 볼륨 마운트 (백업 용이)

# docker-compose.yml
services:
  mariadb:
    volumes:
      - ./data/mariadb:/var/lib/mysql

  dolibarr:
    volumes:
      - ./data/documents:/var/www/documents
      - ./data/custom:/var/www/html/custom

PostgreSQL 사용 설정

Dolibarr는 PostgreSQL도 지원합니다:

# docker-compose.yml
services:
  postgres:
    image: postgres:15
    container_name: dolibarr-db
    restart: unless-stopped
    environment:
      POSTGRES_DB: dolidb
      POSTGRES_USER: dolidbuser
      POSTGRES_PASSWORD: dolidbpass
    volumes:
      - postgres-data:/var/lib/postgresql/data
    networks:
      - dolibarr-net

  dolibarr:
    image: dolibarr/dolibarr:latest
    environment:
      DOLI_DB_TYPE: pgsql
      DOLI_DB_HOST: postgres
      DOLI_DB_PORT: 5432
      DOLI_DB_NAME: dolidb
      DOLI_DB_USER: dolidbuser
      DOLI_DB_PASSWORD: dolidbpass
      # PostgreSQL 사용 시 수동 설치 필요
      DOLI_INSTALL_AUTO: 0

volumes:
  postgres-data:

Traefik 리버스 프록시 연동

# docker-compose.yml
services:
  dolibarr:
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.dolibarr.rule=Host(`dolibarr.yourdomain.com`)"
      - "traefik.http.routers.dolibarr.entrypoints=websecure"
      - "traefik.http.routers.dolibarr.tls.certresolver=letsencrypt"
      - "traefik.http.services.dolibarr.loadbalancer.server.port=80"
    networks:
      - traefik-public
      - dolibarr-net

networks:
  traefik-public:
    external: true

모듈 활성화 및 설정

주요 모듈 활성화

Dolibarr 로그인 후:

  1. Home > Setup > Modules/Application 이동
  2. 필요한 모듈 활성화:
    • Third parties (거래처)
    • Products/Services (제품)
    • Commercial proposals (견적)
    • Customer orders (고객 주문)
    • Customer invoices (청구서)
    • Banks/Cash (은행/현금)
    • Projects (프로젝트)

회사 정보 설정

  1. Setup > Company/Organization 이동
  2. 회사명, 주소, 로고 등 설정
  3. 세금 정보 입력

한국어 설정

  1. Setup > Translation > Language 이동
  2. 한국어(Korean) 활성화
  3. 사용자 프로필에서 기본 언어 변경

외부 모듈 설치

DoliStore에서 모듈 설치

# 커스텀 모듈 디렉토리
docker compose exec dolibarr ls /var/www/html/custom

# 모듈 다운로드 후 custom 폴더에 업로드
# 또는 DoliStore (https://www.dolistore.com)에서 직접 설치

수동 모듈 설치

# 모듈을 custom 폴더에 복사
cp -r my_module ./data/custom/

# 권한 설정
docker compose exec dolibarr chown -R www-data:www-data /var/www/html/custom

# Dolibarr에서 모듈 활성화
# Setup > Modules/Application

관리 명령어

# 데이터베이스 백업
docker compose exec mariadb mysqldump -u root -p dolidb > backup.sql

# 데이터베이스 복원
docker compose exec -T mariadb mysql -u root -p dolidb < backup.sql

# 문서 폴더 백업
tar -czvf documents_backup.tar.gz ./data/documents

# 로그 확인
docker compose logs -f dolibarr

# 컨테이너 재시작
docker compose restart dolibarr

# 캐시 클리어
docker compose exec dolibarr rm -rf /var/www/documents/admin/temp/*

업그레이드 절차

# 1. 백업 생성
docker compose exec mariadb mysqldump -u root -p dolidb > backup_before_upgrade.sql
tar -czvf documents_backup.tar.gz ./data/documents

# 2. install.lock 파일 제거
docker compose exec dolibarr rm -f /var/www/documents/install.lock

# 3. 새 이미지 풀
docker compose pull

# 4. 컨테이너 재시작
docker compose up -d

# 5. 브라우저에서 /install 접속하여 업그레이드 진행
# http://localhost:8080/install

# 6. 업그레이드 완료 후 install.lock 재생성
docker compose exec dolibarr touch /var/www/documents/install.lock

환경 변수 전체 목록

변수설명기본값
DOLI_DB_HOST데이터베이스 호스트localhost
DOLI_DB_PORT데이터베이스 포트3306
DOLI_DB_TYPEDB 타입 (mysqli/pgsql)mysqli
DOLI_DB_NAME데이터베이스 이름dolidb
DOLI_DB_USERDB 사용자root
DOLI_DB_PASSWORDDB 비밀번호
DOLI_URL_ROOT접속 URLhttp://localhost
DOLI_ADMIN_LOGIN관리자 로그인admin
DOLI_ADMIN_PASSWORD관리자 비밀번호admin
DOLI_INSTALL_AUTO자동 설치 (1/0)1
DOLI_INIT_DEMO데모 데이터 (1/0)0
DOLI_MODULES활성화할 모듈 목록
PHP_INI_DATE_TIMEZONE타임존UTC

마무리

Dolibarr는 가볍고 직관적인 ERP/CRM 솔루션으로, 특히 중소기업과 1인 기업에 최적화되어 있습니다. 복잡한 설정 없이도 빠르게 시작할 수 있으며, 필요에 따라 모듈을 추가하여 확장할 수 있습니다. Docker를 활용하면 몇 분 만에 완전한 비즈니스 관리 시스템을 구축할 수 있습니다.


참고 링크

  • 공식 사이트: https://www.dolibarr.org
  • GitHub: https://github.com/Dolibarr/dolibarr
  • Docker Hub: https://hub.docker.com/r/dolibarr/dolibarr
  • DoliStore (모듈): https://www.dolistore.com
  • 위키 문서: https://wiki.dolibarr.org



댓글 남기기