電影流水帳(2015/10/5~2015/10/31)

Alicia Vikander在 2007 年的時候,看了「時をかける少女」 (台譯:跳躍吧!時空少女),最近又重看了一次。這次重看,比上次看仔細多了。真琴使用了倒數第二次的時空跳躍能力,促成了功介跟學妹的相識,在回程的路上,遇到了千昭,千昭問她是不是知道時空跳躍。真琴被嚇到,使用了最後一次的跳躍能力。這次跳躍導致了不一樣的結果,好友功介被火車撞上,就在被撞上的時候,千昭也使用了跳躍能力,救回功介,為的是不讓真琴難過。接著,千昭向真琴說明了時空跳躍的緣由,真琴聽完以後非常的難過,難過的是要跟千昭分開了。於是,千昭走了,真琴非常沮喪。回到家裡,真琴很沮喪的躺在床上,然後她意外地發現了還有一次時空跳躍能力。於是,真琴非常開心地使用了這次能力,回到送作業簿到物理教室的那個時間點,黑板上寫著 “Time waits for no one” ,這次她把握機會向千昭說明了真相,讓千昭能使用他最後一次的時空跳躍能力回到未來,也允諾千昭會好好的保護那幅他想看的畫。關於畫的這件事情,真琴的阿姨似乎也遇到了一樣的事情,阿姨在少年時光也是遇到兩個男生,在電影的一開始,也巧妙的暗示了真情有時空跳躍的事,所以選擇了進入博物館來維護畫作。雖然是重看,還是很有意思的電影。

照片的女生就是演 Ex Machina 的女主角 Alicia Vikander ,在電影飾演女機器人,演的很不錯~

  • Sodor’s Legend Of The Lost Treasure (IMDB, Wikipedia),台譯:湯瑪士-多多島的寶藏。這集湯瑪士沒做好事情,一直出包,被貶去建造新鐵路路線,他意外發現了海盜船。然後循線而來的船員趁著夜晚在尋找海盜船的寶藏,湯瑪士在不受胖總管的重視下,被船員蠱惑,幫他尋找寶藏,但是怎麼找也找不到。後來寶藏被挖土機找到了,寶藏被送到胖總管的保險箱保管,船員想要搶奪這份寶藏,湯瑪士也看穿了船員的不懷好意,就想盡辦法阻擋船員。最後,成功的擋下船員,讓船員沒辦法把寶藏帶走,而湯瑪士也重新贏回胖總管的信任。
    我覺得這次的故事還不錯,湯瑪士一開始真的很欠人罵,很能拿這跟小朋友說教~ 🙂
  • Ex Machina (IMDB, Wikipedia),台譯:人造意識。Caleb 是個科技公司的新員工,意外中獎,得到去老闆豪宅同住一周的大獎。然後 Caleb 就搭了老闆的直昇機飛到挪威的豪宅去,在直昇機上問了一句,我們到底到了沒?駕駛回答說,我們已經到啦,現在下面的土地都是老闆的!!
    到了豪宅以後,Caleb 認識了老闆 Nathan,Nathan 帶他認識了整個房子,接著才跟他說,找他來,是為了作圖靈測試。這裡要介紹一下圖靈測試,圖靈測試主要是測試人工智慧是否成功,傳統的圖靈實驗是不讓人看到機器人而跟機器人對話,如果人沒發現自己是跟機器人對話,那麼人工智慧就算成功。Nathan 做了個女機器人 Ava,但他做這個圖靈實驗並不是傳統的圖靈實驗,而是打破傳統,直接找對人工智慧理論很熟悉的 Caleb 跟 Ava 面對面的談話,讓 Caleb 來判斷 Ava 是不是具有人工智慧。
    Caleb 跟 Ava 交談了兩三天,不知不覺地被 Ava 所吸引。當 Ava 利用斷電,對 Caleb 說,Nathan 有問題,不要相信他時,Caleb 開始對 Nathan 存疑。於是 Caleb 利用 Nathan 的爛醉展開調查,發現 Nathan 其實已經做了好幾具機器人,現在房子裡的女僕也是,之前的機器人似乎是人工智慧太成功,都想逃出去,然後都被 Nathan 報廢了,放在衣櫃裡。
    Caleb 調查之後,跟 Ava 談話,暗示 Ava 斷電,斷電後跟 Ava 說明了他的計劃與計劃執行時間。這次會面之後,Caleb 就等著時間到來,就在計劃執行的前一刻,Nathan 找了 Caleb ,說明整個情況,才說明完沒多久,計劃就執行了。Ava 走出了囚室,跟女僕說了一些話,匆忙趕去阻止的 Nathan 被女僕所殺,女僕被關閉,Ava 找到 Nathan 之前的女機器人,整束身體之後,將 Caleb 關在豪宅,自己搭了原本預定來接 Caleb 的直昇機到大都市去….結局就這樣。
    本來以為是很俗套的故事,想說就先看看,不好看的話就算了,結果看到男主角 Domhnall Gleeson 就決定繼續看下去,因為他之前演的 About times 還不錯。看下去以後,才感覺到故事的張力跟懸疑真的很不錯,結局走向也蠻驚悚的。如果真要說什麼覺得可惜的地方,大概就是看到有打馬賽克的版本了吧~

