Tôi đã áp dụng mọi giải pháp có sẵn trên internet nhưng tôi vẫn không thể chạy Docker.
Tôi muốn sử dụng Scrapy Splash trên máy chủ của mình.
Đây là history
của các lệnh tôi đã chạy.
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
Bạn có thể thấy tôi đã cố gắng khởi động lại máy chủ của mình, nhưng nó không giúp được gì.
xem đầu ra của ps -aux | grep docker
[email protected]:/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
Bạn có thể thử điều này:
systemctl start docker
Nó làm việc tốt cho tôi.
Ps: sau nếu có các lệnh mà bạn không thể làm mà không có Sudo, hãy thử điều này:
gpasswd -a $USER docker
Trước tiên, hãy thử với Sudo , vì người dùng hiện tại có thể không có quyền truy cập để liên lạc với docker daemon tức là /var /run/docker.sock
Nếu nó vẫn không hoạt động, thì sau khi cài đặt, chỉ cần dừng trình nền của docker là,
$ Sudo service docker stop
Và, chạy lệnh sau để khởi động trình nền trong nền,
$ Sudo Nohup docker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
Để làm việc với Docker dễ dàng hơn, bạn nên thêm tên người dùng của mình vào nhóm người dùng Docker. Thêm người dùng vào nhóm có thể được thực hiện bằng lệnh bên dưới bằng cách thêm tên người dùng của bạn vào cuối
$ Sudo usermod -aG docker
Ngoài ra, bước này được đề cập tại tài liệu chính thức về docker Các bước cài đặt sau cho Linux ( https://docs.docker.com/engine/installation/linux/linux-postinstall/ )
Người dùng Ubuntu 16.04 có thể làm theo các bước sau,
Tệp bên trong /lib/systemd/system/docker.service thay đổi: ExecStart =/usr/bin/dockerd fd : // với ExecStart =/usr/bin/dockerd -H tcp: //0.0.0.0: 2375
Tệp bên trong /etc/init.d/docker thay đổi:
DOCKER_OPTS = với DOCKER_OPTS = "- H **** tcp: //0.0.0.0: 2375 "
và sau đó khởi động lại máy của bạn. Và, bắt đầu chơi với docker.
Bạn có thể gặp lỗi này nếu docker không tắt sạch. Câu trả lời sau đây là cho gói snaper docker.
Chạy snap logs docker
và tìm kiếm những thứ sau:
Error starting daemon: pid file found, ensure docker is not running or delete /var/snap/docker/179/run/docker.pid
Xóa tập tin đó và khởi động lại docker làm việc cho tôi.
rm /var/snap/docker/179/run/docker.pid
snap stop docker
snap start docker
Đảm bảo thay thế '179' bằng số phiên bản phù hợp
Chỉ cần chạy
Sudo dockerd
và bạn sẽ tốt để đi.
Điều này thường xảy ra nếu bạn chưa dừng docker.
Để giải quyết
service docker stop
cd /var/run/docker/libcontainerd
rm -rf containerd/*
rm -f docker-containerd.pid
service docker start
sau đó "docker run ...." để tải xuống hình ảnh của bạn và khởi động container như bình thường
đây là giải pháp phù hợp với tôi trên Linux
systemctl start docker
.
Đối với tôi, giải pháp đơn giản là đảm bảo rằng tôi đã cài đặt gói Docker chính xác. Ví dụ: đối với Ubuntu, các gói đã khấu hao là:
Để kiểm tra cài đặt https://docs.docker.com . Các hướng dẫn được cung cấp cho Ubuntu , CentOS , Debian và Fedora tại thời điểm viết.
Tôi gặp vấn đề tương tự với gitlab CI đang chạy nút: lts image:
Đảm bảo thông tin trong đường dẫn này /etc/docker/daemon.json
{
"registry-mirror": [
"https://registry.docker-cn.com"
],
"insecure-registries": [
"192.168.199.100:5000"
]
}
xóa bỏ
"insecure-registries": [
"192.168.199.100:5000"
]
và chạy tốt nhập mô tả hình ảnh ở đây
Tôi đang chạy root và thử bên dưới, nó hoạt động:
service docker start
export DOCKER_Host="tcp://0.0.0.0:2375"
sử dụng cái này trong Ubuntu export DOCKER_host = tcp: // localhost: 2375
Tôi đã cố chạy docker (vừa cài đặt) trong một phiên bản AWS khi thông báo xuất hiện. Tôi chỉ viết Sudo service docker start
và làm việc tốt cho tôi.
Đồng thời xem AWS với Docker
Điều này làm việc cho tôi, Nó có thể chỉ hoạt động cho bạn nếu bạn đang sử dụng Ubuntu 16 hoặc 18 (14 cũng có thể hoạt động). Dễ dàng để thử:
Truy cập Phần mềm Ubuntu, nhập Docker . Gỡ cài đặt docker (108 mb) nếu nó được cài đặt sẵn ở đó . Cài đặt docker Bây giờ hãy chạy các lệnh và xem có lỗi tương tự không
Lỗi:
Sau khi thực hiện các bước trên .
Như bạn thấy, nó đã hoạt động :)
export DOCKER_host = tcp: // localhost: 2375 hoàn hảo cho bất kỳ ai không có quyền truy cập Sudo và người dùng không có quyền truy cập vào unix: ///var/run/docker.sock
Tôi gặp vấn đề tương tự trên Linux khi tôi cài đặt docker bằng yum (yum install docker).
Độ phân giải: tải xuống nhị phân docker từ trang web chính thức: cài đặt docker , giải nén và làm theo các bước cài đặt.