middle2

Month: 2017-05

2017-05-06

ronnywang 10:39:19
@ronnywang has joined the channel
ctiml 10:39:21
@ctiml has joined the channel
ronnywang 10:39:21
@ronnywang set the channel purpose: middle2 是一個開放原始碼的 PaaS 平台,希望能成為 g0v 或是任何 NGO 等公民科技、開放資料、開放政府議題相關的網站平台。目前有試用平台可以在 https://try.middle2.com/ 使用
ronnywang 10:39:47
@ronnywang set the channel topic: middle2 是一個開放原始碼的 PaaS 平台,希望能成為 g0v 或是任何 NGO 等公民科技、開放資料、開放政府議題相關的網站平台。目前有試用平台可以在 https://try.middle2.com/ 使用
chihao 10:40:59
@chihao has joined the channel
johnny 10:50:53
@johnny has joined the channel
acechen 10:50:56
@acechen has joined the channel
johnny 10:53:03
請問有預設使用者名稱嗎?root 進不去
ronnywang 10:54:56
@johnny 你是用什麼方式要連入?
johnny 10:55:04
ssh
ronnywang 10:55:11
ssh 只能用 git user
johnny 10:55:12
還是不是這樣用XD
johnny 10:55:40
git user怎麼註冊?沒看到這個選項
johnny 10:55:56
先吃東西好了
ronnywang 11:01:26
把 public key 傳上去之後就可以用了
ronnywang 11:01:31
跟 github 一樣
kiang 11:13:00
@kiang has joined the channel
johnny 11:57:07
用phpgdmin 上傳 db 的時候碰到 No server supplied
johnny 12:00:35
我上傳的檔小於5mb
yutin 13:49:07
@yutin has joined the channel
yutin 13:49:11
https://github.com/g0v/shelter

GitHub

g0v/shelter

Contribute to shelter development by creating an account on GitHub.

RS 13:49:45
@rschiang has joined the channel
iflin_2 14:45:51
@iflin_2 has joined the channel
antyo 14:46:25
@antyo has joined the channel
isacl 16:02:32
@isacl has joined the channel
johnny 16:14:07
成功了! http://kaohiung-cheng-286972.try.middle2.me/

kaohiung-cheng-286972.try.middle2.me

金錢報

增加財務透明,減少官商勾結。雖然監察院依法將【過期五年】的資料銷毀,本站仍堅持保存我國所有財產申報原始檔,我們相信這些資料是人民知的權利,而不是有權有勢的政客鬥爭的工具。

johnny 16:34:13
但可能蠻需要一個 reverse proxy 的設定,用來serve static file, cache 或是其他功用
johnny 16:38:18
目前單 web 效能蠻讚的
kiang 23:39:26
好像沒辦法直接 ssh 進去
start with term: xterm-256color (width: 80, height: 24)
Error response from daemon: No such container: c-22
Connection to try.middle2.com closed.
johnny 23:42:20
@kiang : 建完專案後,先按左上角那個的連結,有個 use shell 的可以連進去,例如我的
Use Shell: `ssh -t git@try.middle2.com run kaohiung-cheng-286972 bash`
ronnywang 23:42:31
XD , 看來這邊是大家都會誤解的地方
ronnywang 23:43:05
ㄟ,no such container 這個 message 好像是已經有連成功了
ronnywang 23:43:12
應該是因為程式碼還沒有任何 commit
ronnywang 23:43:29
所以 docker 要把程式碼拉進來時失敗
kiang 23:43:42
恩, commit 完成後可以進去了
ronnywang 23:43:44
所以 container 沒跑起來
ronnywang 23:43:49
這邊我可能要更正一下錯誤訊息
kiang 23:44:45
所以預設有 10GB 硬碟 + 1.8G RAM (Y)
johnny 23:45:07
@kiang @ronnywang :我一開始無法了解的是,use shell連進去的是一個新建的container,所以並不是真實 server container,給你們參考一下
kiang 23:45:29
咦,所以不是運作中的?
ronnywang 23:45:37
這個 container 雖然是 root 權限,但是在裡面做的變動在關掉之後就會消失
ronnywang 23:45:45
不是運作中的那一個
kiang 23:45:48
-.-||
kiang 23:45:57
所以是一種環境測試的用途
ronnywang 23:46:02
因為 middle2 骨子還是 PaaS ,而不是 VM
ronnywang 23:46:15
所以主要操作方式還是以 deploy code 為主
johnny 23:46:23
恩我覺得這樣不錯,以paas來說已經算是很方便debug了
ronnywang 23:46:54
這個環境只是讓你可以測試看看裡面 script 執行是否正常,可以拿來 debug 一些 cron 為什麼沒法正常跑的情況
kiang 23:47:56
了解,只是運作中的程式自己寫入的檔案 ( .gitignore 忽略的那些),變成無法直接碰觸?
ronnywang 23:48:19
yes, 因為 .gitignore 的檔案在我這邊完全無法得到
kiang 23:48:46
恩,先跑看看能否運作,感謝
ronnywang 23:49:12
之後有計劃會可以幫專案加上可常態儲存檔案的資料夾
ronnywang 23:49:29
以便可以做些上傳檔案圖片的靜態檔的功能
ronnywang 23:49:47
不過現在還沒這功能,所以現在只能用資料庫來存
kiang 23:50:04
其實能夠存取資料庫已經很好了,只是我一般會有一些快取寫在檔案,這樣的架構大概就沒有辦法運作
ronnywang 23:50:28
之後可能會是 /srv/data/ 這個資料夾的東西可以被設定成可以永久儲存,除此以外其他資料夾都是用後即焚
ronnywang 23:50:47
如果是 php 輸出結果的 cache ,也可以直接放到 /tmp 去
ronnywang 23:51:04
container 在超過一小時都沒人看的情況才會被關掉清掉
ronnywang 23:51:18
所以在關掉清掉之前, /tmp 都還是有效果的
kiang 23:51:36
了解,踹踹看先
kiang 23:53:12
話說 middle2 的 issue tracker 在哪兒啊?想說有看到就記錄一下
ronnywang 23:53:25
https://github.com/middle2tw/middle2

