错误:在文件'./docker-compose.yml'中,服务名称True必须是带引号的字符串,即'True'

时间:2018-11-15 18:49:50

标签: docker docker-compose lets-encrypt coreos jwilder-nginx-proxy

我的docker-compose.yml如下所示。当我运行docker-compose up时,出现以下错误。

  

错误:在文件'./docker-compose.yml'中,服务名称True必须是带引号的字符串,即'True'。

version: '3'
services:

  db:
    restart: always
    image: postgres:9.6-alpine
    container_name: pleroma_postgres
    networks:
      - pleroma
    volumes:
      - ./postgres:/var/lib/postgresql/data

  web:
    build: .
    image: pleroma
    container_name: pleroma_web
    restart: always
    environment:
      - VIRTUAL_HOST=<myplaceholderhost>
      - VIRTUAL_PORT=4000
      - LETSENCRYPT_HOST=<myplaceholderhost>
      - LETENCRYPT_EMAIL=<myplaceholderemail>
    expose:
      - "4000"
    volumes:
      - ./uploads:/pleroma/uploads
    depends_on:
      - db

  nginx: 
    image: jwilder/nginx-proxy
    container_name: nginx
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - /apps/docker-articles/nginx/vhost.d:/etc/nginx/vhost.d
      - /apps/docker-articles/nginx/certs:/etc/nginx/certs:ro
      - /apps/docker-articles/nginx/html:/usr/share/nginx/html
    restart: always
    ports:
      - "80:80"
      - "443:443"
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"
    networks:
      - pleroma

  letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion:v1.5
    container_name: letsencrypt
    volumes_from:
      - nginx
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /apps/docker-articles/nginx/vhost.d:/etc/nginx/vhost.d
      - /apps/docker/articles/nginx/certs:/etc/nginx/certs:rw
      - /apps/docker-articles/nginx/html:/usr/share/nginx/html

networks:
  pleroma:

我的docker版本是

  

Docker版本18.06.1-ce,内部版本e68fc7a

我的docker compose版本是

  

docker-compose版本1.23.1,内部版本b02f1306

运行CoreOS 1911.3.0版

2 个答案:

答案 0 :(得分:0)

我最终通过修改nginx解决了这个问题,并将docker-compose.yml文件的部分加密如下。

 nginx: 
    image: jwilder/nginx-proxy
    container_name: nginx
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - /apps/docker-articles/nginx/vhost.d:/etc/nginx/vhost.d
      - /apps/docker-articles/nginx/certs:/etc/nginx/certs:ro
      - /apps/docker-articles/nginx/html:/usr/share/nginx/html
    restart: always
    ports:
      - "80:80"
      - "443:443"
    labels:
      - "NGINX_PROXY_CONTAINER=true"
    networks:
      - pleroma

  letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion:v1.5
    container_name: letsencrypt
    environment:
      - NGINX_PROXY_CONTAINER=true
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /apps/docker-articles/nginx/vhost.d:/etc/nginx/vhost.d
      - /apps/docker/articles/nginx/certs:/etc/nginx/certs:rw
      - /apps/docker-articles/nginx/html:/usr/share/nginx/html

在docker-compose v3中似乎不推荐使用“ volumes_from”。除了忘记标签周围的引号,还需要在letencrypt中设置环境。

答案 1 :(得分:0)

在CentOS环境中,您的MergeTest<-merge(Complete10[setdiff(names(Complete10), 'RICHNESS')], INSIDECostaRica,by=c("GRID","x.centroids","y.centroids")) 文件目录必须为.yml