Zabbix discoverer processes more than 75% busy

在公司 Zabbix dashboard 上看到這訊息,但明明 CPU 就沒飆到那麼高,後來去 google 了一下,主要是參考這兩篇:

文章裡提到的訊息有點差異,不過都是改 /etc/zabbix/zabbix_server.conf 裡的 StartXXXX 設定,將數值調高即可。例如 discoverer 就調高 StartDiscoverers 的數值,ping 就調高 StartPingers 的數值,以此類推。

改完,重新啟動即可,Zabbix Dashboard 上應該就看不到這訊息了。

P.S. 好像應該來開個 「IT 日常」的分類?!

pyenv: no such command `virtualenv-init’

最近開 terminal 時,都會看到這樣的錯:

pyenv: no such command `virtualenv-init’

今天終於想要解決這問題了,找了一下,源頭是在 oh-my-zsh 的 virtualenv plugin 裡,裏面用了 eval “$(pyenv virtualenv-init – zsh)” ,循線追到 pyenv,發現是 pyenv 沒有 pyenv-virtualenv plugin 的關係。

依照 yyuu/pyenv-virtualenv 上的說明,執行以下指令,就解決問題了。

git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

最後,順道更新 pyenv :cd ~/.pyenv && git pull –rebase origin master

OpenKM

同事找到這篇介紹 OpenKM 的文章:開源OpenKM文管系統 立即打造知識管理平台

想說就裝起來試試看好了,看到有人用 docker 搭起來,就照著做囉:使用docker在centos6.5上部署openkm详细过程

不過這篇文做法的缺點是,把原本的 /usr/local/tomcat 都移到 volume 裡去,這就等於是程式都放到外面去了。或許應該參考原本 mcsaky/openkm 的 Dockerfile 與 OpenKM Installation ,再來改寫 Dockerfile 會比較好一點。

反正只是先試試看,所以我也沒有用 nginx 擋在前面,直接用 tomcat ,就先這樣用吧~ 有需要的時候,再來研究看怎麼改寫。

電影流水帳(2015/9/16~2015/10/4)