GitHub

middle2tw/middle2

Contribute to middle2 development by creating an account on GitHub.

kiang 23:53:33
收到
kiang 23:58:05
對了,那上傳圖片部份,我有可能在 server 端上傳後直接 commit / push 嗎?
ronnywang 23:59:34
目前從 container 裡面不能直接做到 commit / push
ronnywang 23:59:46
因為 git ssh key 不會在 container 裡面

2017-05-07

kiang 00:00:15
恩,那現階段大概只能塞進資料庫了
ronnywang 00:00:46
嗯,不是塞進資料庫,就是實作上傳到 amazon s3 ,或是等支援掛入永久硬碟 XD
kiang 00:01:13
恩,我目前還是都直接寫檔案 XD
ronnywang 00:01:30
嗯,直接寫檔案是最簡單的
ronnywang 00:02:00
不過 middle2 有預留一個機制是假如之後某個單一服務流量變大的話,可以多跑幾台 container server 起來做 load balance
ronnywang 00:02:39
這種直接寫檔案的就要做類似 nfs 讓不同台的 container 資料夾內要完全同步
kiang 00:04:15
架構上要拆的比較乾淨
ronnywang 00:04:39
不過不是做不到,其實剛講的 nfs 掛在 /srv/data 在 2015 年有這功能 XD
ronnywang 00:05:09
當初是要在 middle2 上面跑 mediawiki ,mediawiki 有很多圖片上傳功能是存在靜態檔案的
kiang 00:05:30
後來放棄這樣功能是效能考量?
ronnywang 00:06:16
只是 2016 年把架構從原先自幹 chroot 改用 docker 之後,因為 docker 要用另外的方式實作這點,加上其實使用這功能的專案不多而且都沒在維護了,就在改用 docker 時先暫時拔掉了
ronnywang 00:07:19
但這功能一直有放在 TODO 計劃中
kiang 00:07:27
了解,我就先踹踹了,可能 http://foundations.olc.tw/ 比較容易直接塞進去, http://k.olc.tw/elections/ 放了太多 workaround XD

foundations.olc.tw

法人一覽 @ 社團/財團法人資料檢索

社團/財團法人資料檢索提供簡單的介面檢索國內有登記立案的社團/財團法人

k.olc.tw

2016行政區 @ 選舉黃頁

選舉黃頁提供了各種發生在中華民國的選舉資訊,主要聚焦在各種候選人

