ОШИБКА: в файле «./docker-compose.yml» имя службы True должно быть строкой в ​​кавычках, т.е. «True» - PullRequest
0 голосов
/ 15 ноября 2018

Мой 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 версия 18.06.1-ce, сборка e68fc7a

Моя версия для создания докера

docker-compose версия 1.23.1, сборка b02f1306

Запуск CoreOS версии 1911.3.0

1 Ответ

0 голосов
/ 16 ноября 2018

Я решил эту проблему, изменив части nginx и letsencrypt в моем файле 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

Кажется, что "volume_from" устарел в docker-compose v3,Так же как я забыл кавычки вокруг своего ярлыка и мне нужно было настроить мою среду внутри letsencrypt.

...