AD

2022-07-01

Docker selenium/standalone-chrome 遇到 ConnectionResetError(104, 'Connection reset by peer')

這是一篇其實沒什麼真正問題的筆記,但花了幾個小時才解決,記錄一下。
 
我們的 Jenkins pipline 會起一個 selenium/standalone-chrome 的 docker,用類似這樣的方式起:
  docker run -d -p 4444:4444 selenium/standalone-chrome 

每次跑完都會 stop 這個 container。 

code 是類似這樣連 remote webdriver 的: webdriver.Remote("http://localhost:4444/wd/hub",options=options) 

其他專案的 docker compose 執行 selenium/standalone-chrome 後,用一樣的 code 都沒問題,但這次卻一直遇到以下的錯誤:
 Execute case encounter an error: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer')) 

還有一次是這樣的錯誤: Execute case encounter an error: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')) 

後來才發現是因為 docker 還在啟動⋯⋯

2021-10-29

Ubuntu 刷新 GNOME 桌面環境

在桌面沒有停止回應,可能只是某個程式的選單不知道為什麼卡在畫面上的情況,
按 alt + F2 會跳出指令視窗,輸入 r 再 enter 即可刷新。

如果整個畫面是卡住的,但可以開起終端機,也可以輸入以下指令刷新:
gnome-shell --replace & disown

2021-10-26

Python 建立 2D list

Python 建立 2D 串列時可以用3種方法:
1.直接建立:
new_list = [[0, 0, 0], [0, 0, 0]]
2. 用列表建立:
new_list = [[0 for r in range(3)] for c in range(2)]
3. 用 numpy建立陣列:
import numpy as np
new_list = np.zeros((3, 2), dtype=np.int)


如果用*來建立會遇到一些問題:
new_list = [[0] * 3]*2
看起來沒問題:
>>> new_list
[[0, 0, 0], [0, 0, 0]]

但如果
>>> new_list[0][1] = 1
>>> new_list
[[0, 1, 0], [0, 1, 0]]

用*建立出來的 2D list 是指向 list[0] 的 index,所以 list[0] 的值改變時,其他 list 也會更著改變。

2021-05-25

解決 Ubuntu 18.04 Macbook SD卡無法讀取

重新安裝 udisks2 套件:
sudo apt install --reinstall udisks2
然後重新開機。

2021-05-21

一邊拯救人類一邊賺狗狗幣 - 用 Folding@home 計算蛋白質摺疊還可以拿到 Dogecoin

Folding@home 是什麼

Folding@home (簡稱 FAH)是一款研究蛋白質摺疊、誤折、聚合及由此引起的相關疾病的分散式計算工程。

這能讓科學家更了解許多疾病的起因和發展,像是阿茲海默症、亨廷頓舞蹈症、牛海綿狀腦病、癌症和囊胞性纖維症等。

很多研究蛋白質結構的論文,都有參照這個計劃的成果(wiki)。

分散式計算就是大家提供一些自己電腦的運算能力,來完成整個大專案的計算。

就很像是在「挖礦」,不過不是計算區塊鍊,而是計算蛋白質、疾病等發展!

算 Folding@home 還能得到 Dogecoin

我之前就一直在想,如果邊算 Folding@home 還能拿到虛擬貨幣,會不會增加大家算蛋白值的興趣呢(看看那缺貨的顯卡),沒想到真的有佛心的人兄建立一個叫做 Dogefolders 的 team (官網),只要你計算了夠多的蛋白質折疊,他就會提供你 Dogecoin!!

要怎麼一邊算 Folding@home 一邊得到 Dogecoin 呢?

1. 先去 Folding@home 官網 https://foldingathome.org/start-folding/ 下載自己電腦可以用的安裝檔。
下載時會看到3種東西,分別是 fahclient、fahcontrol 和 fahviewer。
基本上下載前2個就行!
2. Fahclient 就是計算用的客戶端,裝好之後就可以到網頁的控制台 https://client.foldingathome.org/ 可以做一些設定!

3. 這個是網頁的控制台左上方,要設定能拿 Dogecoin 最重要的就是以下設定!
點擊「Change Identity」:


設定 Team Number 「226715」這是 Dogefolder team 的號碼:

在 PassKey下面有個「Get a Passkey」,點擊他就會到這個網頁:

Name 的地方貼上你的 Dogecoin 錢包地址(這個網路上有很多資料,這邊就略過),小心不要貼錯了!
Email 就用平常的 mail 就行。

接著按「Get Passkey」等待一會,就會收到一封有 passkey 的 email 囉!
可以回去到「Change Identity」貼上 PassKey 然後儲存了!

接著就讓他跑吧!

Fahcontrol

剛剛不是還有裝 fahcontrol 嗎?

如果你在網頁 control,上按了 Stop Folding,之後要再跑時怎麼辦呢?

我在網頁找了一下好像都沒有 Start 的選項,這時候打開 fahcontrol,就有「Fold」的按鈕,可以讓 Folding@home 開始計算囉:



Fahviewer

fahviewer 可裝可不裝,它是用3D的方式來呈現你目前算的蛋白質長什麼樣子:


登登!目前長這樣,還蠻有趣的啦。

最後

目前我才剛剛開始加到 Dogefolders 隊伍,由於 Dogefolders 的創立者希望一次就是發送出一整個狗狗幣,所以要算到「榜上有名」,才會獲得狗狗幣。

即使算不到狗狗幣也不要灰心,來看一下狗狗幣的故事,看看對加密貨幣有沒有什麼反思吧:https://www.blocktempo.com/story-about-dogecoin-why-their-fathers-abandon-it/


如果文章有幫助到你可以在 LikeCoin 上幫我拍手喔