ronnywang 00:10:46
@kiang PHP 其實應該是相對穩定的,畢竟我自己也都是寫 PHP 專案 XD
ronnywang 00:10:52
不過我還沒支援 composer
ronnywang 00:53:03
喔對了,我預告一下因為接下來一兩週會要處理把 middle2 從 linode tokyo2 搬到 azure ,大概會有 2 - 3 次的停機,每次應該不會超過 1 小時 (上個月才剛從 tokyo1 搬到 tokyo2 XD)
ronnywang 00:53:53
目前 middle2 有 6 台主機,除了 database 相關的沒做 HA 搬機一定會停機影響到服務,其他的可以做到無感轉移
ronnywang 10:24:04
@johnny 金錢報本來是在 heroku 上,資料庫也是在上面嗎? 所以本來你有付錢在 heroku 上?
johnny 15:10:33
@ronnywang : 對金錢報都在heroku,好像只付過幾次,後來都用 db restore,就無法讓使用者輸入的東西進資料庫了
itaigi 就在 linode 和 digitalocean,到時候就直接把省下的贊助過去
kjohn01 16:41:27
@kjohn01 has joined the channel
ronnywang 17:48:25
目前 middle2 的錢還很足夠,省下的錢直接贊助回 g0v 或是 ocf 好了?
ronnywang 17:50:15
喔喔,原來 heroku 有這招,可以用 db restore 免費突破一萬筆資料上限 XD
kjohn01 19:42:11
@ronnywang hi 我是實習透視鏡的 John,請問我們可以使用 middle 2嗎?
ronnywang 20:03:36
可以啊,目前 try.middle2.com 可以先試用看看是否可以符合你們目前專案需求, ok 的話只要符合 open source, 非營利, 與開放政府或公民科技相關的專案都可以使用 middle2
🙌 1
kjohn01 20:33:05
好呀那我們就先來試試看~
johnny 20:47:55
@ronnywang : 對阿,他沒有防 XD,但不能線上新增還是挺麻煩的,但想到錢就覺得不麻煩了

2017-05-08

ronnywang 01:03:27
https://sunshine.cy.g0v.tw/ SSL 生好了

sunshine.cy.g0v.tw

金錢報

增加財務透明,減少官商勾結。雖然監察院依法將【過期五年】的資料銷毀,本站仍堅持保存我國所有財產申報原始檔,我們相信這些資料是人民知的權利,而不是有權有勢的政客鬥爭的工具。

johnny 01:04:16
@ronnywang :!!我不是才剛動作嗎?
ronnywang 01:04:38
XD ,看到 pull request 的信我就手動跑了
johnny 01:05:59
嚇到哈哈
ralflin 09:19:50
@ralflin has joined the channel
kiang 09:41:56
@ronnywang phpMyAdmin/phpPgAdmin 的權限也許需要另外開?我目前點選都會回到 /user
ronnywang 09:46:08
@kiang 幫我再試一次,剛剛我把新程式碼推上去了
ronnywang 09:46:19
之前改 session key 時沒改到 phpmyadmin
kiang 09:46:59
現在訊息變成 "沒有任何 database 可用" ,所以我需要重新登入?
ronnywang 09:47:14
你有任何專案有啟用 mysql 的嗎
ronnywang 09:47:27
因為 mysql 是綁專案的
kiang 09:47:59
了解,我看到介面了
ronnywang 09:58:02
如果你想要匯入資料的話,我覺得用 ssh tunnel 的方式然後 command line 匯入會比較快
kiang 09:58:54
收到,可能晚點繼續了,先去忙 XD
ronnywang 09:59:04
在專案頁會有建 tunnel 的指令,像是「ssh -L3306:139.162.81.196:3306 git@git.middle2.com tunnel taoyuan-chiang-872029」
ronnywang 09:59:25
建完 tunnel 之後,你的 localhost 3306 port 就可以連到實際的 mysql 主機
ronnywang 09:59:39
如果 3306 port 已經被用了,可以把 3306 換別的
zonr 21:48:40
@zonr has joined the channel
bil 23:22:15
@bil has joined the channel
ttcat 23:27:02
@ttcat has joined the channel

2017-05-09

wildjcrt 09:56:33
@wildjcrt has joined the channel
mrorz 12:47:44
@mrorz has joined the channel

2017-05-10

