linux ubuntu 설치 - Docker가 docker 데몬에 연결할 수 없습니다.





15 Answers

OS X에서 Docker를 실행하고 있다면 다음 eval을 실행하는 것이 효과적입니다.

eval "$(docker-machine env default)"

모든 터미널 세션에서이 eval 문을 실행하지 않으려면 bash_profile 다음을 추가 할 수 있습니다.

#Docker
eval "$(docker-machine env default)"

변경 사항을 적용하려면 터미널 세션을 다시 시작하거나 bash_profile 에서 소스를 실행하십시오.

mysql compose mac

Docker 버전을 0.8.0 업데이트 한 후 sudo docker version 을 입력하는 중에 오류 메시지가 나타납니다.

Client version: 0.8.0
Go version (client): go1.2
Git commit (client): cc3a8c8
2014/02/19 12:54:16 Can't connect to docker daemon. Is 'docker -d' running on this host?

그리고 명령을 따라 sudo docker -d 명령을 입력했습니다.

[/var/lib/docker|2462000b] +job initserver()
[/var/lib/docker|2462000b.initserver()] Creating server
open /var/lib/docker/aufs/layers/cf2414da53f9bcfaa48bc3d58360d7f1cfd3784e4fe51fbef95197709dfc285d: no such file or directory[/var/lib/docker|2462000b] -job initserver() = ERR (1)
2014/02/19 12:55:57 initserver: open /var/lib/docker/aufs/layers/cf2414da53f9bcfaa48bc3d58360d7f1cfd3784e4fe51fbef95197709dfc285d: no such file or directory

문제를 어떻게 해결할 수 있습니까?




자세한 조사가 끝난 후이 문제는 Mac OS X이 재부팅 된 후 (또는 Docker 가상 컴퓨터가 다시 시작될 때마다) Docker 클라이언트가 Docker 데몬에 연결하지 못하게 할 때마다 발생합니다.

문제를 해결하려면 다음 중 하나를 수행하십시오.

A) 공식 설치 프로그램 ( https://www.docker.com/products/docker-toolbox )을 사용하여 Docker Toolbox를 재설치하거나 간단하게

B) 다음 명령을 순서대로 실행합니다.

# First make sure that the virtual machine is running
docker-machine start default

# Regenerate TLS connection certs, requires confirmation
docker-machine regenerate-certs default

# Finally, set env
eval "$(docker-machine env default)"

C) (B)와 동일하게 다음 행을 복사하여 붙여 넣으면 세 명령을 모두 실행할 수 있습니다.

docker-machine start default; docker-machine regenerate-certs default; eval "$(docker-machine env default)"

다음과 같은 오류가 발생하는 경우

Error getting SSH command: Something went wrong running an SSH command!
command : cat /etc/os-release
err     : exit status 255
output  :

3 개의 명령을 다른 시간에 다시 실행하면 두 번째로 작동합니다.




위의 다른 모든 해결책이 작동하지 않으면 /var/run/docker.sock 의 소유권을 검사 해보십시오.

ls -l /var/run/docker.sock

소유자가 아닌 경우 다음 명령으로 소유권을 변경하십시오.

sudo chown *your-username* /var/run/docker.sock

그런 다음 Docker 명령을 간편하게 실행 해보십시오. D




Can't connect to docker daemon. Is 'docker -d' running on this host? 메시지가 표시 Can't connect to docker daemon. Is 'docker -d' running on this host? Can't connect to docker daemon. Is 'docker -d' running on this host? , 당신은 docker version 그것을 확인할 수 있습니다.

Docker Client 와 같은 정보가 표시되면 실행 중입니다. 그러나 Docker Server는 그렇지 않습니다 . Docker 서버를 시작해야합니다.

CentOS에서는 service 를 사용하여 Docker 서버를 시작하거나 중지 할 수 있습니다.

$ sudo service docker stop
$ sudo service docker start

그런 다음 docker version 을 입력하면 Docker Client 및 Docker Server 의 정보가 표시되고 Docker 데몬이 시작됩니다.




ps aux | grep docker ps aux | grep docker 를 사용하여 데몬이 실행 중인지 확인합니다. /etc/init.d/docker start 실행하지 않으면




나도 같은 오류가있어 docker-machine regenerate-certs 또는 eval.. 이 나에게 효과가 없었습니다.

이것은 OS X 10.11.3 (El Capitan)과 Docker v1.10.1입니다. 나는 docker-machine을 삭제하고 다시 만들어야 만 문제를 해결할 수있었습니다. Source

docker-machine ls 실행하면 아래 출력과 비슷한 출력이 표시됩니다.

도커

알 수 없는

오류

docker 버전을 쿼리 할 수 ​​없습니다. docker 엔진 끝점에 연결할 수 없습니다.

Docker 시스템을 제거해보십시오.

docker-machine rm -f default

default 은 Docker 컴퓨터 이름입니다. 그때;

docker-machine create -d virtualbox default

새 Docker 컴퓨터를 만듭니다.

