gpt4 book ai didi

Docker 容器无法作为守护进程运行

转载 作者:行者123 更新时间:2023-12-02 07:11:50 25 4
gpt4 key购买 nike

我正在关注 Docker 的文档来了解 Docker 的工作原理。

但是我遇到了一个问题 Doc ,

运行此命令时表示:

$ docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"

由于 -d 标志而启动了守护进程。

但是当使用docker ps命令检查正在运行的容器时,它是空的,只有标题:

CONTAINER ID  IMAGE         COMMAND               CREATED        STATUS       PORTS NAMES

使用docker ps -a命令观察所有容器,我看到这个:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS               NAMES
e7f1bebd5a49 ubuntu:14.04 "/bin/sh -c while tru" 6 minutes ago Exited (2) 4 minutes ago cranky_mcclintock

它退出并显示错误代码2。查看日志:

docker logs e7f1bebd5a49
true;: 1: true;: Syntax error: end of file unexpected

为什么会发生这种情况?我在 Windows 10 中运行 Docker(使用 Docker 快速启动终端)。

这是我的docker信息的一部分:

Containers: 3
Images: 52
Server Version: 1.9.1
Storage Driver: aufs
Root Dir: /mnt/sda1/var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 58
Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 4.1.13-boot2docker
Operating System: Boot2Docker 1.9.1 (TCL 6.4.1);
CPUs: 1
Total Memory: 996.2 MiB
Name: default
Debug mode (server): true
File Descriptors: 12
Goroutines: 20
EventsListeners: 0
Init SHA1:
Init Path: /usr/local/bin/docker
Docker Root Dir: /mnt/sda1/var/lib/docker
Registry: https://index.docker.io/v1/
Labels:
provider=virtualbox
<小时/>

这是docker run之后的docker events

$ docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"
e7f1bebd5a490e35ce8451c5f12a4a4f4e089bd70fc6ad1726e927a0610f3e49

2016-01-14T13:20:55.350098419+08:00 e7f1bebd5a490e35ce8451c5f12a4a4f4e089bd70fc6ad1726e927a0610f3e49: (from ubuntu:14.04) create
2016-01-14T13:20:55.363562836+08:00 e7f1bebd5a490e35ce8451c5f12a4a4f4e089bd70fc6ad1726e927a0610f3e49: (from ubuntu:14.04) start
2016-01-14T13:20:55.436727252+08:00 e7f1bebd5a490e35ce8451c5f12a4a4f4e089bd70fc6ad1726e927a0610f3e49: (from ubuntu:14.04) die

最佳答案

使用 VirtualBox 的控制台时一切正常。它仅在 Windows 控制台中失败(使用 Docker 快速启动终端)。

我认为根本问题在于行尾代码字符(\n\r\r\n )。

关于Docker 容器无法作为守护进程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34781243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com