我有一个玩具MVP应用程序,我想在Heroku上部署。有一个ElasticSearch依赖关系表示在一个docker-compose文件。最小的ES附加Heroku是67美元/月,这是超过我想花的MVP。我试图找出如何部署它旁边的Web应用程序在一个容器化的方式。所有的指南,我看到的多个进程都有一个Dockerfile,我可以用heroku.yml
的配置来表达吗?
下面是我的Dockerfile:
version: '3.6'
services:
web:
image: denoland/deno:latest
container_name: my_app
build: .
ports:
- 3001:3001
environment:
- DENO_ENV=local
- ES_HOST=elasticsearch
- DENO_PORT=3001
- ELASTIC_URL=http://elasticsearch:9200
volumes:
- .:/usr/src/app
command: deno run --allow-net --allow-read --allow-env src/main.ts
links:
- elasticsearch
depends_on:
- elasticsearch
networks:
- es-net
elasticsearch:
container_name: es-container
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.2
volumes:
- esdata:/usr/share/elasticsearch/data
environment:
- xpack.security.enabled=false
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.type=single-node
logging:
driver: none
ports:
- 9300:9300
- 9200:9200
networks:
- es-net
volumes:
esdata:
networks:
es-net:
driver: bridge
1条答案
按热度按时间wrrgggsh1#
除非你想为private spaces付费,否则我不认为它能正常工作。Heroku的Docker支持不包括卷挂载。
Internal routing仅适用于私人空间中的应用程序。