docker-compose.yml services.back.environment.links包含[“ postgres”],这是无效的类型,应为字符串,数字或null

时间:2020-06-20 02:38:37

标签: docker-compose dockerfile

docker-compose.yml

version: '3'
services:
  nginx-front:
    image: 'nginx:stable'
    ports:
      - '3000:80'
    volumes:
      - ./nginx-front.conf:/etc/nginx/nginx.conf
    links:
      - front
      - back
  front:
    image: 'node:10'
    ports:
      - '3001:3000'
    environment:
      REACT_EDITOR: atom
    volumes:
      - ./front:/home/app
      - ./build.sh:/build.sh
    entrypoint: /build.sh
  back:
    image: 'node:10'
    environment:
      PGUSER: '${PG_USER}'
      PGPASSWORD: '${PG_PASSWORD}'
      PGDATABASE: '${PG_DATABASE}'
      PGHOST: postgres
      links:
        - postgres
    volumes:
    - ./back:/home/app
    - ./build.sh:/build.sh
    entrypoint: /build.sh
  postgres:
    image: 'postgres:9.6'
    environment:
      POSTGRES_DB: '${PG_DATABASE}'
      POSTGRES_USER: '${PG_USER}'
      POSTGRES_PASSWORD: '${PG_PASSWORD}'
    volumes:
      - data:/var/lib/postgresql/data
      - ./db/init.sql:/docker-entrypoint-initdb.d/init.sql
  pgweb:
    image: sosedoff/pgweb
    command: pgweb --readonly --bind=0.0.0.0 --listen=8081
    ports:
      - '5000:8081'
    links:
      - 'postgres:postgres'
    environment:
      - >-
        DATABASE_URL=postgres://${PG_USER}:${PG_PASSWORD}@postgres:5432/${PG_DATABASE}?sslmode=disable
    depends_on:
      - postgres
  volumes:
  data: {}

我得到以下信息:

docker-compose -f docker-compose.yml配置 错误:撰写文件“ ./docker-compose.yml”无效,因为: services.back.environment.links包含[“ postgres”],这是无效的类型,应为字符串,数字或null

这来自我在github(https://github.com/affluent-bilby-classifieds/fruty_ra-cb-menu)上分叉的项目。我打算扩展该项目,但首先我希望进一步自动化构建过程。任何帮助将不胜感激。

令人反感的线似乎是29-30。我只是不确定如何解决。
链接: -postgres

1 个答案:

答案 0 :(得分:0)

您可以尝试

links:
   - 'postgres'

将其作为字符串传递。在撰写文件参考https://docs.docker.com/compose/compose-file/中查看语法规则,以及有关不同版本和升级的一些信息。