services.db.ports 必须是列表

services.db.ports must be a list

我的docker-compose.yaml这样的文件

 version: '3.9'
 services:
 backend:
 build: .
 ports:
  - 8000:3000
volumes:
  - .:/app
depends_on:
  - db

db:
image: mysql:5.7.22
restart: always
environment:
  MYSQL_DATABASE: ambassador
  MYSQL_USER: root
  MYSQL_PASSWORD: root
  MYSQL_ROOT_PASSWORD: root
volumes:
  - .db-data:/var/lib/mysql
ports: -33066:3306  

我编译使用docker-compose up

我遇到了这样的错误

services.db.ports must be a list

我能为这个错误消息做些什么。任何人都可以帮助我。

因为yaml格式要求很严格

你的端口需要换行(在yaml中表示是一个数组),在端口号和port

之间使用space
version: '3.9'
services:
  backend:
    build: .
    ports:
      - 8000:3000
    volumes:
      - .:/app
    depends_on:
      - db
  db:
    image: mysql:5.7.22
    restart: always
    environment:
      MYSQL_DATABASE: ambassador
      MYSQL_USER: root
      MYSQL_PASSWORD: root
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - .db-data:/var/lib/mysql
    ports: 
      - 33066:3306