다음을 사용하여 모든 것이 정상적으로 보임을 다시 확인합니다 (오류 또는 알 수없는 Docker 없음).

docker-machine ls

마지막으로 Docker Quickstart Terminal을 계속 실행하기 전에 "$(docker-machine env default)" 를 실행하는 것을 잊지 마십시오 ...




현재 사용자를 docker 그룹에 추가하십시오.

sudo usermod -aG docker $USER

그런 다음 로그 아웃하고 로그인하십시오.




Docker 도구를 사용하여 OS X에서 실행중인 경우 다음을 수행하십시오.

데몬을 다시 시작하고 환경을 구성하십시오.

docker-machine restart

그리고

docker-machine env

마지막으로,

eval $(docker-machine env)

데몬이 실행 중인지 테스트하려면 다음을 수행하십시오.

docker ps -a 또는 docker-machine ls . 그러면 모든 컨테이너가 나열됩니다.




Docker의 DOC 사이트에 따름 : Docker를 루트가 아닌 사용자로 관리

1) 도커 그룹 생성

sudo groupadd docker 

2) 사용자를 도커 그룹에 속하게하여 그룹의 권한을 얻습니다.

sudo usermod -aG docker $USER

DOCKER_HOST 환경 변수가 쉘에 설정되어 있는지 확인하십시오.

env | grep DOCKER_HOST

그것이 존재한다면,

unset DOCKER_HOST

다음이 작동합니다.

docker run hello-world



Docker CE 앱 사용

맥 OS

MacOS 용 새로운 Docker Community Edition 앱 을 사용하십시오. 예 :

  1. 지금까지 설치 한 모든 Docker Homebrew 패키지를 제거하십시오 :

    brew uninstall docker-compose
    brew uninstall docker-machine
    brew uninstall docker
    
  2. 수동으로 또는 Homebrew-Cask 를 통해 앱 설치 :

    brew cask install docker
    

    참고 :이 응용 프로그램은 docker , docker-compose , docker-machine 등에 필요한 링크를 만듭니다.

  3. 앱을 실행 한 후 상태 메뉴에서 Docker 고래 아이콘을 체크 아웃합니다.

  4. 이제 터미널 에서 docker , docker-compose , docker-machine 명령을 사용할 수 있어야합니다.

관련 항목 :

  • BREW 설치 도커에는 도커 엔진이 포함되어 있지 않습니까?
  • MacOS에서 Docker 데몬에 연결할 수 없습니다.

Linux / Windows

다운로드 페이지에서 Docker CE를 다운로드 하고 지시 사항을 따르십시오.




  1. 나는 또한 같은 문제가 있었다. 문제는 docker-daemon과 docker-client에 할당 된 소켓에서 발생했습니다.
  2. 첫째, docker.sock의 docker-client에 대한 권한이 설정되지 않았습니다. "sudo usermod -aG docker $ USER"를 사용하여 설정할 수 있습니다.
  3. 그런 다음 docker-client가 실행중인 bash 파일을 확인하십시오. 나를 위해 0.0.0.0:2375에 있었고 docker-daemon은 unix 소켓에서 실행되었습니다 (dockerd의 구성 파일에서 설정 됨).
  4. 그냥 bash-line에 댓글을 달면 잘 작동합니다.
  5. 그러나 unix 소켓 대신 TCP 포트에서 작동하게하려면 dockerd의 구성 파일을 변경하고 0.0.0.0.2375로 설정하고 bash가있는 경우 그대로 bash에 유지하거나 0.0.0.0으로 설정하십시오. 2375.



우분투 14.04에서 Docker 1.10을 실행하는 것과 동일한 문제가 있었으며 주어진 답 중 아무 것도 작동하지 않았습니다. 필자에게 Docker 데몬을 실행할 때 저장소 드라이버를 지정하는 것이 수정되었습니다.

sudo docker daemon --storage-driver=devicemapper



"Docker 데몬에 연결할 수 없습니다.이 호스트에서 실행중인 Docker 데몬입니까?"라는 문제가 있습니다.

나는 sudo 를 사용하는 것을 잊었다. 희망은 우리 중 일부를 도울 것입니다.

$:docker images
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

$:sudo docker images
REPOSITORY   TAG   IMAGE ID   CREATED   SIZE



/etc/sysconfig 에서 Docker 구성 파일, docker 또는 docker-network 를 변경하십시오.

(... ~ v1.17)

docker 파일 :

OPTIONS= -H fd://

또는 (v1.18) :

docker-network 파일 :

DOCKER_NETWORK_OPTIONS= -H unix:///var/run/docker.sock



나는 비슷한 문제가 있었다.

필자의 경우 해결책은 더 이상 사용되지 않는 버전의 docker를 제거하는 것이 었습니다. 이것은 내가 약간의 충돌을 일으키는 것으로 생각합니다.

우분투 :

sudo apt remove docker

나를 위해 문제를 해결했다.




Related


Tags

linux   docker