如何解决docker-compose 健康检查不适用于 neo4j docker
我有一个可启动多个容器的 docker-compose 文件。我想绕过我目前看到的错误消息,以便其他 docker 容器仅在 neo4j 容器运行时启动。现在,我有:
const [currentUrl,setCurrentUrl] = useState()
const currentUrl = window.location.href.split('/')
version: '3.7'
services:
neo4j:
container_name: neo4j
hostname: neo4j
image: neo4j:3.5
restart: unless-stopped
environment:
- NEO4J_dbms_memory_pagecache_size=2G
- dbms_connector_bolt_tls__level=OPTIONAL
- NEO4J_dbms_memory_heap_max__size=3500M
- NEO4J_AUTH=neo4j/start
volumes:
- $HOME/neo4j/data:/data
- $HOME/neo4j/logs:/logs
- $HOME/neo4j/import:/import
- $HOME/neo4j/plugins:/plugins
ports:
- 7474:7474
- 7687:7687
healthcheck:
test: ["CMD","curl","--fail","http://localhost:7474/","||","exit 1"]
interval: 10s
timeout: 2s
retries: 10
myapp:
container_name: myapp
hostname: myapp
image: python:3.7.3-slim
build: './APP'
restart: on-failure
environment:
- PYTHONUNBUFFERED=1
ports:
- 5000:5000
参数没有区别。我也用过:
healthcheck
还有……
curl -i http://127.0.0.1:7474 2>&1 | grep -c -e '200 OK'
目前我的 myapp 尝试加载然后退出,直到 neo4j 运行。如何让 myapp 等到 neo4j 运行?
解决方法
您正在寻找 depends_on
注释。
在您的特定情况下:
myapp:
...
depends_on:
- "neo4j"
您可以在此处找到详细信息:https://docs.docker.com/compose/startup-order/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。