Odoo 설치 · 12 min read · Oct 18, 2025

Debian 12에 Odoo 16 ERP 소프트웨어 설치하기

Odoo(구 OpenERP)는 CRM, 전자상거래, 회계, 재고, 프로젝트 관리 및 판매 시점 등 다양한 비즈니스 요구에 적합한 10,000개 이상의 오픈 소스 애플리케이션으로 구성된 자체 호스팅 제품군입니다. 이러한 애플리케이션은 완전히 통합되어 있으며 공통 웹 인터페이스를 통해 접근할 수 있습니다.

이 튜토리얼에서는 Debian 12 서버에 Odoo 16을 설치하는 방법을 보여줍니다.

전제 조건

  1. Odoo 스택을 호스팅하기 위한 최소 2GB RAM을 갖춘 Debian 12 기반 서버.
  2. PostgreSQL 데이터베이스를 호스팅하기 위한 최소 2GB RAM을 갖춘 두 번째 Debian 12 기반 서버. 그러나 Odoo와 동일한 서버에 데이터베이스를 설치할 수 있지만, 프로덕션 환경에서는 별도의 서버에 설치하는 것이 강력히 권장됩니다. 원하는 공급자의 관리형 데이터베이스 옵션 중에서 선택할 수도 있습니다.
  3. RAM 요구 사항은 스택을 사용할 동시 사용자 수에 따라 달라집니다. 시스템 요구 사항을 계산하는 방법에 대한 자세한 가이드는 Odoo 문서에서 확인할 수 있습니다.
  4. 시스템을 업데이트하십시오. $ sudo apt update $ sudo apt upgrade
  5. 두 서버 모두에서 sudo 권한이 있는 비루트 사용자.
  6. 시스템에 필요한 몇 가지 패키지. $ sudo apt install wget curl nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring unzip -y 이러한 패키지 중 일부는 이미 시스템에 설치되어 있을 수 있습니다.

1단계 - 방화벽 규칙 구성

이 튜토리얼의 목적을 위해 두 서버 모두에 ufw 방화벽이 설치되어 있다고 가정하겠습니다.

방화벽 상태를 확인하십시오.

$ sudo ufw status

다음과 같은 내용이 표시되어야 합니다.

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Odoo 서버에서는 포트 22, 80, 443, 6010, 5432 및 8069를 열어야 합니다. 22는 SSH에 사용되고, 80은 HTTP에, 443은 HTTPS에, 6010은 Odoo 통신에, 5432는 PostgreSQL에, 8069는 Odoo 서버 애플리케이션에 사용됩니다.

Odoo 서버에서 필요한 포트를 열기 위해 다음 명령을 실행하십시오.

$ sudo ufw allow 6010,5432,8069,8072/tcp
$ sudo ufw allow http
$ sudo ufw allow https

방화벽 상태를 확인하십시오.

$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443                        ALLOW       Anywhere
5432,6010,8069,8072/tcp    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
5432,6010,8069,8072/tcp (v6) ALLOW     Anywhere (v6)

PostgreSQL 서버에서는 포트 22, 6010 및 5432를 열어야 합니다. 다음 명령을 사용하여 열어주십시오.

$ sudo ufw allow 6010/tcp
$ sudo ufw allow 5432/tcp

2단계 - 호스트 이름 할당

서버의 IP 주소를 사용하거나 사용 가능한 경우 완전한 도메인 이름(FQDN)을 사용할 수 있습니다. 이 튜토리얼에서는 FQDN을 사용할 것이며, 이를 위해 두 서버에서 호스트 이름을 설정해야 합니다.

Odoo 서버에서 /etc/hosts 파일을 엽니다.

$ sudo nano /etc/hosts

다음과 같이 보이는지 확인하십시오.

127.0.0.1  localhost
127.0.0.1  odoo.yourdomain.com     odoo
10.1.1.10  postgresql.yourdomain.com postgresql

PostgreSQL 서버에서 파일을 열고 다음과 같이 보이는지 확인하십시오.

127.0.0.1  localhost
127.0.0.1  postgresql.yourdomain.com postgresql
10.1.2.10  odoo.yourdomain.com     odoo

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

3단계 - PostgreSQL 설치 및 구성

Debian 12는 기본적으로 PostgreSQL 15를 제공하며, 이를 설치할 것입니다. PostgreSQL 서버에서 다음 명령을 실행하십시오.

