首页 > 解决方案 > docker-compose.yml services.back.environment.links 包含 ["postgres"],这是一个无效类型,它应该是字符串、数字或 null

问题描述

码头工人-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 config ERROR: The Compose file './docker-compose.yml' is invalid because: services.back.environment.links contains ["postgres"], 这是一个无效的类型,它应该是字符串、数字或 null

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

违规行似乎是 29-30。我只是不知道如何解决它。
链接:-postgres

标签: docker-composedockerfile

解决方案


你可以试试

links:
   - 'postgres'

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


推荐阅读