2015-02-10 51 views
14

當我最初安裝docker時,它顯示版本爲1.0.1 因爲,當前版本是1.4。 1,我發現並執行以下說明:dialix unix /var/run/docker.sock:升級到lxc-docker後沒有這樣的文件或目錄

$ sudo apt-get update 

$ sudo apt-get install docker.io 

$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker 

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 

$ sudo sh -c "echo deb https://get.docker.io/ubuntu docker main \ 
> /etc/apt/sources.list.d/docker.list" 
$ sudo apt-get update 
$ sudo apt-get install lxc-docker 

現在,當我跑碼頭工人的版本,我得到1.4.1,但碼頭工人不再適用 - 它給了我這個錯誤:

[email protected]:/# docker version 
Client version: 1.4.1 
Client API version: 1.16 
Go version (client): go1.3.3 
Git commit (client): 5bc2ff8 
OS/Arch (client): linux/amd64 
FATA[0000] Get http:///var/run/docker.sock/v1.16/version: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS? 

什麼我能做到這一點,但零售最新的碼頭機構1.4.1?

+0

運氣好的話?遇到同樣的問題... – 2015-02-22 14:17:57

+0

在我的情況下,它有助於明確地在tcp上運行docker,與.sock相反:sudo docker -H my_ip:2365 -d&詳細信息在此處描述:https:// docs。 docker.com/articles/basics/ – 2015-02-22 14:33:23

+0

對不起 - 端口實際上是2375,而不是2365 – 2015-02-22 15:00:53

回答

1

碼頭是否作爲守護進程啓動? 使用service docker.io statusservice docker status

如果沒有則啓動它並使用它

+0

當我運行服務碼頭狀態時我得到:docker沒有運行,當我運行服務docker start時 - 我得到了mount:permission denied – 2015-02-10 15:39:07

+0

那麼那麼你需要sudo權限 – 2015-02-10 19:31:34

+0

我運行這個作爲根 – 2015-02-10 19:32:54

25

在/ var /當您啓動搬運工服務運行/泊塢窗將被創建:

systemd:

sudo systemctl start docker

upstart:

sudo service docker start

的init.d:

sudo /etc/init.d/docker start

您可能還需要這個,如果你得到這個錯誤: FATA[0000] Cannot connect to the Docker daemon. Is 'docker -d' running on this host?

+0

當我運行服務碼頭狀態我得到:碼頭沒有運行,當我運行服務碼頭啓動 - 我得到了mount:權限被拒絕 – 2015-02-10 15:39:45

+0

你使用'sudo'或啓動它作爲根? – Michael 2015-02-10 17:47:38

3

我遇到同樣的問題,我能在這裏找到解決方案:https://docs.docker.com/articles/basics/

回到基金會總是很好。

問題是,您可能運行在不同的端口而不是默認套接字(unix:///var/run/docker.sock)。

如果您運行「ps aux | grep docker」,您應該看到守護程序正在運行。在docker進程的最後,你還應該看到一個參數-H = {IpAddress}:{Port}。您還應該看到存儲證書的路徑(--tls參數)

您必須指示docker連接到-H參數中指定的tcp地址。

例如:

`docker --tls -H tcp://{IpAddress}:{Port} version` 

通知的--tls參數,如果你指示碼頭工人在安全模式下運行,這是必要的。

您可以通過設置環境變量來避免命令的冗長。

export DOCKER_HOST="tcp://{IpAddress}:{Port}" 
export DOCKER_TLS_VERIFY="1" 

希望這有助於..

16

我在Mac OS X相同的問題這裏留下我的修補程序的情況下,它可以幫助別人:

  1. 運行「泊塢窗快速啓動終端」
  2. 在目標目錄,運行eval "$(docker-machine env default)"

此修復該問題對我來說

+1

這幫了我,非常感謝 – Cody 2015-09-08 18:39:24

+0

wroks對我來說......什麼是'eval「$(docker-machine env default)」'幹嘛? – 2015-10-15 12:53:22

+1

@Robbo_UK'docker-machine env default'最有可能在EXPORT語句中回顯一堆環境變量,eval在當前shell中運行。 – Angad 2015-10-23 07:13:35

相關問題