【问题标题】:Docker-Compose: "Can't find a suitable configuration file in this directory or any parent"Docker-Compose:“在此目录或任何父目录中找不到合适的配置文件”
【发布时间】:2019-08-25 17:49:14
【问题描述】:

在使用 docker pull ajitgoel/socialmediascrubber 命令从 docker 拉取图像后,我正在尝试使用 docker-compose build 命令运行应用程序。 然而,我得到了一个

Can't find a suitable configuration file in this directory or any parent. Are you in the right directory?

错误。运行ls | grep *compose.yml 也不会返回任何结果。 我错过了什么?

root@docker-socialmediascrubber:/# docker pull ajitgoel/socialmediascrubber
Using default tag: latest
latest: Pulling from ajitgoel/socialmediascrubber
Digest: sha256:f34ec5b1e8151c6ed12a02eba06c63f847a858e13f6e68eeae3ebf40bf7c7e04
Status: Image is up to date for ajitgoel/socialmediascrubber:latest

root@docker-socialmediascrubber:/# ls -ltr
total 88
drwxr-xr-x  2 root root  4096 Apr 24  2018 home
drwxr-xr-x  2 root root  4096 Jun 17 22:51 srv
drwxr-xr-x  2 root root  4096 Jun 17 22:51 mnt
drwxr-xr-x  2 root root  4096 Jun 17 22:51 media
drwxr-xr-x 10 root root  4096 Jun 17 22:51 usr
drwxr-xr-x  2 root root  4096 Jun 17 22:51 lib64
drwx------  2 root root 16384 Jun 17 22:55 lost+found
drwxr-xr-x 13 root root  4096 Jun 20 13:54 var
drwxr-xr-x 22 root root  4096 Jun 25 14:55 lib
drwxr-xr-x  2 root root 12288 Jun 25 14:57 sbin
drwxr-xr-x  2 root root  4096 Jul 12 03:13 snap
drwxr-xr-x  3 root root  4096 Jul 12 03:13 opt
drwxr-xr-x  2 root root  4096 Jul 13 06:33 bin
lrwxrwxrwx  1 root root    30 Aug 15 06:39 vmlinuz.old -> boot/vmlinuz-4.15.0-55-generic
lrwxrwxrwx  1 root root    30 Aug 15 06:39 vmlinuz -> boot/vmlinuz-4.15.0-58-generic
lrwxrwxrwx  1 root root    33 Aug 15 06:39 initrd.img.old -> boot/initrd.img-4.15.0-55-generic
lrwxrwxrwx  1 root root    33 Aug 15 06:39 initrd.img -> boot/initrd.img-4.15.0-58-generic
drwxr-xr-x  4 root root  4096 Aug 16 06:16 boot
drwx------  6 root root  4096 Aug 25 15:58 root
dr-xr-xr-x 92 root root     0 Aug 25 15:59 proc
drwxr-xr-x 17 root root  3740 Aug 25 15:59 dev
drwxr-xr-x 27 root root   960 Aug 25 16:23 run
drwxr-xr-x 94 root root  4096 Aug 25 16:24 etc
dr-xr-xr-x 13 root root     0 Aug 25 16:32 sys
drwxrwxrwt  9 root root  4096 Aug 25 17:24 tmp

Docker-compose.yml 文件:

version: '3.4'

volumes:
  pgdata:

networks:
  frontend:
  backend:

services:
  db:
    image: postgres
    restart: always
    environment:
      POSTGRES_PASSWORD: <SomeStrongPassword>
      POSTGRES_DB: scrubber
      POSTGRES_USER: postgres  
    volumes:
      - pgdata:/var/lib/postgresql/data      
    networks:
      backend:

  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080
    depends_on:
      - db
    networks:
      backend:

  scrubber:
    image: ${DOCKER_REGISTRY-}scrubber
    environment:
      - ASPNETCORE_ENVIRONMENT=PRODUCTION  
    build:
      context: . 
      dockerfile: Dockerfile
    networks:
      frontend:
      backend:
    depends_on:
      - db
    ports:
      - 80:80
      - 443:443

【问题讨论】:

    标签: linux docker docker-compose digital-ocean


    【解决方案1】:

    当找不到docker-compose.yml 文件时,您看到的错误是docker-compose 错误。

    不确定为什么要显示 ls 输出 - 但如果它是您正在运行的同一文件夹的输出,那么您也可以看到没有 docker-compose.yml 文件。

    在运行任何docker-compose 命令之前无需执行docker pull

    【讨论】:

    • 谢谢@DannyB:我已将我的代码签入 Github,源代码也在 DockerHub 中构建。我以前登录到 DockerHub,从中提取图像(使用 docker pull ajitgoel/socialmediascrubber),然后使用 docker run –p 80:80 ajitgoel/socialmediascrubber 命令运行它。我不确定在我的应用程序中引入 Docker-Compose 后所有这些将如何发挥作用。为了解决这个问题,我从 Github 获得了源代码,然后直接在下载的源代码上运行 Docker-Compose。
    • docker-compose 只是一个运行 docker 命令的便捷工具——所以如果你知道如何使用 docker 运行东西,你应该能够轻松享受 docker-compose 的好处。
    猜你喜欢
    • 2019-02-12
    • 1970-01-01
    • 1970-01-01
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-25
    相关资源
    最近更新 更多