[linux] unix : /var/run/docker.sock에서 Docker 데몬에 연결할 수 없습니다. 도커 데몬이 실행 중입니까?

인터넷에서 사용할 수있는 모든 솔루션을 적용했지만 여전히 Docker를 실행할 수 없습니다.

서버에서 Scrapy Splash를 사용하고 싶습니다.

여기 history내가 실행 한 명령이 있습니다.

docker run -p 8050:8050 scrapinghub/splash
sudo docker run -p 8050:8050 scrapinghub/splash
sudo usermod -aG docker $(whoami)
sudo docker run -p 8050:8050 scrapinghub/splash
newgrp docker
sudo docker run -p 8050:8050 scrapinghub/splash
reboot
sudo docker run -p 8050:8050 scrapinghub/splash
docker run -p 8050:8050 scrapinghub/splash

서버를 다시 시작하려고 시도했지만 도움이되지 않았습니다.

의 출력을 참조하십시오 ps -aux | grep docker

root@mani:/var/www/html# ps aux | grep docker
root      8524  0.0  0.8 127904 13964 ?        Ssl  17:21   0:00 /usr/bin/dockerd --raw-logs
root      8534  0.0  0.3  90588  5012 ?        Ssl  17:21   0:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc
root      8543  0.0  0.0   8812   764 pts/1    S+   17:21   0:00 grep --color=auto docker
root     16356  0.0  0.0  17200   964 pts/1    S    17:14   0:00 newgrp docker
root     20080  0.0  0.0  17200   964 pts/1    S    17:06   0:00 newgrp docker
root     30221  0.0  0.0  17200   964 pts/1    S    17:09   0:00 newgrp docker



답변

당신은 이것을 시도 할 수 있습니다 :

systemctl start docker

그것은 나를 위해 잘 작동했습니다.

추신 : sudo없이 할 수없는 명령이 있으면 다음을 시도하십시오.

gpasswd -a $USER docker


답변

도 커가 제대로 종료되지 않으면이 오류가 발생할 수 있습니다. 다음은 docker snap 패키지에 대한 답변입니다.

실행 snap logs docker하고 다음을 찾으십시오.

Error starting daemon: pid file found, ensure docker is not running or delete /var/snap/docker/179/run/docker.pid

그 파일을 삭제하고 docker를 다시 시작하면 나에게 도움이되었습니다.

rm /var/snap/docker/<your-version-number>/run/docker.pid
snap stop docker
snap start docker

교체해야합니다 <your-version-number>‍해당 버전 번호.


답변

그냥 실행

sudo dockerd

dockerd는 docker 컨테이너의 데몬 서비스입니다. 백그라운드에서 실행되지 않기 때문에 서비스와 관련된 작업을 수행 할 수 없으므로 다시 시작해야합니다.


답변

먼저, 현재 사용자는 docker 데몬 (예 : /var/run/docker.sock)과 통신하기위한 액세스 권한이 없을 수 있으므로 sudo로 시도하십시오.

그래도 작동하지 않으면 설치 후에 도커 데몬을 다음과 같이 중지하십시오.

$ sudo service docker stop

그리고 다음 명령을 실행하여 백그라운드에서 데몬을 시작하십시오.

$ sudo nohup docker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

Docker 작업을보다 쉽게하려면 사용자 이름을 Docker users 그룹에 추가해야합니다. 아래 명령으로 그룹에 사용자를 추가 할 수 있습니다

$ sudo usermod -aG docker $USER

또한이 단계는 Linux의 도커 설치 후 단계에 대한 공식 문서 ( https://docs.docker.com/engine/installation/linux/linux-postinstall/ )에 언급되어 있습니다.

우분투 16.04 사용자는 다음 단계를 수행 할 수 있습니다

내부 파일 /lib/systemd/system/docker.service의 변화 :
ExecStart =는 / usr / 빈 / dockerd FD : //

ExecStart =는 / usr / 빈 / dockerd -H TCP : //0.0.0.0 : 2375

내부 파일 /etc/init.d/docker 변경 :

DOCKER_OPTS =
with
DOCKER_OPTS = “-H **** tcp : //0.0.0.0 : 2375

그런 다음 컴퓨터를 다시 시작하십시오. 그리고 도커로 게임을 시작하십시오.


답변

이것은 일반적으로 도커를 중지하지 않은 경우에 발생합니다.

해결하기

service docker stop
cd /var/run/docker/libcontainerd
rm -rf containerd/*
rm -f docker-containerd.pid
service docker start

그런 다음 “docker run ….”을 클릭하여 이미지를 다운로드하고 평소와 같이 컨테이너를 시작하십시오.


답변

주요 문서에서 DOCKER를 새로 설치 한 후이 문제를 해결했습니다. 문제는 설치 직후 서비스가 실행되지 않는다는 것입니다.

이 명령은 docker가 실행 명령을 찾기 위해 실행되고 있는지 확인하는 데 도움이됩니다.

$ sudo service --status-all
$ sudo service docker start
$ sudo service docker start


답변

나는 루트에서 실행 중이고 아래에서 시도했지만 작동했습니다.

service docker start

export DOCKER_HOST="tcp://0.0.0.0:2375"