看板 Python 關於我們 聯絡資訊
大家好 對python是全新手,語法等等網路上有許多資源可以K 但一些問題找不到方向,想請大家指引一下 以一個例子來說,假設我寫好一個helloworld.py, 單機執行沒問題了, 也準備好一個實際的server,準備當成正式環境,假設是台unix server好了,python假設 也裝好了 server位於內網中無對外網路 首先是編譯問題 發布出去一般都是發布.py這個檔案嗎?目前我只會python xxx.py的執行方式所以才有此 一問 打包問題: 假設我開發過程pip安裝了一些套件,我該如何將這些套件連同程式打包起來? 以java來說有打包jar的流程,然後複製jar到其他機器上執行,python上這個流程是什麼 呢?主要是因網路問題,不太可能什麼事情都pip安裝,是否有自行複製套件到主機上的 方式? 目前找到的資源大多是語法,或是哪些套件好用,缺乏這方面的資訊,加上發布關鍵字查 到的直接跳到docker,cicd的部署對我又跑太快,再麻煩大家指引一下了,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.52.9.164 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1583906411.A.C1D.html
Hsins: 就是把 Python Script 放到 server 上 run 他。 03/11 14:46
Hsins: Python 是直譯式語言,沒有編譯問題,Java 打包過程涉及到 03/11 14:47
Hsins: 將 .java 編譯成可以 Java 虛擬機可以處理的 .class 字節碼 03/11 14:48
Hsins: 。Python 的這個過程,比較需要看你的專案大小,如果是單一 03/11 14:49
Hsins: 不涉及其他 package 的就直接複製過去在 server 上執行腳本 03/11 14:49
Hsins: 就可以了,如果有 import 其他 package 就記得把依賴的套件 03/11 14:50
Hsins: 在 server 上裝一裝,通常會用 Python 環境或 docker 把這 03/11 14:51
sherees: 想到的最佳解就是docker了 03/11 14:51
Hsins: 個步驟包一包,避免污染系統層級的 Python 相關套件。 03/11 14:51
sherees: 或者寫一個setup去做安裝也可以解決 03/11 14:52
areyo: Django?flask 03/11 17:14
yushes920179: Pyinstaller 打包成 exe 03/11 19:51
yushes920179: 上面那些都需要網路 docker hub也要網路 03/11 19:52
alvinlin: 通常大家會用pip freeze先產生一個requirements.txt給你 03/12 00:36
alvinlin: 然後建立一個虛擬環境目錄用 pip3 install PACKAGE -t . 03/12 00:40
alvinlin: 然後zip,copy過去部署.參考https://tinyurl.com/qk356nb 03/12 00:42
shou666: 謝謝大家的幫忙,綜合大家的指引,我找到用pip frzeeze 03/13 09:57
shou666: 取得requirements.txt,再 pip download -r requirements. 03/13 09:57
shou666: txt下載依賴套件,再搬到主機上離線部署,有個方向了, 03/13 09:57
shou666: 謝謝大家 03/13 09:57
alvinlin: ^^ 03/17 01:30