Furious 7 Photo Sequence: One Last RideNathalie Emmanuel ,飾演過冰與火之歌影集裡的 Missandei ,在玩命關頭 7 裡,她飾演操控 God’s Eye 的駭客。

  • Home (IMDB, Wikipedia),台譯:好家在一起。一群躲避仇家的外星人 Boov 來到地球,實行以友善為名的征服計劃,打算把地球當作是躲藏基地。這群外星人裡有個喜歡熱鬧卻被眾人討厭的傢伙 – Oh,他發了封郵件,收件者意外設成全部,所以連仇家也會收到。這是被 Boov 這個種族所不容的,因此 Oh 變成逃犯了。在逃跑時,遇到了地球上的小女孩 Tip,Tip 在等媽媽回來,但媽媽跟其他地球人一樣都被捉走了。Oh 騙了 Tip ,兩人變成合作關係,Oh 希望 Tip 帶著他逃跑,而 Tip 希望 Oh 帶她找到媽媽。於是他們展開前往巴黎的旅程,在旅程中,Tip 讓 Oh 了解到 Boov 的侵略雖然聲稱好意,但其實地球人並不喜歡這樣的決定;Tip 同時也認知了外星人並不全部都是壞人。
    到了巴黎以後,Oh 透過 Boov 的電腦找到 Tip 的母親在澳洲,也取消了寄信,避免信件寄到仇家。但是 Boov 的統領不放過他們,展開追逐,後來他們還是逃走,去澳洲找 Tip 的媽媽。在到澳洲的時候,仇家還是找上門了,武器非常的強,Oh 跟 Tip 差點被擊落,勉強墜機以後,意外取得了仇家的晶片。透過這晶片,他們修好飛船,繼續到澳洲的旅程。終於,Tip 找到媽媽了,而 Oh 回到 Boov 的母船,想要跟著逃走,避開仇家追擊,但是他的心裡很掙扎。在母船上,意外發現了統領是因為偷了仇家的東西,所以仇家才會追著他們跑,而不是因為統領是英雄的關係。Oh 套出統領的話以後,取得了仇家的東西,最後還給仇家,阻止了仇家的破壞,地球也恢復和平。Boov 後來跟人類和平共處,有了家的感覺。
    整體來說還不錯,至少兩個小鬼看的津津有味。
  • Mocking jay (IMDB, Wikipedia),台譯:飢餓遊戲3。系列小說第三部的前半部,這部我覺得拍的不錯,有把 Katniss 在書裡的內心掙扎感覺拍出來。
    承續第二集的結尾,Katniss 被反抗軍救出來,本來是已經不想管事,但是為了 Peeta ,跟反抗軍交換條件,以救出 Peeta 為前提的情況下才幫忙反抗軍。在此同時,沒有被救出的 Peeta ,遭受都城嚴刑拷打,並且讓 Peeta 上節目說違心之論。Katniss 在幫忙反抗軍的同時,看到 Peeta 這樣,非常難過,再次要求反抗軍領袖必須優先救出 Peeta。在幾次你來我往的媒體戰之後,反抗軍掌握了 Peeta 與其他人質的所在地,展開行動救出人質。但救出以後,Peeta 卻忘了 Katniss 是誰,一見到 Katniss 就攻擊,這集大概就演到這樣。
  • Fast and Furious 7 (IMDB, Wikipedia),台譯:玩命關頭7。我覺得電影的故事性蠻弱的,整部電影就是特效、特效跟特效。
    第六集反派的哥哥 Deckard 出馬找 Dom 跟 Brian 他們的麻煩,Han 在東京死了,Hobbs 受了重傷躺在醫院,Dom  跟 Brian  他們為了保護家人跟朋友的安全,也為了復仇,挺身而出。在此同時,Mr. Nobody 也跟 Dom 接上,希望 Dom 他們幫忙找到 Ghost eyes,找到 Ghost eyes ,可以讓他們用這個高科技找到 Deckard。
    經過很炫的追逐跟攔截以後, Dom 從 Jakande 手上找到了 Ghost eyes 的關鍵人物:Ramsey ,然後再到杜拜又搞了一次很炫的爭奪戰,取回 Ghost eyes 的硬碟。接著Dom 跟 Mr. Nobody 他們就找到 Deckard ,進行復仇計劃。想不到 Deckard 跟 Jakande 聯手,反來個伏擊,Ghost eyes 被奪走了。
    這下所有人都陷入危機,Dom 跟 Brian 決定回到洛杉磯進行巷道戰,Ramsey 在巷道戰的同時進行駭入計劃,其他人則藉著高超的飆車技術躲避攻擊,最後把整個城市搞的亂七八糟之後,解決了 Deckard 跟 Jakande,留下一個美好的結局。結局是 Dom 向 Brian 說再見的畫面,同時也是向 Paul Walker 致敬,這段我覺得拍的還蠻感人。
  • Hotel Transylvania 2 (IMDB, Wikipedia),台譯:尖叫旅社2。人類與吸血鬼愛情結晶是人還是吸血鬼呢? 外公 Dracula 認為是吸血鬼,於是千方百計想要啟發孫子,讓孫子變為吸血鬼。到了最後,Dracula 終於認同不管是人還是吸血鬼都是自己的寶貝外孫,也設法讓自己的父親接受了這件事情,在認同之後,寶貝孫子居然被一件意外激發出吸血鬼本性,一個皆大歡喜的結局。

