一月 4, 2008
» 好吧,那我們再來裝一次 Zope 與 Plone

看過 Better Web App Development 後,也許你也開始想不開要試試Plone?又或,在 Zope 2.9.5 released! Plone 2.5.1 released! 的情況下,也許是時候來清理一下門戶上陳年的Warming、Error訊息了?那就來吧。在這裡我們把 Python、Zope 與 Plone 一口氣裝到 Ubuntu 或 Debian Linux 上。

(也許這次我們要認真點?)首先建置測試環境,為了不破壞系統上原來的環境,我們使用apt上的Python(當然,也不使用root的身份),相對地,我們要抓Python回來自行編譯,夠認真了吧?別害怕,通常沒什麼問題,大不了出現少了什麼套件(如g++)無法編譯的狀況,這時便是 aptitude (好吧,或著apt-get)上場的時候。

參考 Michael Thornhill 的這個繁雜而有點過時的.sh檔,我寫一個比較簡化的版本來先。(暫時不含ZEO、MySkin、IPython等有的沒的的玩意兒,以後還有機會慢慢玩)下載來用(或參考)吧!

簡單地說呢,這個script首先設定環境變數,它預設了你先建了一個空白的資料夾然後在它下面執行這個script,所以拜託別忘記這麼做(或是你之後或著轉職為搬運工,或著轉為debug工程師)。然後開始下載原始檔,編譯、安裝分三部分:Python、Zope、Plone(於 Zope Instance 的 Products 資料夾下的東東)。

Python的部份,首先裝 Python-2.4.3 (不必擔心,Zope-2.9.5不支援也跑不動Python-2.5),然後裝 setuptools-0.6c3 ,並藉此來裝 PIL 1.1.5 (Plone-2.5.1 要求PIL,順便看看它的Release Notes?)。

然後裝 Zope 2.9.5 ,利用它的 mkzopeinstance.py 指令來生成一個 instance 後,把 Plone 裝上去,再順便裝一個聽說很不錯的Doc。便大功告成可喜可賀了?不過,若配置於 subversion 環境下,不妨先 initial check in 吧!(即使也許我們之後還需要MySite的幫忙)

那麼?裝好了?……好吧,裝好大半了;接下來就用滑鼠點一點了事吧。
先把zope instance跑起來:(執行,但別問我說你是不是要先移動到哪個資料夾) ./ins/zoper/bin/runzope
呃?即使我們如此認真,還是得到兩個warming(也許你得到更多?)(這要怪它 "Although practicality beats purity. Errors should never pass silently." 嗎?呵);不過暫時別管它,因為我們以前看過更多的warming。現在我們可以用心愛的瀏覽器連上 http://localhost:8080/manage ,用你放在 setupit.sh 裡所設的使用者 (ZOPE_USER) 與密碼 (USER_PASSWORD) 登入管理介面(沒錯,還是那個ZMI)。

來到這裡,等不及地把點下圖的選單找到 Plone Site 後,再點下旁邊的 Add 。(呃,blog上的圖片可能要點入才看得到,網頁模版的問題,so sorry)

addplone

再來就是例行的討厭的麻煩的填資料的鎖事(但千萬別亂填,看看我,填得多麼認真?)
addplone2

注意第一欄 Id ,將會成為你(或不可思義地,別人)之後要連上的位址。像我填 plone,那我之後要連的位址便是 http://localhost:8080/plone 。填完後按下方的Add Plone Site按鈕,接著便是 Zope 與 Plone 結合的一刻。
addplone3

恭喜。結束了。

參考資料:
Setting up Plone and Zope from source — plone.org
Michael Thornhill: Team Development with Plone/ Zope/ ZEO/ Subversion/ ipython
更多在我的連結筆記: Plone Quest



然後?去渡個中秋小假。回來後,或許先試著匯入舊的資料試試吧。
可以試著玩玩 ArcheTypes ,用來自製內容型態似乎滿方便的。(第一步你可以由它的tracsvn co出ArchExample資料夾,或從它那下載原始檔解開得到那個資料夾,然後複製到zope instance的Products資料夾,重新啟重zope instance後便能利用plone的 portal_quickinstaller 安裝這個範例,然後探索一下發生了什麼變化吧!)

