譯文地址: http://shine-it.net/index.php?topic=16623.msg29044#msg29044
轉載地址: http://jointd.com/?p=1998
2014年9月19日, Odoo官方發佈了Odoo8.0正式版本,這是一個全新的版本,整合了網站建設等多種功能。
在Linux類操作系統中, 安裝Odoo的常規辦法是從Odoo官方網站的下載庫http://nightly.openerp.com相應版本的目錄裏面下載一個.deb安裝包(用於Debian/Ubuntu類型的Linux系統)或者一個.rpm安裝包(用於Redhat/CentOS類型的Linux系統),並且運行安裝。但這種做法下,安裝的配置是按照Odoo官方的默認配置進行的,個性化設置空間小,有時候不方便管理。因此我們採取更手工化的源碼安裝方式,自己配置安裝所需的配置。
本文介紹在Ubuntu Server14.04版操作系統中通過Github以源代碼模式安裝Odoo的方法。這種做法的優點是:
當官方的源代碼升級時,或者有新的bug修正時,如果需要,我們可以在網絡連通的情況下僅僅用一個"git pull"命令就能更新本地的代碼。
請注意,未來在進行pull代碼的操作時,需要事先做好備份。有些情況下,Odoo的數據庫也需要更新。
第一步 建立服務器安裝Ubuntu Server 14.04
訪問Ubuntu官方網站服務器版頁面http://www.ubuntu.com/server下載安裝鏡像,服務器版目前已經沒有32位版本,只有64位版。或者從國內的網易源下載鏡像 :http://mirrors.163.com/ubuntu-releases/14.04/ubuntu-14.04-server-amd64.iso下載完成後將鏡像製成啓動光盤或者優盤,按照常規的方法將它安裝在電腦上,記好自己設置的用戶名和密碼。本文以設定主機名爲odoo、用戶名爲dean爲例進行Ubuntu系統的安裝,下面各步驟中如果有的命令與主機名和用戶名相關,請讀者自行改成自己實際的主機名和用戶名。
在安裝進行到選擇預安裝的服務的步驟時,選中PostgreSQL,把Odoo所需的數據服務環境PostgreSQL數據庫一併裝好。
系統裝好重啓後用自己用戶名和密碼登錄進去,運行
- psql –version
下邊更新服務器的軟件源信息:
- sudo apt-get update
- sudo apt-get dist-upgrade
- sudo shutdown -r now
第二步 創建一個系統用戶odoo,將來讓他擁有Odoo程序的權限並運行它
如果有其它未加載的磁盤,而且要安裝在其中:
- sudo mkdir /opt
- sudo mount -t ext4 /dev/xvdb1 /opt
配置自動掛載:
首先使用命令 blkid 查看 分區的UUID
在文件 /etc/fstab 中加入如下配置:
# /devdata was on /dev/sdb
UUID=<span style="font-family: Arial, Helvetica, sans-serif;">7016a5f8-30cd-41d7-9c62-3fdbd6b04f29</span><span style="font-family: Arial, Helvetica, sans-serif;"> </span><span style="font-family: Arial, Helvetica, sans-serif;">/opt ext4 defaults 0 0</span>
- sudo adduser --system --home=/opt/odoo --group odoo
- sudo su - odoo -s /bin/bash
- exit
第三步 安裝和配置數據庫服務器PostgreSQL
如果你之前在安裝Ubuntu服務器過程中沒勾選一併安裝PostgreSQL,那麼可以現在安裝:- sudo apt-get install postgresql
下面爲PostgreSQL數據庫添加並配置odoo用戶 :
首先切換到postgres用戶,它是PostgreSQL默認的初始用戶,以它的身份操作我們就有配置數據庫的權限:
- sudo su - postgres
- createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo
- Enter password for new role: ********
- Enter it again: ********
- exit
第四步 爲Ubuntu服務器安裝Python運行庫和wkhtmltopdf
Odoo8.0版本依賴的python運行庫與OpenERP7.0版本所依賴的有些不同。運行命令
- sudo apt-get install python-dateutil python-docutils python-feedparser python-gdata \
- python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid \
- python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing \
- python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject \
- python-webdav python-werkzeug python-xlwt python-yaml python-zsi python-pyPdf \
- python-decorator python-passlib python-requests
Odoo8.0版改用wkhtmltopdf來輸出pdf,因此要下載wkhtmltopdf 並安裝:
- wget http://sourceforge.net/projects/wkhtmltopdf/files/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb \
- (wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb)
- sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb
安裝完成後將可執行文件複製到 usr/bin 中
- sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
- sudo chown root:root /usr/bin/wkhtmltopdf
- sudo chmod +x /usr/bin/wkhtmltopdf
- wkhtmltopdf www.baidu.com ~/baidu.pdf
安裝中文字體:
- sudo apt-get install ttf-wqy-zenhei
- sudo apt-get install ttf-wqy-microhei
這裏安裝完了之後,所有Odoo8.0運行時依賴的項目都已安裝完成。
第五步 安裝Odoo服務器
先安裝git軟件- sudo apt-get install git
- sudo su - odoo -s /bin/bash
是必須的,這個點表示"當前目錄",不是個句號):
(下載時發現不能保存到當前目錄,可以先下載至指定目錄再移動到該目錄)
- git clone https://www.github.com/odoo/odoo --branch 8.0 --single-branch .
- git clone -b 8.0 https://github.com/odoo/odoo.git .
下載完整的分支到當前odoo目錄:
- git clone https://github.com/odoo/odoo.git .
- exit
第六步 配置Odoo程序
Odoo默認的配置文件(/opt/odoo/debian/openerp-server.conf)包括基礎的設置內容,做一點小小改動就可以在我們的系統上很好地運行,這裏我們先把這個文件復制到我們需要的位置/etc下:
- sudo cp /opt/odoo/debian/openerp-server.conf /etc/odoo-server.conf
- sudo chown odoo: /etc/odoo-server.conf
- sudo chmod 640 /etc/odoo-server.conf
下面用文本編輯器編輯它,初學者建議使用Ubuntu自帶的nano編輯器, 以它爲例, 運行:
- sudo nano /etc/odoo-server.conf
1.打開這個配置文件後,在文件頂部,找到
db_password = False
這一行,把等號後面的 False 改爲你第三步配置postgreSQL時設定的數據庫密碼。
2. 然後找到
addons_path = /usr/lib/python2.7/dist-packages/openerp/addons
這一行,改成
addons_path = /opt/odoo/addons
這樣odoo程序會到我們個性化安裝的opt/odoo/addons目錄裏面去讀取模塊。
3. 我們還要指定Odoo往哪裏寫它的日誌文件。在文件的末尾新加一行
logfile = /var/log/odoo/odoo-server.log
配置文件編輯好後,按Ctrl+O,然後回車覆蓋保存,然後Ctrl+X退出nano程序。
現在你可以試着啓動Odoo服務器,看它是否正常運行。
先切換到odoo用戶,
- sudo su – odoo -s /bin/bash
- /opt/odoo/openerp-server
如果有錯誤出現,你就要回頭找找看看問題出在哪。一切正常的話,按 Ctrl+C 來停止服務器,然後用
exit
命令離開odoo用戶,回到你自己登陸的shell。
第七步 安裝啓動腳本
啓動、停止odoo服務牽扯到許多模塊,需要多個步驟的操作,比較繁瑣,下邊我們安裝一個腳本,它將以批處理的方式處理這些步驟,我們只要運行這個腳本一次,它就能以正確的用戶身份批處理地運行odoo服務器的啓動和停止等動作。odoo程序提供了一個現成的腳本,是/opt/odoo/server/install/openerp-server.init這個文件,但需要一點小改動——因爲我們不是按odoo的默認安裝方式裝的。
這裏有個修改好的腳本文件,可以下載使用:(下邊的命令第一行末尾的/和第二行開頭的o之間沒有空格)
wget http://www.theopensourcerer.com/wp-content/uploads/2014/09/odoo-server與配置文件類似,你得把下載到的這個腳本複製到/etc/init.d/並將其命名爲odoo-server:
- sudo cp ~/odoo-server /etc/init.d/odoo-server
- sudo chmod 755 /etc/init.d/odoo-server
- sudo chown root: /etc/init.d/odoo-server
在我們得創建那個目錄,這樣odoo服務器就能往裏面寫日誌了,同時我們還得讓這個位置能夠被odoo用戶讀寫:
- sudo mkdir /var/log/odoo
- sudo chown odoo:root /var/log/odoo
第八步 測試服務器
要啓動Odoo服務器,輸入:- sudo /etc/init.d/odoo-server start
- less /var/log/odoo/odoo-server.log
如果啓動服務器過程中出現問題,你可以依據日誌文件的內容查找原因。
如果一切正常,現在就可以用網絡瀏覽器訪問odoo的web頁面,地址的格式爲:
http://Odoo服務器的IP或者域名:8069
例如Odoo服務器的IP是192.168.1.10,那麼在同一局域網的其它電腦上,打開網絡瀏覽器(由於odoo使用的是較新的HTML5標準,所以在Windows XP自帶的IE6上無法正常顯示,建議下載安裝個新版的Chrome或者Firefox瀏覽器),在地址欄輸入:
http://192.168.1.10:8069
就應該能看到Odoo的數據庫管理界面,因爲是全新安裝,一個帳套都沒建立過,所以默認會來到這個界面。
建議讀者此時修改Odoo系統的主密碼master password 並牢牢記住它,這個密碼是用來創建、複製、刪除、備份、恢復數據庫的,權力很大,最好設個強的密碼。默認
的主密碼是"admin",比較不安全。該密碼以明文方式寫在/etc/odoo-server.conf文件裏面。這也是我們爲什麼把這個文件設成只有odoo用戶和root用戶可以讀的原因。
當你在web界面上修改並且保存了新的主密碼。/etc/odoo-server.conf 這個文件會被覆蓋寫入 ,並且會多出一些選項。
下邊檢查odoo服務器是否可以被恰當地停止:
- sudo /etc/init.d/odoo-server stop
第九步 自動化Odoo的啓動和關閉
前面的步驟如果都運行正常的話,最後的步驟就是讓啓動腳本隨着Ubuntu服務器的開 、關機而自動啓動 、關閉Odoo服務。- sudo update-rc.d odoo-server defaults
- ps aux | grep odoo
odoo 1491 0.1 10.6 207132 53596 ? Sl 22:23 0:02 python /opt/odoo/openerp-server -c /etc/odoo-server.conf
這顯示服務器正常運行,當然你也可以檢查日誌文件或者用網絡瀏覽器訪問的方式來驗證。