如果您想了解docker-composeup时出现“地址已在使用中”错误的相关知识,那么本文是一篇不可错过的文章,我们将对dockeraddressalreadyinuse进行全面详尽的解释,并且为您
如果您想了解docker-compose up时出现“地址已在使用中”错误的相关知识,那么本文是一篇不可错过的文章,我们将对docker address already in use进行全面详尽的解释,并且为您提供关于docker restart容器失败:“已在使用中”,但是没有更多的docker image、docker-compose up 和 docker-compose start 有什么区别?、docker-compose up和docker-compose start有什么区别?、Docker-compose up时报错:的有价值的信息。
本文目录一览:- docker-compose up时出现“地址已在使用中”错误(docker address already in use)
- docker restart容器失败:“已在使用中”,但是没有更多的docker image
- docker-compose up 和 docker-compose start 有什么区别?
- docker-compose up和docker-compose start有什么区别?
- Docker-compose up时报错:
docker-compose up时出现“地址已在使用中”错误(docker address already in use)
我正在尝试使用启动多个docker容器docker-compose up
,但出现以下(部分)错误消息:
Recreating 1faf02f5d67e_1faf02f5d67e_1faf02f5d67e_1faf02f5d67e_1faf02f5d67e_ipercroncompose_rabbitmq_1ERROR: for rabbitmq Cannot start service rabbitmq: driver failed programming external connectivity on endpoint ipercroncompose_rabbitmq_1 (a8ded956e30b922289614bbbc4e4fb773c58688d395895b575a88b638592df94): Error starting userland proxy: listen tcp 0.0.0.0:5672: bind: address already in useERROR: Encountered errors while bringing up the project.
按照https://github.com/docker/docker/issues/8714的建议,我尝试了命令
netstat -pna | grep 5672
导致
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.)tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN - tcp6 0 0 :::5672 :::* LISTEN - unix 2 [ ] DGRAM 15672 -
但是,我在这里看不到任何可以杀死的进程ID。任何想法是什么导致此错误?
答案1
小编典典以下https://unix.stackexchange.com/questions/106561/finding-the-pid-of-the-
process-using-a-specific-
port,而不是netstat
我使用的lsof -i
:
kurt@kurt-ThinkPad:~$ sudo lsof -i :5672 | grep LISTEN[sudo] password for kurt: beam.smp 953 rabbitmq 52u IPv6 33026 0t0 TCP *:amqp (LISTEN)
运行后sudo kill 953
,我能够运行docker-compose up
。
docker restart容器失败:“已在使用中”,但是没有更多的docker image
我首先得到了我的nginx码头工人形象:
docker pull nginx
然后我开始了:
docker run -d -p 80:80 --name webserver nginx
然后我停止了它:
docker stop webserver
然后我尝试重新启动它:
$docker run -d -p 80:80 --name webserver nginxdocker: Error response from daemon: Conflict. The container name "/webserver" is already in use by container 036a0bcd196c5b23431dcd9876cac62082063bf62a492145dd8a55141f4dfd74. You have to remove (or rename) that container to be able to reuse that name..See ''docker run --help''.
好吧,这是一个错误。但实际上,现在容器列表中没有任何内容:
docker container listCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
为什么重启nginx镜像失败?如何解决?
答案1
小编典典这是因为
- 您已使用
--name
开关。 - 容器已停止且未移除
你发现它停止了
docker ps -a
您可以使用以下命令简单地启动它:
docker start webserver
编辑:替代方法 如果您想每次使用以下命令启动容器,
docker run -d -p 80:80 --name webserver nginx
然后使用以下之一:
方法1: 使用--rm
开关,即容器一旦停止就会自动销毁
docker run -d -p 80:80 --rm --name webserver nginx
方法2: 在停止容器之后,在启动当前使用的命令之前,将其显式删除。
docker stop <container name>docker rm <container name>
docker-compose up 和 docker-compose start 有什么区别?
每当我执行
docker-compose start
docker-compose ps
我看到状态为“UP”的容器。如果我做
docker-compose up -d
我会看到更多详细信息,但它会具有相同的状态。这两个命令有什么区别吗?
docker-compose up和docker-compose start有什么区别?
如何解决docker-compose up和docker-compose start有什么区别??
(https://docs.docker.com/compose/reference/start/)
启动服务的现有容器。
(https://docs.docker.com/compose/reference/up/)
构建,(重新)创建,启动并附加到服务的容器。
除非它们已经在运行,否则此命令还将启动所有链接的服务。
该
docker-compose up
命令汇总每个容器的输出(本质上是docker-compose logs -f
)。当命令退出时,所有容器都将停止。运行docker-compose up -d
将在后台启动容器并使它们继续运行。如果已有用于服务的容器,并且在创建容器后更改了服务的配置或映像,请
docker-compose up
通过停止并重新创建容器(保留装入的卷)来获取更改。为防止Compose获取更改,请使用该--no-recreate
标志。
有关完整的CLI参考:https ://docs.docker.com/compose/reference/
解决方法
每当我执行
docker-compose start
docker-compose ps
我看到状态为“ UP”的容器。如果我做
docker-compose up -d
我将看到更多详细信息,但状态相同。这两个命令之间有什么区别吗?
Docker-compose up时报错:
Docker-compose up时报错:
ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yml", line 2, column 9
解决
出现这个错误的是因为yaml格式不正确,谷歌定义的yaml格式太严格了,每个冒号后面都必须带有空格
错误
version:"3"
services:
web:
image: licerlee/friendlyhello:v1
deploy:
replicas:5
resources:
limits:
cpus:"0.1"
memory:50M
restart_policy:
condition: on-failure
ports:
- "80:80"
networks:
- webnet
networks:
webnet:
正确
version: "3"
services:
web:
image: licerlee/friendlyhello:v1
deploy:
replicas: 5
resources:
limits:
cpus: "0.1"
memory: 50M
restart_policy:
condition: on-failure
ports:
- "80:80"
networks:
- webnet
networks:
webnet:
今天关于docker-compose up时出现“地址已在使用中”错误和docker address already in use的讲解已经结束,谢谢您的阅读,如果想了解更多关于docker restart容器失败:“已在使用中”,但是没有更多的docker image、docker-compose up 和 docker-compose start 有什么区别?、docker-compose up和docker-compose start有什么区别?、Docker-compose up时报错:的相关知识,请在本站搜索。
本文标签: