2014-10-01 81 views
26

開始泊塢作爲守護進程一直在使用泊塢成功了幾個星期,但今天當我下了一套建議在/etc/init/docker.conf添加以下兩行到泊塢窗配置文件的說明:在Ubuntu

limit memlock unlimited unlimited 
limit nofile 262144 

然後它建議用sudo /etc/init.d/docker restart重新啓動Docker。當我這樣做的Ubuntu 14.04下它回來報告說:

  • 碼頭工人通過新貴管理,嘗試使用服務泊塢窗重啓

我試圖sudo service docker restart其所報道:

stop:未知作業:docker

start:U未知的工作:碼頭工人

現在我被困在碼頭守護進程不運行!我試圖重新啓動,但它仍然不能運行,運行簡單的東西作爲sudo docker version當我得到:

Client version: 1.2.0 
Client API version: 1.14 
Go version (client): go1.3.1 
Git commit (client): fa7b24f 
OS/Arch (client): linux/amd64 
2014/10/01 09:57:45 Get http:///var/run/docker.sock/v1.14/version: dial unix /var/run/docker.sock: no such file or directory 

要解決我試圖啓動泊塢窗守護進程在命令行用:

sudo docker -d 

而在另一端窗口我現在可以正常運行Docker。這很好,但是我怎樣才能讓它正常啓動呢?另外我注意到我有兩個碼頭配置文件:

/etc/init/docker.conf 
/etc/init/docker.io.conf 

它們看起來像DUP。他們是多餘的?我應該看哪一個?我需要兩個嗎?

我還注意到,當我運行sudo service --status-all |grep docker時出現了這種重複現象,我列出了dockerdocker.io作爲列出的服務。長大的。

+0

請注意我真的不明白**暴發戶**的機制,我懷疑這是更多的暴發戶問題,然後是碼頭問題。 – ken 2014-10-01 09:20:57

回答

23

有許多流行的存儲庫爲Ubuntu提供docker軟件包。包(docker.io)很可能來自Ubuntu存儲庫。另一個流行的是http://get.docker.io/ubuntu,它提供了一個包lxc-docker(我正在運行後者,因爲它運送更新更快)。確保只安裝一個包裝。不太確定清除包裝是否清理妥當。如果sudo service docker restart仍然不起作用,則可能必須在/ etc /中手動清除。

+1

現在你說這個我記得我在Docker上「快速跟蹤」,這幾乎肯定是爲什麼我有兩個版本。可悲的是,我從來沒有寫下我做過的事情,所以我猜我今天早上會對其進行逆向工程。 – ken 2014-10-02 07:37:19

+1

我也會嘗試'sudo服務碼頭重啓',但我不期望從之前有任何改變。當你說「在/ etc中手動清理你能告訴我你的意思嗎?我懷疑我需要去那裏,但它的一個我不知道的區域 – ken 2014-10-02 07:38:01

+0

順便說一句,/etc/apt/sources.list.d /'我有一個「docker.list」和一個指向「http:// get.docker.io/ubuntu」的「docker.list.save」文件。我不知道「docker.list.save」文件的功能,但在這個目錄中的其他文件也似乎有這個邊車文件,所以我認爲這是正常的? – ken 2014-10-02 07:43:27

6

這個問題真的花了我幾個小時。

我的系統是Ubuntu 14.04,我通過sudo apt-get install docker安裝了docker,並輸入了一些導致問題的其他命令。

  1. 我谷歌「未知作業:docker.io」,答案沒有生效。

  2. 我在/etc/init.d/找了個「未知工作」的原因,發現沒有正確答案。

  3. 我在/etc/init.d/找了調試腳本的方法,發現沒有正確的答案。

  4. 於是,我做了一個乾淨:

    1. sudo apt-get remove docker.io
    2. RM每一個可疑文件由find/-name "*docker*",如/etc/init/docker.io.conf/etc/init.d/docker.io
  5. 請按照最新的官方文檔:https://docs.docker.com/installation/,有很多過時的文檔可能會引起誤解。

最後,它解決了這個問題。

注意:如果您在中國,由於GFW原因,您可能需要將https_proxy設置爲從https://get.docker.com/安裝docker。

12

我在14.04上遇到了與docker 1.9.1相同的問題。

新貴服務命令沒有工作,當我用sudo的,即使我是根:

$ whoami 
root 
$ service docker status 
status: Unbekannter Auftrag: docker 

$ sudo service docker status 
docker start/running, process 7394 

這似乎取決於環境變量。

service docker status作品成爲當根與su -,但不是唯一使用su時:

$ su 
Password: 
$ service docker status 
status: unknown job: docker 
$ exit 
$ su - 
Password: 
$ service docker status 
docker start/running, process 2342 
+0

'su - root'和'su root'之間的區別如果以'su root'登錄,'sudo service docker status'是唯一的選擇,如果以su - root登錄, '服務碼頭狀態'應該j最好的工作! – VanagaS 2016-10-16 07:01:32

1

我對Ubuntu的14.04 這裏同一個問題的解決方案

sudo service docker start 

,或者你可以列出images

docker images 
3

I知道這個問題已經得到解答,但是,這是發生在你身上的原因,可能是因爲你沒有將你的用戶名添加到碼頭組中。

下面是做到這一點的步驟:

添加泊塢窗組,如果它不存在:

sudo groupadd docker 

連接用戶${USER}添加到泊塢窗組。更改用戶名,以配合您的首選用戶:

sudo gpasswd -a ${USER} docker 

重啓碼頭工人守護進程:

sudo service docker restart 

如果您在Ubuntu 14.04-15.10 *使用docker.io代替:

sudo service docker.io restart 

(如果你在Ubuntu 16上。04該服務簡稱爲「碼頭服務器」)

要麼執行newgrp泊塢窗或註銷/以激活對組的更改。

0

我有同樣的問題,並它是由不安全的註冊表在: /etc/default/docker