node.js - ECS Fargate 不支持绑定(bind)挂载

标签 node.js mongodb docker amazon-ecs aws-fargate

我正在尝试将 nodejs docker-compose 应用程序部署到 aws ecs,这是我的 docker compose 文件的外观 -

version: '3.8'

services:
 sampleapp:
  image: jeetawt/njs-backend
  build:
   context: .
  ports:
   - 3000:3000
  environment:
   - SERVER_PORT=3000
   - CONNECTIONSTRING=mongodb://mongo:27017/isaac
  volumes:
   - ./:/app
  command: npm start

 mongo:
  image: mongo:4.2.8
  ports:
   - 27017:27017
  volumes:
   - mongodb:/data/db
   - mongodb_config:/data/configdb
volumes:
 mongodb:
 mongodb_config:
但是,当我在创建 ecs 上下文后尝试使用 docker compose up 运行它时,它会引发以下错误 -
WARNING services.build: unsupported attribute        
ECS Fargate does not support bind mounts from host: incompatible attribute
我没有指定任何我想使用的地方 Fargate为了这。有什么方法可以使用 ec2 而不是 Fargate 来部署应用程序吗? ?

最佳答案

默认模式为 Fargate。您大概没有在运行命令中指定一个带有 ec2 实例的 ecs 集群。
您的 docker compose 有一个绑定(bind)挂载,因此您的任务需要部署到挂载可以工作的实例。
此示例讨论部署到 ec2 支持的集群。
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-cli-tutorial-ec2.html

关于node.js - ECS Fargate 不支持绑定(bind)挂载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66695739/

相关文章:

node.js - 如何在Web推送中向特定用户发送推送通知?

python - standard_init_linux.go :211: exec user process caused "exec format error"

javascript - 有没有办法在 node.js 中枚举服务器的所有已知主机名?

node.js - 在 Nodejs 上使用 mtp 连接从设备读取/复制文件

mongodb - mongoDB 中更新的聚合

spring - 使用 Spring Data MongoDB Criteria 构建动态查询

docker - 如何在 Docker 中构建镜像期间执行脚本

docker - Traefik SSL 配置

javascript - webpack+babel npm 不想启动

MongoDB:数组字段中不同值的总数