如何运行docker daemon?

Dmi*_*iko 5 docker

我正在尝试使用以下命令运行docker daemon:

docker -d
Run Code Online (Sandbox Code Playgroud)

但我在控制台中收到:

unknown shorthand flag: 'd' in -d
Run Code Online (Sandbox Code Playgroud)

我应该怎么做才能运行docker daemon?

小智 15

如果您停止了该服务,则需要使用以下命令重新启动它:

$ sudo service docker start   # for work with SysVinit
$ sudo systemctl start docker # for work with Systemd
Run Code Online (Sandbox Code Playgroud)

还要再次停止,您可以使用:

$ sudo service docker stop   # for work with SysVinit
$ sudo systemctl stop docker # for work with Systemd
Run Code Online (Sandbox Code Playgroud)


Adi*_*hya 11

我花了几个小时试图找出为什么我无法在我的容器中运行 Docker 容器。ArchLinux环境中运行 Docker 容器。上面列出的解决方案对我不起作用。

事实证明,我必须运行dockerd守护进程,它是一个“管理容器的持久进程”。你可以在此处阅读有关此内容的更多信息

这些命令对我有用:

  1. $ sudo dockerd

  2. $ sudo dockerd &

    • 这将dockerd守护进程作为后台进程运行(更有用)

这些命令对我不起作用:

  1. $ sudo service docker start或者$ sudo service docker restart

  2. $ sudo systemctl start docker

我希望这可以帮助其他遇到类似问题的人。


Qua*_*ong 9

-d标志与docker run命令一起使用以在分离模式下运行容器。

您正在寻找的可能是docker-machine start

docker-machine start [arg...]
Run Code Online (Sandbox Code Playgroud)

此命令以一个或多个机器名称作为参数启动一台机器。例如:

$ docker-machine start dev
Run Code Online (Sandbox Code Playgroud)


小智 6

在 Manjaro 对我来说工作:

$ sudo systemctl start docker
$ sudo systemctl enable docker
Run Code Online (Sandbox Code Playgroud)

PS
它也应该适用于使用 systemd 的其他 Linux 发行版。


Som*_*mum 5

我相信问题是如何以分离模式运行docker并重新连接,假设有人有Ubuntu映像,可以尝试一下

sudo docker run -it -d --name myubdocker ubuntu:latest bash
Run Code Online (Sandbox Code Playgroud)

它将分离docker,当有人尝试这样做时,可以看到它正在运行

sudo docker ps
Run Code Online (Sandbox Code Playgroud)

现在,如何通过以下命令将其附加到同一泊坞窗(当一个泊坞窗时,将列出CONTAINERID(docker ps)

sudo docker exec -it <CONTAINERID> bash
Run Code Online (Sandbox Code Playgroud)

这将给出一个root命令提示符(可以输入一个类型然后再次连接回去)