plonesitesetup

plonesetup

plonequickinstall

十月 31, 2006
» Plone from Scratch (Quick-Note)

快速簡記,如何在 Linux Server 上,手動編譯 Python + Zope + Plone。

這裡的軟體版本分別是:

  • Python 2.4.4
  • PIL 1.1.5
  • Zope 2.9.5
  • Plone-2.5.1

這裡的目錄規劃架構是:

  • Python Home: /home/Python/244
  • Zope Home: /home/Zope/295
  • Instance Home: /home/Instance/OSSACC-Plone251

下面是安裝紀錄:

安裝 Python 2.4.4

  • cd /tmp
  • wget http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tgz
  • tar zxvf Python-2.4.4.tgz
  • cd Python-2.4.4
  • ./configure --prefix=/home/Python/244
  • make
  • make install

安裝 PIL 1.1.5

  • cd /tmp
  • wget http://effbot.org/downloads/Imaging-1.1.5.tar.gz
  • tar zxvf Imaging-1.1.5.tar.gz
  • cd Imaging-1.1.5.tar.gz
  • /home/Python/244/bin/python setup.py install

下載 Zope & Plone

  • cd /tmp
  • wget http://www.zope.org/Products/Zope/2.9.5/Zope-2.9.5-final.tgz
  • wget http://nchc.dl.sourceforge.net/sourceforge/plone/Plone-2.5.1-final.tar.gz

安裝 Zope-2.9.5

  • cd /tmp
  • tar zxvf Zope-2.9.5-final.tgz
  • cd Zope-2.9.5-final
  • ./configure --with-python=/home/Python/244/bin/python \
  • --prefix=/home/Zope/295
  • make
  • make install

建立 Zope Instance

  • /home/Zope/295/bin/mkzopeinstance.py
  • Directory: /home/Instance/OSSACC-Plone251
  • Username: admin
  • Password: ooxx
  • Verify password: ooxx

安裝 Plone-2.5.1

  • cd /tmp
  • tar zxvf Plone-2.5.1-final.tar.gz

檢查 Zope 與 Plone 的 Five 哪一個版本比較新
兩者版本都是 Five 1.3.7 (2006-08-13) 選擇刪除 Plone 的 Five

  • rm -rf Plone-2.5.1/Five/
  • mv Plone-2.5.1/* /home/Instance/OSSACC-Plone251/Products/

設定 zope.conf

  • vi /home/Instance/OSSACC-Plone251/etc/zope.conf
  • 改 port-base 1000
  • 改 effective-user apache

啟動 Zope

  • cd /home/Instance
  • chown -Rf apache.apache OSSACC-Plone251/
  • cd OSSACC-Plone251/bin/
  • ./zopectl start

大功告成!

十月 10, 2006
» 更新 Plone & Zope

參考這篇 How do you update Zope versions? - ZopeZone.com

建置完 Zope 2.9.5 與 Plone 2.5.1 的新開發環境後,現在我們要試試把舊的 Zope (2.9.4) 與 Plone (2.5.1-rc1)資料轉移到新環境看看。這裡簡單說明我很懶的作法罷。

首先確認新環境跑得起來,且沒什麼錯誤訊息。

接著把舊的 zope instance 的 Products 資料夾中,你自製的資料夾通通搬到新的 zope instance Products 資料夾中;這裡我說不要全部搬的原因是,我們使用新的 Plone 版本,若有需求要全搬也ok,搬完再把新的 Plone 版本裝下去即可。好吧,其實這是補充說明,因為我目前根本沒什麼值得一搬的自製品,自然也不需要這個步驟。

如果你有做上一步的動作,那你應該再重跑新環境看看有沒有什麼錯誤訊息;而我並沒有所以不用。

沒有問題的話,接著就是關鍵時刻了,停止新環境的運作,準備資料轉移。把舊的zope instance的 var 資料夾下的 Data.fs ,複製到新的zope instance var 資料夾下(也就是覆蓋掉新的 Data.fs ),重跑新環境,沒問題的話(像我),即小功告成。

biggo.com.tw

A Django site.