$ sudo apt install postgresql-15 postgresql-server-dev-15

다음으로, 데이터베이스 사용자 odoo를 생성해야 합니다. 역할에 대한 비밀번호를 입력하라는 메시지가 표시됩니다. 원하는 강력한 비밀번호를 입력하십시오.

$ sudo -u postgres createuser odoo -U postgres -dP

옵션 -upostgres 사용자로 명령을 실행합니다.

옵션 -U는 연결할 사용자 이름을 나타냅니다.

옵션 -d는 사용자가 데이터베이스를 생성할 수 있는 권한을 부여합니다.

옵션 -p는 새 사용자의 비밀번호를 입력하라는 메시지를 표시합니다.

호스트 기반 인증 구성

PostgreSQL 서비스가 Odoo 서버에 연결할 수 있도록 권한을 부여해야 합니다.

먼저 PostgreSQL 서비스를 중지합니다.

$ sudo systemctl stop postgresql

파일 /etc/postgresql/15/main/pg_hba.conf를 편집합니다.

$ sudo nano /etc/postgresql/15/main/pg_hba.conf

다음 줄을 끝에 붙여넣습니다.

host    all        odoo        odoo.yourdomain.com        md5

이 줄은 odoo 사용자가 이 서버 내의 모든 데이터베이스에 연결할 수 있는 권한을 부여합니다. all 키워드 대신 데이터베이스 이름을 지정할 수도 있습니다.

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

PostgreSQL 수신 주소 구성

다음으로, 데이터베이스 서버가 원격 연결을 수신하도록 허용해야 합니다. 파일 /etc/postgresql/15/main/postgresql.conf를 편집합니다.

$ sudo nano /etc/postgresql/15/main/postgresql.conf

listen_addresses 줄을 다음과 같이 변경합니다.

#listen_addresses = 'localhost' # what IP address(es) to listen on;

다음과 같이 변경합니다.

#From CONNECTIONS AND AUTHENTICATION Section
listen_addresses = '*'

*는 모든 IP 주소를 수신하도록 설정합니다. Odoo 인스턴스의 IP 주소로 변경할 수 있습니다.

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

PostgreSQL 서비스 활성화 및 시작

구성이 완료되었으므로 PostgreSQL 서비스를 시작하고 활성화할 시간입니다.

$ sudo systemctl enable postgresql --now

4단계 - Odoo 설치

의존성 설치 및 설치 준비

Odoo 프로세스를 관리하기 위해 Odoo 서버에서 새 시스템 사용자를 생성합니다.

$ sudo adduser --system --home=/opt/odoo --group odoo

Odoo 16 설정에 필요한 시스템 의존성을 설치합니다.

 $ sudo apt install python3-pip python3-suds python3-all-dev python3-venv python3-dev python3-setuptools python3-tk libxml2-dev libxslt1-dev libevent-dev libsasl2-dev libldap2-dev pkg-config libtiff5-dev libjpeg62-turbo-dev libjpeg-dev zlib1g-dev libfreetype6-dev liblcms2-dev liblcms2-utils libwebp-dev tcl8.6-dev tk8.6-dev libyaml-dev xfonts-75dpi libpq-dev git libzip-dev libopenjp2-7-dev

Nodejs를 설치합니다. Debian 12는 현재 LTS 버전인 Node 18.x를 기본 제공하지만, 우리는 공식 Nodesource 저장소를 사용할 것입니다.

Nodesource GPG 키를 다운로드하고 가져옵니다.

$ sudo apt-get install -y ca-certificates curl gnupg
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

시스템 저장소를 생성합니다.

$ NODE_MAJOR=18
$ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list

시스템 저장소 목록을 업데이트합니다.

$ sudo apt update

Nodejs를 설치합니다.

$ sudo apt install nodejs

Node 버전을 확인합니다.

$ node --version
v18.17.1

Node를 사용하여 Less CSS 패키지를 설치합니다. 오른쪽에서 왼쪽으로 인터페이스가 있는 언어를 사용하는 경우 rtlcss 패키지도 설치하십시오.

$ sudo npm install -g less rtlcss

wkhtmltopdf를 설치합니다. Debian 시스템 패키지로 제공됩니다.

$ sudo apt install wkhtmltopdf

설치된 wkhtmltopdf의 버전을 확인합니다.

