作者poiuytrewqq (7oo7)
看板Python
標題[問題] 虛擬環境與 docker 的差異
時間Tue Aug 17 11:35:12 2021
大家好,
小弟寫了一段時間的 python 後才意識到虛擬環境,
參考板上之前提問過虛擬環境的重要性後發現虛擬環境滿必要的,
而最近也準備要開始學 docker,
查了一些資料後總結 python 虛擬環境只單獨對 python 處理,docker 是整個 OS 等級,
想請問板上大大們在開發時虛擬環境與 docker 如何做處理,以下是我的問題:
1. 什麼情況下使用 docker ,什麼情況使用虛擬環境就好?(個人想法是如果專案只有用到 python 的話才用虛擬環境)
2. 如果用了 docker 還需要用虛擬環境嗎?
-----
Sent from JPTT on my Samsung SM-A315G.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.74.103.35 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1629171314.A.2B5.html
1F:→ kenduest: 你用 docker build 自己專屬使用環境的話,傳統 08/17 11:45
2F:→ kenduest: virtualenv 等這類必要性就不高,比較是專屬的環境內 08/17 11:46
3F:推 TitanEric: 都用 在本地端開發時用虛擬環境 用Docker也是 在安裝 08/17 12:30
4F:→ TitanEric: package直接從requirements.txt安裝 08/17 12:30
5F:→ TitanEric: 當然你要本地端直接用Docker開發也是可以 但記得要Mo 08/17 12:31
6F:→ TitanEric: unt 08/17 12:31
7F:→ Hsins: 如果你用 docker-compose 跑多個 container, 那就是看你怎 08/17 15:58
8F:→ Hsins: 樣去切分 container 的職責 08/17 15:58
9F:→ Hsins: 你也可以一個 container 有兩個 Python 服務, 這時候即使在 08/17 15:59
10F:→ Hsins: docker 內也需要個別啟用 virtual environment 08/17 16:00
11F:→ roccqqck: 很少人會一個image包兩個服務拉 08/17 22:03
12F:→ Hsins: 要看服務的耦合狀況跟通訊方式,官網也有提供單容器多服務 08/17 22:39
13F:→ Hsins: 的說明,另外也要考慮整體架構 08/17 22:39
14F:推 Raymond0710: 通常開發用venv 要部署時docker包成image來跑 08/18 02:09
15F:推 ddavid: 其實docker跟venv不是二選一的問題,有時候會並用 08/20 12:39
16F:→ ddavid: 除了開發階段不同以外,Docker本來就有可能包著多個venv來 08/20 12:39
17F:→ ddavid: 運用,兩者概念都了解才知道最合適的運用例 08/20 12:40
18F:→ poiuytrewqq: 了解了,謝謝大家 08/20 14:39