2017-05-07 59 views
0

我爲Debian linux編寫了一個小型應用程序,它調用python2.7來執行幾乎所有的功能。 Python函數包括例如遠程數據庫訪問,所以應用程序將依賴於默認情況下不在每個Linux發行版中的python模塊。更好的部署Debian-python混合應用程序的方法

該應用程序打包在一個dpkg文件中,以便在許多其他機器上使用(使用相同的linux發行版),使用dpkg -i MyApp01

但蟒蛇的依賴關係必須以單獨安裝的應用程序的工作:例如pip install mysql-connector-python-rf

現在我想用泊塢船我的依賴與應用程序,並使其在其他計算機上運行,​​而無需像上面那樣安裝它們。 Docker可以用來做到這一點?以及如何?

如果否,是否有更好的方法來本地捆綁dpkg文件中的python依賴項(假設目標機器具有類似的環境)?

回答

0

容器是一個孤立的環境,所以你必須運送你的程序運行所需的所有東西。

你Dockerfile將基於Debian,所以用

FROM debian

開始,將有一些

RUN apt-get update \ && apt-get install -y mysoft mydependency1 mydependency2

RUN pip install xxx

,並與像

CMD ["python","myapp.py"]

東西作爲你的Python程序結束肯定做事情喜歡

import module1, module2

這些Python模塊將需要安裝在您的Dockerfile在RUN指令

相關問題