ronnywang 00:52:52
我正在實驗是否能夠不中斷服務的前提下把 middle2 從 linode tokyo2 搬到 azure
ronnywang 00:54:16
剛剛因為失誤造成了 23:57 - 00:03 的 downtime ,在這邊記錄道歉一下 XD
ronnywang 00:56:30
目前微軟贊助 middle2 一年每個月 750USD 的 Azure ,是用微軟的 BizSpark 專案,這個專案有限定使用的機房,而離台灣最近的是新加坡,所以 middle2 會從 linode tokyo2 搬到 azure 新加坡
ronnywang 00:58:49
順帶一提, middle2 申請了 30w 的 g0v grant ,其中原先計劃是這 6 個月會把 middle2 從 ronnywang 個人的平台變成大家都可以用的平台,以及希望能爭取到其他贊助商讓 middle2 可以永續走下去,因此 30w 預算的分配方式,其中是以 6 個月內, ronny 和 timothy 兩人每人每月 1w 的人事成本,共 12w 人事成本,剩下 18w 則是雲端主機租用成本或是其他雜支
ronnywang 00:59:41
現在情況,linode tokyo2 上一個月的費用大概是 4500 NTD 所以 18w 的 grant 錢可以讓 middle2 用 40 個月
ronnywang 01:00:44
而因為 Azure 贊助一年的費用,因此有機會讓 middle2 餘額從 40 個月往後再延長 12 個月
ronnywang 01:02:37
一年後如果微軟能繼續贊助那就保持在現有狀況,如果不行,就可能會視情況搬移到品質不變,但對 middle2 來說最省錢的方案
ronnywang 01:04:25
而也趁這次從 linode 搬到 azure ,我想建立起一個把 downtime 縮到最短的搬移流程,這樣假如之後還要再搬的話至少不會對現有用戶有太多影響
ronnywang 01:05:43
等 azure 搬移完成後, middle2 就等於有在 HiCloud, Linode Tokyo1, Linode Tokyo2, AWS, Google Computer Engine, Microsoft Azure 這些環境都完整執行過了
4
jaychsu 09:30:39
@jaychsu has joined the channel
wildjcrt 11:05:03
@ronnywang Azure 的 bizspark 方案到時候的轉移成本是不是也要估算進去?還是未來應該就在 Azure 了?
wildjcrt 11:05:49
bizspark 要開一堆帳號才能完整利用那些錢有點麻煩,不過這個方案真的蠻大方的
ronnywang 12:07:31
我是想如果一年後微軟不繼續贊助我就會搬走,而趁這次從 linode 搬到 azure 就把轉移流程建好,降低一年後從微軟搬走的成本,反正基本上哪裡便宜往哪跑 XD
ronnywang 12:08:55
不過理想上是這一年微軟覺得 middle2 對他們的行銷或品牌價值也有助益,就決定繼續贊助,這樣說不定 grants 的錢我就永遠都花不完了 XD
ttcat 12:16:38
聚寶盆!!
johnny 12:21:51
@ronnywang : 好奇Azure 每月750 USD 是怎麼樣的設備等級阿
wildjcrt 14:13:43
我猜應該是 A1?
https://azure.microsoft.com/zh-tw/pricing/details/virtual-machines/linux/

Microsoft Azure

定價 - Linux 虛擬機器 | Microsoft Azure

Azure 提供多種 Linux 虛擬機器的定價選項。多種不同的授權類別供您選擇,並開始使用。

ctiml 15:18:46
要考慮的可能還有 network bandwidth 的問題。Linode 不管什麼等級的機器似乎都是 1000Mbps 以上,但 Azure 至少要 A4 v2 才會接近 1000Mbps,可是 A4 v2 有點貴 XD
ronnywang 17:03:24
我現在對機器的規劃是 azure 贊助最多五個帳號,每個帳號最多 150USD 一個月
ronnywang 17:04:19
所以我會一個帳號開兩台機器,一台 SSD 規格專跑資料庫,DS1_V2 3.5GB RAM SSD ,一個月 1800 NTD 左右
Charlieeeee 22:46:52
@charlieworld has joined the channel

2017-05-15

ronnywang 21:45:44
緊急公告一下,今晚預計 23:00 會中斷一下服務,然後把整個服務從 Linode 轉移到 Azure 去,如果一切順利的話應該只會中斷個五分鐘左右...不順利的話就不知道我今晚能不能好睡了 XD
ronnywang 21:48:57
database 前幾日就已經在 azure 架好了與 linode 資料同步的 replica ,所以 23:00 只是把連到的資料庫從 linode 改成 azure ,以及修改 DNS ,到時候如果 DNS 還沒更新的人,會連到 Linode 的 web server 但是用的是 Azure 的 database ,速度會比較慢,不過等 DNS 更新後就全都在 Azure 就比較快了
ronnywang 21:49:12
Linode 是日本東京二,Azure 是東南亞新加坡

2017-05-16

ronnywang 00:05:38
結果一個小時才弄好 XDDD
ronnywang 00:05:52
現在已經搬好了,不過還有些東西沒弄好,繼續弄...
👻 1