systemd[1]: Starting Certbotcertbot[...]: Traceback (most recent call last):certbot[...]: File "/usr/lib/python3/dist-packages/requests_toolbelt/_compat.py".............certbot[...]: ImportError: cannot import name 'appengine' from 'urllib3.contrib' ...systemd[1]: certbot.service: Main process exited, code=exited, status=1/FAILUREsystemd[1]: certbot.service: Failed with result 'exit-code'.systemd[1]: Failed to start Certbot
2024-05-29
[Certbot] ImportError: cannot import name 'appengine' from 'urllib3.contrib' ...
2024-05-25
[MQTT] 1 - 試著來架設 MQTT - RabbitMQ
- Kafak
- RocketMQ
- RabbitMQ
- 在下在用的環境主要都是 client-server 的架構,所以選 RabbitMQ
- 在下並沒有需要高吞吐量的,所以選 RabbitMQ
- 以前在寫 JAVA 時有吃過 JAVA 吃爆記憶體的虧,所以不會太想選 RocketMQ(註: 這只是在下個人偏見,我知道現在 JAVA 越來越優化這部份,但就是我個人偏見)
- 之後應該也會來玩 Kafak,所以現在先玩 RabbitMQ
2024-04-28
[Python] 使用 CnOcr 進行辨識時出現在 Windows/Linux 和 MacOSX 的結果不一樣的情況
2024-03-24
[Windows] docker desktop 4.26.0 開始會遇到 container 在啟動後維持了一定時間(大概30分鐘)時,外部host就無法對該容器進行操作
先說明,這有可能只是在下自己遇到的情況…
就是,某天在下 Windows 11 當時使用的 docker desktop 是在 4.25.0 然後更新到 4.26.0 時發生了一些奇怪的問題…
先說明在未更新前的環境
os: win11
cpu: amd ryzen 2700x
ram: 2 * 16G
app: docker desktop 4.25.0
containers: ubuntu 20.04 lts(內裝了 apache, php, mysql, phpmyadmin)
因為我大部份進行開發都是在公司上班時用工作機(筆電),當時工作機的 docker desktop 是更新到 4.25.2,家裡的桌機主要是為了在家工作時可以拿來開發,所以平時 docker desktop 我是不太會去更新
然後就有天看到有提醒有新版本 4.26.0 可以更新,我也沒想太多,就進行動作,然後更新完就把 docker desktop 關掉了,也沒去留意。
直到有天是公司 pm 告知客戶有反應前次更新有一些狀況,問我能不能先在家更新,更新完再來上班,我想說也行,就在30分鐘內完成了修正然後 hotfix 到客戶端去,正準備結束時就不知道為啥就按到了系統頁面的重新整理,結果發現一直在 loading…
2024-03-23
docker-compose 在 windows 環境該如何在 volumns 中設定掛載外部路徑
volumns:
- "D:\abc:/var/www/html"
- "./def:/var/www/html2"
"./def" 是以 docker-compose.yml 這個檔案的路徑開始中的 def 資料匣
我假定在 D:\abc 和 def 中都放了一個 index.html,在 container 啟動後,實際到 /var/www/html 路徑下查看,會發現是空的…而到 /var/www/html2 中查看則會有看到 index.html
在下試過很多寫法,但好像都無法掛載不是跟 docker-compose.yml 同路徑的其他路徑…但後來在 google 搜尋之後,發現了狀況,要掛載非 docker-compose.yml 同路徑的其他路徑,除了要寫絕對路徑的寫法外,寫法要改成
//{Disk drive}/path
例如: D:\abc 的掛載就要寫成
- "//d/abc:/var/www/html"
如此就能正常掛載到想要的外部路徑
註: 我自己後來把 docker desktop 在「用/不用 WSL」切換來切換去,有發現似乎「//d/abc」的這個方式是在「用 WSL」的情境下才有支援,「不用 WSL」的情境下還是要使用「D:\abc」的寫法,供大家參考