2017-02-26 36 views
0

昨天我重新啓動了我的數據庫的碼頭容器。我的應用程序仍然可以連接正常不過:由於應用程序無法執行碼頭容器

下面這行沒有再工作

docker exec -i -t database_1 bash 

相反,它給了我這個錯誤:

unable to find user postgres: no matching entries in passwd file 

我不知道爲什麼它不只是給我bash

回答

1

它看起來好像你切換到Dockerfile中的一個不同的用戶,但從來沒有創建它。試試這個:

docker exec -it --user root database_1 /bin/bash 
+0

同樣的問題 '無法找到用戶根:沒有匹配條目passwd中file' Strangly如果我用數字標識它的工作原理 '泊塢窗EXEC -IT --user 0 database_1 /斌/ bash' – Jordan

+1

@Jordan你設法搞砸了/ etc/passwd或/ etc/shadow文件嗎? –

+0

從未觸及我生命中的任何一個文件。 postgres是否可能對它進行了一些更改? – Jordan

0

這是docker中的某種錯誤。顯然docker stop <container>; docker start <container>會解決它,並使用docker cp可以導致它發生。

相關問題