基本上我在MacOS 的 Mojave 和 Catalina 版本上都有安裝過 odoo 12 (如果要安裝12 以前的版本要注意 python 版本) , 安裝方式幾乎差不多
如果想安裝在 windows 上可以參考 :
Prepare :
安裝相關套件
brew, Nvm , python3, postgresql, Xcode
Step 0. install Homebrew, brew cask , python, postgresql, postgres (安裝套件管理工具, 和odoo 相依軟體及資料庫)
# Homebrew (mac 的套件管理器有如 ubuntu 的 apt, windows 的 scoop, 安裝方式如下)
~$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
~$ brew update
# Homebrew Cask (mac 的app管理器有如 windows 的 choco 工具, 安裝方式如下)
~$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python)"
Or
~$ brew tap phinze/homebrew-cask
~$ brew install brew-cask
# install python
~$ brew install python
# install postgresql (without UI, psql, gp_ctl, etc… ), and start sql server (安裝資料庫, 且創建資料庫連線角色給odoo用, 此範例為 odoo12 作為帳密)
~$ brew install postgresql
~$ pg_ctl -D /usr/local/var/postgres start
~$ pg_ctl -D /usr/local/var/postgres status
~$ psql -h localhost -p 5432 -U postgres
postgres=# create user odoo12 with createdb login password 'odoo12';
postgres=# \q
p.s. path is /usr/local/var/postgres
# Or
# install postgresql (UI) , you can open server when every time.
# postgres 這個 APP 是方便你開關 postgresql 服務, 而pgadmin4 可以方便操作及管理資料庫, 有 GUI 介面省去如上使用 command line 方式
~$ brew cask install postgres
~$ brew cask install pgadmin4
Step 1. Installing less and cscss
(這邊安裝 nvm 來管理 node 和 npm, 需再 bash_profile 做些設定, 安裝好node 利用套件管理器安裝 odoo 相依套件)
~$ brew install nvm
~$ mkdir ~/.nvm
~$ vim ~/.bash_profile
# in .bash_profile add the following
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
# esc , :wq
~$ source ~/.bash_profile
~$ echo $NVM_DIR
# install node and less
~$ nvm install node
~$ npm install -g less less-plugin-clean-css
Step 2. installing freetype and other libraries (pillow depend & require) (安裝 python 相依套件)
~$ brew install freetype jpeg libpng libtiff webp xz little-cms2 // 有安裝過的套件就不用再安裝
~$ brew cask install wkhtmltopdf
# 註解 :
freetype : 字形圖像化
webp : 圖像壓縮用
xz : 數據壓縮工具
Step 3. Installing the Xcode command line tools:
~$ xcode-select —install // 安裝過就不用安裝
Step 4. Installing Odoo
# make path
~$ cd /
/$ sudo mkdir /opt
/$ sudo mkdir /opt/odoo
/$ chmod +x opt/odoo // 給予執行權限
/$ sudo chown -R [your role name] /opt/odoo // 更改所有權
p.s. Could not create work tree dir 'example.com'. : Permission denied
/$ cd opt/odoo
odoo$ mkdir odoo12
# clone odoo
odoo$ cd odoo12
// first time git setup user.name & user.email (mac path ~/.gitconfig) (我在這邊遇到緩存不夠的問題, 順便記錄下來, 當然也可以透過 --depth=1 指令載最後一版)
odoo12$ git config --global user.name "xxxx"
odoo12$ git config --global user.email ooooo@example.com
odoo12$ git clone https://github.com/odoo/odoo.git -b 12.0 --single-branch
p.s. error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54 // 未正確設定初始化
p.s. error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 56 // git 的緩存不夠
p.s. git 常見問題
p.s. 也可以用 git clone https://github.com/odoo/odoo.git -b 12.0 --depth=1 來處理此問題
# create venv
odoo12$ pip3 install virtualenv // 安裝過就不用安裝
odoo12$ python3 -m virtualenv env
Or
odoo12$ virtualenv --python python3 env // 沒有試過, 但有看到很多人這麼做
# into env
odoo12$ source env/bin/activate
(env) odoo12$ cd odoo
# setting config file and install requirement
(env) odoo$ pip3 install -r requirements.txt // remove psycopg2 and Pillow
(env) odoo$ brew install postgresql // psycopg2 : install Psycopg2 on mac os x
(env) odoo$ pip3 install Pillow==6.0.0 psycopg2==2.7.5 // 如果 requirements 安裝有問題就把該那行python 模組在此檔案移除, 在執行一次沒問題後再手動安裝正確的版本
(env) odoo$ vim odoo.conf // cp odoo.conf form debian folder and setting
# start odoo server
(env) odoo$ cp /debian/odoo.conf /odoo.conf // 從debian資料夾中複製到上層
(在此可以用 vim odoo.conf 指令修改 odoo.conf 檔案, 進入後按 i 進入編輯模式, 修改連接字串與模組路徑, 可參考如下, 完成後按esc 和 :wq 離開vim 編輯器並貯存)
[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = 127.0.0.1
db_port = 5432
db_user = odoo12
db_password = odoo12
addons_path = ./addons, ./odoo/addons
(env) odoo$ python3 odoo-bin -c odoo.conf
# bug : Mac OS X : valueError : unknown locale : UTF-8 in Python (執行後我遇到編碼的bug 一樣在用 vim 編輯器或其他編輯器在 .bash_profile 中加入 LC_ALL, LANG 這兩行)
# Add following line to your ~/.bash_profile
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
# esc , :wq
~$ source ~/.bash_profile
若執行 python3 odoo-bin -c odoo.conf 看到 看到 HTTP Service 資訊 顯示 port 8069 , 打開瀏覽器建置 localhost:8069 , 看到下面畫面基本上就成功了
除非postgresql 版本小於 9.5, 導致在件資料庫出錯, 或python lib 沒安裝確實, 有少或安裝失敗的在手動 pip3 install 安裝在跑 python3 odoo-bin -c odoo.conf
應該可以排除大部分會遇到的問題
留言列表