MacOS에 Odoo 버전 14 설치하기
세상 깐깐한 Odoo 설치하고 세팅하기 - 1편 🍆
2편 - ‘파이참(PyCharm)에 Odoo 환경 설정하기’
이 글을 읽기 전!
⚠️ MacOS를 기준으로 작성된 글입니다.
기존에 작성한 MacOS에 Odoo 버전 13 설치하기 글이 있지만, 버전이 달라지니 설치할 때 달라진 내용이 있어 따로 글을 작성하기로 했다.
홈브루(Homebrew)
홈브루를 통해 Odoo를 실행하는데 필요한 데이터베이스와 파이썬 가상 환경 패키지들을 설치한다. 홈브루가 설치되어 있지 않다면, 아래 링크를 따라 설치 후 진행한다.
postgresql 설치
Odoo에서는 데이터베이스로 PostgreSQL을 사용한다. 필요에 따라 다른 버전을 사용해도 되지만, 10 이후 버전을 사용해야 한다.
$ brew install postgresql
$ brew install postgresql@11
⚠️ brew install postgresql
명령어는 추후 psycopg2
라이브러리 설치 시, postgresql 바이너리를 찾지 못해 오류가 발생하기 때문에 추가로 설치한다.
pyenv 설치
pyenv는 로컬에서 다양한 Python 버전을 사용할 수 있도록 해서 Python 버전에 대한 의존성을 해결할 수 있다.
$ brew install pyenv
환경 변수 설정
bash
를 사용하는 경우, ~/.zshrc
대신 ~/.bashrc
로 변경해 명령어를 실행한다.
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
$ echo 'eval "$(pyenv init --path)"' >> ~/.zshrc
$ echo 'eval "$(pyenv init -)"' >> ~/.zshrc
pyenv-virtualenv
virtualenv는 로컬에서 다양한 Python 환경을 사용할 수 있도록 한다.
$ brew install pyenv-virtualenv
환경 변수 설정
bash
를 사용하는 경우, ~/.zshrc
대신 ~/.bashrc
로 변경해 명령어를 실행한다.
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
$ echo 'export PYENV_VIRTUALENV_DISABLE_PROMPT=1' >> ~/.zshrc
Odoo 설치
소스 코드 다운로드
Odoo 버전 14에 소스 코드를 clone 받아, 헷갈리지 않도록 디렉토리 이름을 odoo-14
으로 지정한다.
$ git clone -b 14.0 --single-branch https://github.com/odoo/odoo odoo-14
파이썬 세팅
파이썬 3.8.5 버전을 사용한다. 꼭 3.8.5 버전이 아닌 3.8
대 버전을 사용하면 된다.
$ pyenv install 3.8.5
가상 환경 생성
clone 받은 odoo-14 디렉토리 경로로 이동해, odoo-14-venv
라는 이름으로 파이썬 가상 환경을 생성한다.
$ pyenv virtualenv 3.8.5 {가상환경명}
$ pyenv virtualenv 3.8.5 odoo-14-venv
가상 환경이 생성되었다면, odoo-14
디렉토리 경로 접근 시에 odoo-14-venv
가상 환경을 사용하도록 local
명령어를 사용해 가상 환경을 지정한다.
$ pyenv local {가상환경명}
$ pyenv local odoo-14-venv
⚠️ 가상 환경 지정 후, 파이썬 버전을 확인해 가상 환경이 올바르게 생성되었는지 확인한다.
설정한 3.8.5
버전과 다른 버전이 출력된다면 pyenv 또는 pyenv-virtualenv 환경 변수가 잘못 설정된 것으로 수정해야 한다.
$ python -V
Python 3.8.5
pip 설치
pip를 통해 Odoo를 실행하는데 필요한 패키지를 설치한다.
$ pip install -r requirements.txt
🚨 설치 도중 psycopg2
라이브러리에서 오류가 난다면, 먼저 1번째 명령어를 입력해보고 그래도 같은 오류가 난다면 2번째 명령어를 입력한다.
# 1번째
$ LDFLAGS=-L/usr/local/opt/openssl/lib pip install psycopg2==2.8.5
# 2번째
$ brew install openssl
$ export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/
$ LDFLAGS=-L/usr/local/opt/openssl/lib pip install psycopg2==2.8.5
Odoo 환경 설정
.odoorc 생성
odoo에 관한 환경 설정은 .odoorc
파일에 정의해 사용한다.
아래 명령어를 실행하면 Home 디렉토리에 .odoorc
파일이 생성된다.
$ python ./odoo-bin --save
.odoorc 가져오기
Home 디렉토리에 생성된 .odoorc
파일을 odoo-14 디렉토리에 config 디렉토리로 이동시킨다.
config 디렉토리가 없다면 생성한다.
$ mv ~/.odoorc ./config/
디렉토리 구조는 아래와 같이 된다.
|-- odoo-14
| ├── addons
| ├── config
| │ └── .odoorc
| ├── debian
| ├── doc
// 일부 생략
.odoorc 수정
.odoorc 파일에서 아래 목록에 경로들이 odoo-14 디렉토리의 경로와 다르다면 지금 설치하고자 하는 odoo-14 디텍토리의 경로로 수정한다.
addons_path
Odoo 모듈이 담긴 경로data_dir
session 등 데이터 저장 경로logfile
log 파일 경로 → 디렉토리, 파일이 없다면 생성한다.
addons_path = {odoo-14 path}/odoo/addons
data_dir = {odoo-14 path}/config
logfile = {odoo-14 path}/config/log/odooserver.log
Community 버전일 경우, addons_path
를 아래와 같이 수정한다.
addons_path = {odoo-14 path}/odoo/addons, {odoo-14 path}/addons
디렉토리 구조는 아래와 같이 된다.
|-- odoo-14
| ├── addons
| ├── config
| │ └── log
| │ │ ├── odooserver.log
| │ └── .odoorc
| ├── debian
| ├── doc
// 일부 생략
Odoo 실행
postgresql 실행
홈브루를 통해 설치한 postgresql을 실행시킨다. 🐘
$ brew services start postgresql@11
Odoo 실행
아래와 같이 명령어를 입력하면 Odoo가 실행된다.
$ python ./odoo-bin --config=./config/.odoorc
🚨 macOS로 Monterey
를 사용 중이라면 실행 시 ValueError: current limit exceeds maximum limit
가 발생하는데, 위 명령어 대신 아래 명령어를 통해 Odoo를 실행시키면 된다.
$ python ./odoo-bin --config=./config/.odoorc --limit-memory-hard 0
localhost:8069에 접속했을 때, 아래와 같은 페이지가 나타나면 Odoo 설치 성공이다! ✌️
마치며, 🙇🏻
참고한 사이트
https://www.odoo.com/documentation/14.0/setup/install.html#mac-os