- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在处理一个项目,该项目使用 express 作为服务器,使用 postgres 作为数据库来学习 docker。服务器取决于要启动的数据库。我第一次使用 docker-compose up 一切正常,但是当我重新启动它时(docker-compose down 和 docker-compose up 再次)它说端口有问题
version: '3'
services:
db:
image: postgres:10
ports:
- "5433:5432"
environment:
POSTGRES_USER: 'Donald'
POSTGRES_PASSWORD: 'Aa123456'
POSTGRES_DB: 'twitter'
backend:
build: twitter
ports:
- "3000:3000"
depends_on:
- db
environment:
PGHOST: "db"
PGPORT: '5432'
PGDATABASE: 'twitter'
PGUSER: 'Donald'
PGPASSWORD: 'Aa123456'
错误
{ Error: connect ECONNREFUSED 172.19.0.2:5432
backend_1 | at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1117:14)
backend_1 | errno: 'ECONNREFUSED',
backend_1 | code: 'ECONNREFUSED',
backend_1 | syscall: 'connect',
backend_1 | address: '172.19.0.2',
backend_1 | port: 5432 }
docker-compose down 之前的端口
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b000b9a02257 excer_backend "node server" 5 minutes ago Up 3 minutes 0.0.0.0:3000->3000/tcp excer_backend_1
40ca65adcc46 postgres:10 "docker-entrypoint.s…" 5 minutes ago Up 3 minutes 0.0.0.0:5433->5432/tcp excer_db_1
在我使用 docker-compose down 并查看端口后,它的所有端口都是干净的,没有留下任何打开的端口
当我使用 docker-compose up 时,我发现了一些非常有趣的东西,如果我使用 ctr + c 并再次使用 compose up 它总是有效,当我重新启动 docker 时它仍然有效,但是一旦我使用 docker-compose向下 显示错误。我尝试通过重新启动我的 docker 和 ctr + c 以及 compose-up 进行 man 组合一切正常,但只要我使用 docker-compose down 它就开始工作,这是为什么?
最佳答案
很可能数据库还没有。
当您执行 docker-compose down
时,它会删除容器,并且由于您没有使用卷来持久化,因此数据库必须再次运行其初始化进程,这将花费几秒钟(因此当您再次 ctrl+c
和 docker-compose up
时有效)。
请注意,depends_on
不会等到数据库启动。你将不得不使用类似 wait-on
的东西在您的后端容器中。
另一种解决方案是为数据库容器使用卷挂载。
关于javascript - PostgreSQL docker-compose down 后使用的端口不能再使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53233888/
我有本地更改和远程更改。 有人告诉我必须先推,再 pull 。这背后有什么原因吗? 最佳答案 那个人错了:正确的模型是pull-before-you-push,而不是相反。 当您pull时,git 将
我正在使用最新版本的 Flat UI Pro 1.3.2 ( http://designmodo.com/flat/ ),jQuery 插件 flatui-radiocheck v0.1.0 和 iO
我是一名优秀的程序员,十分优秀!