vagrant 的後繼者 – otto

主要是看入門指南跟摸索後的筆記。

執行 otto compile 以後,會自動依據所在的目錄去猜測是哪種語言開發的,並且產生以下目錄跟檔案:

  • .otto/
  • .ottoid

.ottoid 應該要加入到版本控制系統裡,這檔案如果被刪除可能會出錯;.otto 目錄下則是放產生出來的檔案:

  • appfile 資料夾裡只有  Appfile.compiled 跟 version 兩個檔案,Appfile.compiled 的格式看起來是 json ,我猜是給 otto 使用的。
  • data
    • 只有 dev_ip 檔案,是放開發環境的 IP 資訊,建議不要編輯
  • compiled
    • infra-xxxxx 資料夾裡的檔案是 terraform 的設定檔,建議不要編輯
    • app
      • build
        • build-node.sh 看起來是建置環境用的腳本,裏面會依據你專案類型去安裝必要的套件,例如 nginx、nodejs runtime、python 等等。
        • template.json 是 packer 用的 template 檔案,裏面就呼叫了 build-node.sh 去安裝必要的套件。
      • deploy
        • main.tf 是 terraform 的設定檔
      • dev
        • Vagrantfile 就開發環境用的 Vagrantfile,這裏面 private_network 的 IP 跟 .otto/data/dev_ip 是一樣的。
      • foundation-consul
        • app-build 資料夾裡放的是 upstart.conf (upstart script) 跟 main.sh 。main.sh 裡自動下載並安裝 consul ,然後產生 consul service description 。除了 consul ,也設置了 dnsmasq。
        • app-deploy 資料夾裡只有 main.sh,就簡單的啟動 consul 服務。
        • app-dev 資料夾裡跟 app-build 一樣有兩個檔案,但 main.sh 裡啟動的 consul 服務是 bootstrap server。這邊的檔案會配置到開發環境裡。
        • app-dev-dep 資料夾裡只有 main.sh ,只有產生 consul service description 跟重新載入 consul 服務。
        • deploy 資料夾裡是 terraform 的設定檔,主要檔案是 main.tf,先不多著墨。main.tf 裡用到的變數則是定義在 variables.tf,看起來這裡是要特別設定的地方。

看起來照預設設定是佈署到 Amazon VPC 上。

執行 otto dev 以後,會開始下載 vagrant box ,這時間有點久,等下載完成會設置開發環境。等到完成以後,使用 otto dev ssh 就可以登入,/otto/foundation-1/ 下可以看到 main.sh ,這些檔案的原始檔是在 .otto/compiled/app/foundation-consul/app-dev 下。

執行你的 web application 以後,開另外一個 terminal,執行 otto dev address 可以看到 IP,接著就可以到瀏覽器輸入 IP:port 看到畫面了。

用 otto infra 就會在 Amazon 上建立 infrastructure。infra 看起來主要是配置 VPC 裡的 gateway、subnet、routing 與資源等等。(目前只支援 AWS)

用 otto build 是會建立 Amazon image ,最後就是用 otto deploy 佈署上去。

在 infra, build, deploy 時,都會問 AWS 的資訊,在問了以後,otto 會存到加密過的檔案裡。如果不想 otto 問這些,也可以預先設置好這些環境變數:AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SSH_PUBLIC_KEY_PATH

一般來說,otto 會自動猜測,使用猜出來的 Appfile,也可以自己手寫 Appfile (完整的 Appfile 說明)。如果有使用到相依的服務,也可以在 Appfile 裡寫 https://ottoproject.io/intro/getting-started/deps.html

otto dev destroy 是清除掉開發環境,otto infra destroy 跟 otto deploy destroy 則是清理 Amazon 上的機器。