簡易電子白板,可整合nextcloud、可同時共同編輯

docker安裝

#修改紅色部分
docker volume create app
docker run -d -p 80:8080 -v app:/opt/app --restart=always --name whiteboard rofl256/whiteboard

安裝完畢使用反向代理就可使用了。參考文件如下:

https://hub.docker.com/r/rofl256/whiteboard

https://github.com/cracker0dks/whiteboard

還可以跟nextcloud整合

這個很陽春,可以設定密碼,但麻煩;白板可以取名字就可以開多個白板,但是掛載nextcloud只能掛同一個。

https://xxx.xxx.xxx/whiteboard/?whiteboardid=WHITEBOARDNAME

關掉wordpress的xml-rpc API呼叫功能

最近發現我安裝的nextcloud常常優雅的關閉(shutting down gracefully),當然原因很多很多,終究是我不好(一副政治人物的口吻);我接著查看log的時候,意外發現有個xmlrpc.php一直被呼叫,於是查了一下,原來是被攻擊了,當然這種無差別攻擊最後也是失敗告終。

像我這種對資安敏感度差的人,又管很多很多開源網站,一般只知道版本更新,不看是否有資安漏洞,除非網站出問題。現在問題來了,我爬了文,一般都建議關閉xml-rpc api,反正99.99%都用不到。wordkpress裡面就能找到停用XML-RPC外掛。

同場加映,我從wordpress 4.9開始使用,裡面有個阻擋廣告留言的Akismet Anti-Spam,很好用,後來升級5.x之後,又出現另一個Akismet Anti-Spam,所以我的網站有兩個Aiti-Spam但版本不同,我也不以為意;但期間我這個網站一直會要求訪問網站的人「同意訂閱」,這問題我找了很久,終於抓到是舊版Akismet Anti-Spam搞的鬼,或許是該外掛有漏洞我不自知,兼沒移除所致。現在刪掉就清爽多,也不再詢問訪問網站者是否訂閱惹。

舊版Akismet Anti-Spam存在的時候,會有一個wp_pushup目錄,裡面時常出現一個js檔案,刪了又會出現,導致來我網站的人們,都會被要求訂閱;在移除舊版Akismet Anti-Spam之後,該wp_pushup目錄也隨之被移除,也不會出現要求訂閱的訊息了。

CentOS 更新特定版本APP

上一則文章提到docker必須升級到20.10.6版,但是我刷了yum update發現原本20.10.3要直上 24.x.x版,有點怕怕的,因此希望能更新到20.10.6就好了,爬文之後解答如下:

sudo yum list docker-ce --showduplicates | sort -r
sudo yum install docker-ce-<VERSION_STRING>  docker-ce-cli-<VERSION_STRING>
#一般來說docker-ce與docker-ce-cli版本要一致比較好

gitea(吉茶)需要更新docker版本20.10.6或以上

前陣子我協助機構部門導入git LFS大檔案版本控管,當時希望push資料時,觸發webhooks,執行我寫好的程式進行分析。

我使用gitea內建測試功能,能很順利觸發webhooks,進而執行程式。

可是實作時卻觸發不了,經檢查logs與爬文後,發現docker版本必須大於等於 20.10.6 有作用,我更新到20.10.6之後測試,還是一樣沒用,只好先擺著,希望主機重開後,能有改善,但無論如何,吉茶說要更新我就照作了。

jgit clone專案失敗,原來要把帳號密碼存起來才行

自己寫 java 呼叫 jgit 函式庫clone專案,卻失敗,我看到錯誤訊息是沒有帳號密碼;可是程式明明有輸入帳號密碼,後來爬文才發現我有案子有使用LFS,需要設定快取把帳號密碼儲存起來,否則會一直要求輸入帳號密碼造成程式錯誤。

git lfs 需要2.0或是以上才行

git config --global lfs.cachecredentials

原來檔案總管理面的檔案,可以自己排列

一直以來我都以為檔案總管的檔案,只能依照上面的欄位進行排序,但是今天被中國同事教育了一番,我錯了!

這位同事工作需要拍照,再將照片存到電腦,檔案總管選擇「圖示(大中小)」進行手動排序,就可以很容易觀看到差異;原本他使用的電腦可以這樣隨意移動,但是換個電腦就不行。

最後問到我這裡來,我就說不可能,只能針對上面的欄位進行自動排序(信心滿滿);但是該同事啪啪打臉我,拿能自己排序的電腦給我看,最後我汗顏了,真是不能太鐵齒。

後來才發現,這功能是windows xp專有的,也就是xp能夠停用「自動排序」,win7以後基本上不能停用自動排序,於是有神人就弄出可以停用自動排序的設定檔案,請按此下載,解開點兩下就可以了。

Gitea無法觸發webhook

我在Gitea上面設定達成某個條件,觸發webhook執行

但是出現以下錯誤

 ...webhook can only call allowed HTTP servers (check your webhook.ALLOWED_HOST_LIST setting)

需要允許webhook執行遠端的http程式

#修改app.ini
[root@firewall crontab]# docker exec -it gitea bash
14c18c2bd6c0:/# vi data/gitea/conf/app.ini
#加上
[webhook]
ALLOWED_HOST_LIST = 192.168.1.0/24

修改完成重開gitea就能使用了

bare是啥碗糕? git clone vs gi clone –bare

我們從github拉乾貨下來的時候,一般只有兩種方式,一種是直接下載zip檔案,另一種是克隆;這兩種方式差在克隆可以全部版都(甚至連分支branch)都有,而下載只有最新版的檔案,不含其他版本。

這裡介紹第三種方式,克隆指令加上–bare

git clone --bare <git http url>

會出現原始版本紀錄,但不會出現檔案.

 

未加–bare

我因為系統設計需要寫程式,只需抓出專案標籤名稱以及該標籤所屬的所有檔案名稱,但不需要使用實際檔案;考慮jgit函式庫還是需要克隆下來才能做事情,但我又不需要把真的檔案都拉下來,因此選擇–bare的方式拉貨,就能達到我的目標了。

Eclipse 搭配java 11出現ResolutionException

好久沒寫java程式了,最近要寫「機構3D圖git版控」之後整合程式,編譯沒問題,在eclipse執行時居然出現這個錯誤

Error occurred during initialization of boot layer
java.lang.module.ResolutionException: Modules xxx and yyy export package zzz to module kkk.web

原來是有些jar檔案,並不是使用module方式,但是設定卻在module裡面,只要將該jar檔案從「Modulepath」移到「Classpath」就好了。

1 2 3 4 5 6 ... 73