$ wkhtmltopdf --version
wkhtmltopdf 0.12.6

Odoo 파일 다운로드

Odoo의 Github 저장소를 시스템에 복제합니다.

$ sudo git clone https://github.com/odoo/odoo.git --depth 1 --branch 16.0 --single-branch /opt/odoo

우리의 목적을 위해 Odoo를 /opt/odoo 디렉토리에 복사하여 설치할 것입니다.

가상 환경 Python 환경 설정

이 단계는 선택 사항이지만 권장되며, Odoo에 대한 가상 Python 환경은 운영 체제의 Python 모듈과의 충돌을 피하는 데 도움이 됩니다. 특히 OS 업그레이드를 수행할 때 유용합니다.

이를 위해 virtualenv를 사용할 것입니다.

  1. Odoo를 위한 새로운 virtualenv 환경을 생성합니다. $ python3 -m venv /home//odoo-env
  2. 가상 환경을 활성화합니다. 시스템 사용자의 홈 디렉토리 아래에 환경을 생성하고 있습니다. 원하는 위치를 선택할 수 있습니다. $ source /home//odoo-env/bin/activate
  3. 만약을 대비하여 PIP를 업데이트합니다. (odoo-env) $ pip3 install --upgrade pip
  4. 가상 환경에 Python의 wheel을 설치합니다. $ pip3 install wheel

Python 의존성 설치

Odoo 16에 필요한 Python 의존성을 설치합니다.

$ pip3 install -r /opt/odoo/requirements.txt

요구 사항이 설치되는 데 시간이 걸리므로 인내심을 가지십시오.

설치된 Python 모듈 목록을 확인하여 요구 사항이 올바르게 설치되었는지 확인합니다.

$ pip3 list
Package           Version
----------------- ---------
appdirs           1.4.4
attrs             23.1.0
Babel             2.9.1
beautifulsoup4    4.12.2
cached-property   1.5.2
certifi           2023.7.22
cffi              1.15.1
chardet           4.0.0
cryptography      3.4.8
decorator         4.4.2
defusedxml        0.7.1
docopt            0.6.2
docutils          0.16
ebaysdk           2.1.5
freezegun         0.3.15
gevent            22.10.2
greenlet          2.0.2
idna              2.10
isodate           0.6.1
Jinja2            3.1.2
libsass           0.20.1
lxml              4.9.2
MarkupSafe        2.1.2
num2words         0.5.9
ofxparse          0.21
passlib           1.7.4
Pillow            9.4.0
pip               23.2.1
polib             1.1.0
psutil            5.9.4
psycopg2          2.9.5
pyasn1            0.5.0
pyasn1-modules    0.3.0
pycparser         2.21
pydot             1.4.2
pyOpenSSL         20.0.1
pyparsing         3.1.1
PyPDF2            2.12.1
pyserial          3.5
python-dateutil   2.8.1
python-ldap       3.4.0
python-stdnum     1.16
pytz              2023.3
pyusb             1.2.1
qrcode            6.1
reportlab         3.6.12
requests          2.25.1
requests-file     1.5.1
requests-toolbelt 1.0.0
setuptools        66.1.1
six               1.16.0
soupsieve         2.5
urllib3           1.26.5
vobject           0.9.6.1
Werkzeug          2.0.2
wheel             0.41.2
xlrd              1.2.0
XlsxWriter        1.1.2
xlwt              1.3.0
zeep              4.0.0
zope.event        5.0
zope.interface    6.0

Python 가상 환경에서 나옵니다.

$ deactivate

Python 패키지 설치

Odoo 16은 /opt/odoo/debian/control 파일에 나열된 몇 가지 추가 Python 패키지가 필요합니다. /opt/odoo 디렉토리로 이동합니다.

$ cd /opt/odoo

필요한 Python 패키지를 설치하기 위해 다음 명령을 실행합니다.

$ sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-
1/p' debian/control | sudo xargs apt-get install -y

5단계 - Odoo 구성

기본 Odoo 구성 파일을 복사하여 새 파일을 생성합니다.

$ sudo cp /opt/odoo/debian/odoo.conf /etc/odoo-server.conf

편집을 위해 파일을 엽니다.

$ sudo nano /etc/odoo-server.conf

파일을 다음과 같이 편집합니다.

