我可以在Heroku上使用Web应用程序部署容器化的ElasticSearch吗?

rvpgvaaj  于 2022-12-03  发布在  ElasticSearch
关注(0)|答案(1)|浏览(163)

我有一个玩具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
wrrgggsh

wrrgggsh1#

除非你想为private spaces付费,否则我不认为它能正常工作。Heroku的Docker支持不包括卷挂载。
Internal routing仅适用于私人空间中的应用程序。

相关问题