2017-06-12 79 views
0

如何在Docker中執行時讀取python模塊中的文件?我有一個python模塊,我在我的代碼中導入。通常是爲了獲取模塊的相對路徑<<module_name>>.__path__。然而這種方法在docker中不起作用,但在本地工作。如何從docker中的python模塊讀取文件

有沒有一種常見的方式,我可以在Docker中以及在本地讀取模塊中的文件?

+0

你能提供代碼來顯示你在做什麼嗎?我們需要更多信息來弄清楚你在做什麼。 –

+0

'進口module_data'#這個模塊有幾個系列化文件 #once模塊導入讀取文件 '路線= module_data .__路徑__ [0]' 然而行'module_data .__路徑__ [0]'不以作品碼頭工人,雖然它在當地工作(沒有碼頭工人) –

回答

1

,需要考慮幾件事情:

  1. 哪裏是安裝在集裝箱蟒蛇什麼版本? 與您的開發環境相匹配嗎?
  2. 看看你的dockerfile - 你的工作目錄是什麼?你有沒有設置一個?也許,你正在從一個目錄運行你的Python代碼,但試圖從另一個目錄導入一個模塊。
  3. 您的PYTHONPATH是否設置在您的容器中?
  4. 您是否已將模塊安裝在您嘗試使用的容器中?也許有一個requirements.txt文件或手動?如果是這樣,你是否使用與安裝模塊相同的python版本/路徑來執行python代碼?
  5. 您使用的是虛擬環境嗎?它是來源?
  6. 您的容器運行的用戶是什麼?它有權訪問python模塊嗎?您可能需要chown站點包路徑或作爲不同的用戶或root運行。