[options]
; This is the password that allows database operations:
admin_passwd = admin
db_host = postgresql.yourdomain.com
db_port = False
db_user = odoo
db_password = odoo_password
addons_path = /opt/odoo/addons
xmlrpc_port = 8069
default_productivity_apps = True

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

옵션 admin_passwd는 Odoo GUI 내에서 관리 작업을 허용하는 비밀번호입니다. 안전한 비밀번호를 선택하십시오.

옵션 db_host는 PostgreSQL 서버의 FQDN 또는 IP 주소입니다.

옵션 db_port는 기본 PostgreSQL 포트 5432가 사용되고 있으므로 false로 설정됩니다. 다른 포트를 사용하려면 이 값을 업데이트해야 합니다.

옵션 db_user는 PostgreSQL 사용자 이름입니다.

옵션 db_password는 이전에 PostgreSQL 서버에서 생성한 PostgreSQL ‘odoo’ 사용자 비밀번호입니다.

옵션 addons_path는 기본 Addons 경로입니다. Addons에 대한 사용자 지정 경로를 추가할 수도 있으며, 쉼표로 구분합니다.

옵션 xmlrpc_port는 Odoo가 수신하는 포트입니다.

옵션 default_productivity_apps는 기본 생산성 앱(즉, 직원, 이메일 마케팅, 프로젝트 및 설문조사)이 활성화된 상태로 유지되도록 합니다. 이 네 가지 앱은 Odoo 커뮤니티 에디션의 기본 앱입니다. 엔터프라이즈 에디션에서는 기본적으로 활성화할 수 있는 추가 생산성 앱이 있습니다.

Odoo 서비스 생성

시스템 재부팅 후에도 Odoo가 계속 실행되도록 하려면 Odoo 서비스를 생성해야 합니다.

파일 /lib/systemd/system/odoo-server.service를 생성하고 편집을 위해 엽니다.

$ sudo nano /lib/systemd/system/odoo-server.service

다음 코드를 붙여넣습니다.

[Unit]
Description=Odoo Open Source ERP and CRM
After=network.target

[Service]
Type=simple
SyslogIdentifier=odoo-server
User=odoo
Group=odoo
ExecStart=python3 /opt/odoo/odoo-bin --config=/etc/odoo-server.conf --addons-path=/opt/odoo/addons/ --logfile /var/log/odoo/odoo-server.log
WorkingDirectory=/opt/odoo/
StandardOutput=journal+console
KillMode=mixed

[Install]
WantedBy=multi-user.target

/home/를 Python 가상 환경을 설치하기 위해 선택한 위치로 바꿉니다.

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

Odoo용 로그 디렉토리 생성

$ sudo mkdir /var/log/odoo

파일 권한 설정

odoo-server.service 파일에 대한 권한을 설정하여 Odoo 사용자만 읽거나 실행할 수 있도록 합니다.

$ sudo chmod 755 /lib/systemd/system/odoo-server.service
$ sudo chown odoo: /lib/systemd/system/odoo-server.service

Python 환경, Odoo 설치 및 로그 디렉토리에 대한 소유권을 설정합니다.

$ sudo chown -R odoo: /opt/odoo/
$ sudo chown -R odoo: /home//odoo-env
$ sudo chown -R odoo: /var/log/odoo

Odoo 구성 파일의 권한을 제한합니다.

$ sudo chown odoo: /etc/odoo-server.conf
$ sudo chmod 640 /etc/odoo-server.conf

Odoo 서버 시작

Odoo 서버를 시작하고 활성화합니다.

$ sudo systemctl start odoo-server
$ sudo systemctl enable odoo-server

서버 상태를 확인합니다.

$ sudo systemctl status odoo-server
? odoo-server.service - Odoo Open Source ERP and CRM
     Loaded: loaded (/lib/systemd/system/odoo-server.service; enabled; preset: enabled)
     Active: active (running) since Mon 2023-09-04 14:19:38 UTC; 27s ago
   Main PID: 8954 (python3)
      Tasks: 4 (limit: 2315)
     Memory: 131.1M
        CPU: 1.625s
     CGroup: /system.slice/odoo-server.service
             ??8954 python3 /opt/odoo/odoo-bin --config=/etc/odoo-server.conf --addons-path=/opt/odoo/addons/ --logfile /var/log/odoo/odoo-server.log

Sep 04 14:19:38 odoo systemd[1]: Started odoo-server.service - Odoo Open Source ERP and CRM.

