콘텐츠로 건너뛰기

Odoo 19 설치 매뉴얼

☁️ AWS에 Odoo 19 설치하기

Amazon EC2 + Ubuntu 24.04 기반으로 Odoo 19를 직접 설치하고
Nginx · SSL · 방화벽까지 완성하는 단계별 가이드

⏱ 설치 시간: 약 60분 🎯 난이도: 중급 🖥 OS: Ubuntu 24.04 LTS

1단계 — AWS EC2 인스턴스 생성

✅ 권장 인스턴스 사양

사용 규모 인스턴스 vCPU 메모리 스토리지
소규모 (1~10명) t3.medium 2 4 GB 30 GB GP3
중규모 (10~50명) t3.large 2 8 GB 50 GB GP3
대규모 (50명+) m5.xlarge 4 16 GB 100 GB GP3

🔑 EC2 생성 순서

  1. AWS 콘솔 → EC2인스턴스 시작
  2. AMI: Ubuntu Server 24.04 LTS (HVM), SSD Volume Type 선택
  3. 인스턴스 유형: 위 표 참고하여 선택
  4. 키 페어 생성 또는 기존 키 선택 (SSH 접속에 사용)
  5. 보안 그룹 인바운드 규칙 설정:
    • SSH (22) — 내 IP
    • HTTP (80) — 0.0.0.0/0
    • HTTPS (443) — 0.0.0.0/0
    • Odoo (8069) — 내 IP (설정 완료 후 닫기)
  6. 스토리지: GP3 선택, 권장 용량 입력
  7. 탄력적 IP (Elastic IP) 할당 후 인스턴스에 연결
⚠ 주의: 탄력적 IP를 할당하지 않으면 인스턴스를 재시작할 때마다 IP가 변경됩니다. 도메인 연결 전에 반드시 Elastic IP를 할당하세요.

2단계 — 서버 접속 및 기본 환경 설정

SSH 접속

ssh -i ~/your-key.pem ubuntu@

시스템 업데이트 및 의존성 설치

sudo apt update && sudo apt upgrade -y

sudo apt install -y \
  python3-pip python3-dev python3-venv \
  libxml2-dev libxslt1-dev libevent-dev \
  libsasl2-dev libldap2-dev libpq-dev \
  libjpeg-dev zlib1g-dev libfreetype6-dev \
  node-less npm git curl build-essential

# wkhtmltopdf 설치 (PDF 출력용)
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb
sudo dpkg -i wkhtmltox_0.12.6.1-3.jammy_amd64.deb
sudo apt install -f -y
💡 팁: wkhtmltopdf는 Odoo에서 견적서, 납품서, 청구서 등을 PDF로 출력할 때 반드시 필요합니다.

3단계 — PostgreSQL 설치 및 설정

# PostgreSQL 16 설치
sudo apt install -y postgresql postgresql-client

# PostgreSQL 서비스 시작
sudo systemctl enable postgresql
sudo systemctl start postgresql

# Odoo 전용 DB 사용자 생성
sudo -u postgres createuser -s odoo

# 비밀번호 설정 (선택)
sudo -u postgres psql -c "ALTER USER odoo WITH PASSWORD 'your_strong_password';"
⚠ 보안: 운영 환경에서는 반드시 강력한 비밀번호를 설정하고, PostgreSQL의 외부 접속을 비활성화하세요.

4단계 — Odoo 19 설치

Odoo 시스템 사용자 생성 및 소스 다운로드

# odoo 전용 시스템 계정 생성
sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo

# Odoo 소스 클론 (커뮤니티)
sudo -u odoo git clone https://github.com/odoo/odoo.git \
  --depth 1 --branch 19.0 /opt/odoo/odoo-server

# Python 가상환경 생성 및 의존성 설치
sudo -u odoo python3 -m venv /opt/odoo/venv
sudo -u odoo /opt/odoo/venv/bin/pip install -r /opt/odoo/odoo-server/requirements.txt

Odoo 설정 파일 생성

sudo tee /etc/odoo.conf > /dev/null <
              

systemd 서비스 등록

sudo tee /etc/systemd/system/odoo.service > /dev/null <
              
✅ 확인: 브라우저에서 http://:8069 접속 시 Odoo 데이터베이스 생성 화면이 나타나면 성공입니다.

5단계 — Nginx 리버스 프록시 설정

sudo apt install -y nginx

sudo tee /etc/nginx/sites-available/odoo > /dev/null <<'EOF'
upstream odoo {
  server 127.0.0.1:8069;
}
upstream odoochat {
  server 127.0.0.1:8072;
}

server {
  listen 80;
  server_name your-domain.com;

  # Gzip 압축
  gzip on;
  gzip_types text/css text/javascript application/javascript;

  # 정적 파일 캐싱
  location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff2)$ {
    expires 7d;
    add_header Cache-Control "public";
    proxy_pass http://odoo;
  }

  # 롱폴링 (실시간 알림)
  location /websocket {
    proxy_pass http://odoochat;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $host;
  }

  location / {
    proxy_pass http://odoo;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_read_timeout 720s;
    client_max_body_size 200M;
  }
}
EOF

sudo ln -s /etc/nginx/sites-available/odoo /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

6단계 — SSL 인증서 적용 (Let's Encrypt)

# Certbot 설치
sudo apt install -y certbot python3-certbot-nginx

# SSL 인증서 발급 (도메인이 EC2에 연결된 후 실행)
sudo certbot --nginx -d your-domain.com

# 자동 갱신 확인
sudo certbot renew --dry-run
💡 팁: Certbot은 Nginx 설정을 자동으로 수정하여 HTTP → HTTPS 리다이렉트와 443 포트 설정을 처리합니다. 인증서는 90일마다 자동 갱신됩니다.

7단계 — 운영 최적화 및 보안 설정

🔒 방화벽 (UFW)

sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw deny 8069
sudo ufw enable

💾 자동 백업 (S3)

sudo apt install -y awscli
aws configure
# crontab -e 에 추가:
0 3 * * * pg_dump odoo | \
  gzip | aws s3 cp - \
  s3://your-bucket/odoo-$(date +\%F).sql.gz

odoo.conf 운영 최적화 권장 설정

파라미터 권장값 설명
workers vCPU × 2 + 1 동시 요청 처리 프로세스 수
max_cron_threads 2 스케줄 작업 전용 스레드
limit_memory_hard 2684354560 워커당 최대 메모리 (2.5GB)
proxy_mode True Nginx 프록시 사용 시 필수
logrotate True 로그 자동 순환

AWS Odoo 구축, 전문가와 함께하세요

다리앤다리는 AWS 기반 Odoo 설치·운영·커스터마이징 전문 파트너입니다.
인프라 설계부터 운영 지원까지 원스톱으로 지원합니다.

개발서비스 문의하기 →