브라우저에서 URL http://:8069 또는 http://odoo.yourdomain.com:8069를 엽니다. 모든 것이 제대로 작동하면 Odoo의 데이터베이스 생성 화면이 표시됩니다.

Odoo 데이터베이스 생성 페이지

모든 필드를 작성하십시오. 데이터베이스를 샘플 데이터로 채우려면 Demo Data 필드를 체크한 후 Create database 버튼을 클릭하십시오.

다음으로 선택할 수 있는 앱 목록이 표시됩니다.

데이터베이스를 처음 생성할 때는 추가 기능 페이지가 로드되는 데 시간이 걸리므로 페이지를 새로 고치지 마십시오.

6단계 - Nginx 설치 및 구성

Debian 12는 이전 버전의 Nginx를 제공합니다. 최신 버전을 설치하려면 공식 Nginx 저장소를 다운로드해야 합니다.

Nginx의 서명 키를 가져옵니다.

$ curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

Nginx의 안정 버전 저장소를 추가합니다.

$ echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/debian `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

시스템 저장소를 업데이트합니다.

$ sudo apt update

Nginx를 설치합니다.

$ sudo apt install nginx

설치를 확인합니다. Debian 시스템에서는 다음 명령이 sudo와 함께만 작동합니다.

$ sudo nginx -v
nginx version: nginx/1.24.0

Nginx를 시작합니다.

$ sudo systemctl start nginx

서비스 상태를 확인합니다.

$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled)
     Active: active (running) since Tue 2023-09-05 06:29:17 UTC; 1s ago
       Docs: https://nginx.org/en/docs/
    Process: 13958 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
   Main PID: 13959 (nginx)
      Tasks: 2 (limit: 2315)
     Memory: 1.7M
        CPU: 10ms
     CGroup: /system.slice/nginx.service
             ??13959 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
             ??13960 "nginx: worker process"

7단계 - SSL 설치

Let’s Encrypt에서 제공하는 무료 SSL 인증서를 생성하기 위해 Certbot을 설치해야 합니다.

Debian의 저장소를 사용하여 Certbot을 설치하거나 Snapd 도구를 사용하여 최신 버전을 가져올 수 있습니다. 우리는 Snapd 버전을 사용할 것입니다.

Debian 12에는 Snapd가 설치되어 있지 않습니다. Snapd 패키지를 설치합니다.

$ sudo apt install snapd

다음 명령을 실행하여 Snapd 버전이 최신인지 확인합니다.

$ sudo snap install core
$ sudo snap refresh core

Certbot을 설치합니다.

$ sudo snap install --classic certbot

Certbot 명령이 /usr/bin 디렉토리에서 실행될 수 있도록 심볼릭 링크를 생성하여 확인합니다.

$ sudo ln -s /snap/bin/certbot /usr/bin/certbot

Certbot이 제대로 작동하는지 확인합니다.

$ certbot --version
certbot 2.6.0

인증서를 생성합니다. DHParams 인증서도 생성해야 합니다.

$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d odoo.yourdomain.com

Diffie-Hellman 키 교환 인증서를 생성합니다.

$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096

Certbot 갱신 스케줄러 서비스 확인합니다.

$ sudo systemctl list-timers

nextsnap.certbot.renew.service가 스케줄된 서비스 중 하나로 표시됩니다.

NEXT                        LEFT          LAST                        PASSED        UNIT                      ACTIVATES
.....
Sun 2023-02-26 06:32:00 UTC 9h left       Sat 2023-02-25 18:04:05 UTC 2h 59min ago  snap.certbot.renew.timer  snap.certbot.renew.service
Sun 2023-02-26 06:43:20 UTC 9h left       Sat 2023-02-25 10:49:23 UTC 10h ago       apt-daily-upgrade.timer   apt-daily-upgrade.service
Sun 2023-02-26 09:00:06 UTC 11h left      Sat 2023-02-25 20:58:06 UTC 5min ago      apt-daily.timer           apt-daily.service

SSL 갱신이 잘 작동하는지 확인하기 위해 프로세스의 드라이런을 수행합니다.

$ sudo certbot renew --dry-run

오류가 없으면 모든 설정이 완료된 것입니다. 인증서는 자동으로 갱신됩니다.

8단계 - Nginx 구성

Nginx를 통해 실행하려면 Odoo를 localhost에서 실행해야 합니다. 이를 변경하기 위해 Odoo 서비스를 중지합니다.

$ sudo systemctl stop odoo-server

Odoo 서버 구성 파일을 엽니다.

$ sudo nano /etc/odoo-server.conf

다음 줄을 추가합니다.

xmlrpc_interface = 127.0.0.1
proxy_mode = True

Odoo를 위한 Nginx 구성 파일을 생성합니다.

$ sudo nano /etc/nginx/conf.d/odoo.conf

아래 코드를 붙여넣습니다.

#odoo server
upstream odoo {
 server 127.0.0.1:8069;
}
upstream odoochat {
 server 127.0.0.1:8072;
}

# http -> https
server {
   listen 80;
   listen [::]:80;
   server_name odoo.yourdomain.com;
   return 301 https://$host$request_uri;
}

server {
 listen 443 ssl http2;
 listen [::]:443 ssl http2;
 server_name odoo.yourdomain.com;

 proxy_read_timeout 720s;
 proxy_connect_timeout 720s;
 proxy_send_timeout 720s;

 # Add Headers for odoo proxy mode
 proxy_set_header X-Forwarded-Host $host;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 proxy_set_header X-Real-IP $remote_addr;

 # SSL parameters
 ssl_certificate /etc/letsencrypt/live/odoo.yourdomain.com/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/odoo.yourdomain.com/privkey.pem;
 ssl_trusted_certificate /etc/letsencrypt/live/odoo.yourdomain.com/chain.pem;
 
 ssl_session_timeout 1d;
 ssl_session_cache shared:MozSSL:10m;  # about 40000 sessions
 ssl_session_tickets off;
 
 ssl_protocols TLSv1.2 TLSv1.3;
 ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
 ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
 ssl_prefer_server_ciphers off;
 ssl_stapling on;
 ssl_stapling_verify on;
 ssl_dhparam /etc/ssl/certs/dhparam.pem;

 # log
 access_log /var/log/nginx/odoo.access.log;
 error_log /var/log/nginx/odoo.error.log;

 # Redirect longpoll requests to odoo longpolling port
 location /longpolling {
 proxy_pass http://odoochat;
 }

 # Redirect requests to odoo backend server
 location / {
   proxy_redirect off;
   proxy_pass http://odoo;
 }

 # common gzip
 gzip_types text/css text/scss text/plain text/xml application/xml application/json application/javascript;
 gzip on;
}

편집기를 닫으려면 Ctrl + X를 누르고, 파일을 저장하라는 메시지가 표시되면 Y를 누릅니다.

파일 /etc/nginx/nginx.conf를 편집합니다.

$ sudo nano /etc/nginx/nginx.conf

include /etc/nginx/conf.d/*.conf; 줄 앞에 다음 줄을 추가합니다.

server_names_hash_bucket_size  64;

파일을 저장하려면 Ctrl + X를 누르고, 메시지가 표시되면 Y를 입력합니다.

Nginx 구성을 테스트합니다.

$ sudo nginx -t

오류가 없으면 준비가 완료된 것입니다. Nginx 서버를 재시작합니다.

$ sudo systemctl restart nginx

9단계 - Odoo 시작

모든 설정이 완료되었으므로 Odoo 서버를 다시 시작할 수 있습니다.

$ sudo systemctl start odoo-server

브라우저에서 https://odoo.yourdomain.com을 통해 Odoo를 실행합니다. 이전에 설명한 화면이 표시됩니다. 데이터베이스를 생성하기 위해 필요한 세부 정보를 입력하면 Odoo 로그인 페이지로 리디렉션됩니다.

Odoo 로그인 페이지

이전에 사용한 자격 증명을 입력하여 Odoo ERP에 로그인하면 아래와 같이 대시보드 페이지로 이동합니다. 데모 데이터로 미리 채워져 있습니다. 데이터베이스 생성 페이지에서 데모 데이터 옵션을 체크하지 않았다면 훨씬 더 깔끔한 대시보드를 보게 될 것입니다.

Odoo 대시보드

이제부터 Odoo를 사용하여 비즈니스를 관리할 수 있습니다.

결론

이로써 Debian 12 서버에 Odoo를 설치하는 튜토리얼이 마무리되었습니다. 질문이 있으시면 아래 댓글에 남겨주세요.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.