服务笔记本既没有指定映像也没有指定构建上下文。必须至少提供一项

Moh*_*ini 7 docker docker-compose

我想使用jupyter/base-notebook:latest图像。这是我的docker-compose.yml

version: "3.7"

services:
  notebook:
    image: jupyter/base-notebook:latest
    build:
      args:
        - NB_USER=appuser
        - NB_UID=1001
        - NB_GID=101
    ports:
      - "3010:8888"
    volumes:
      - "./notebooks:/home/appuser/work"
Run Code Online (Sandbox Code Playgroud)

当我运行时docker-compose up,我收到此错误: Service notebook has neither an image nor a build context specified. At least one must be provided. 我该如何解决它?

Neo*_*son 9

有 2 个选项:使用现有映像告诉 docker-compose 构建它。如果两者都指定,则 Compose 使用jupyter/base-notebook:latest.

如果您想按jupyter/base-notebook:latest原样使用图像,请build:从撰写文件中删除该部分并保留image:

version: "3.7"

services:
  notebook:
    image: jupyter/base-notebook:latest
    ports:
      - "3010:8888"
    volumes:
      - "./notebooks:/home/appuser/work"
Run Code Online (Sandbox Code Playgroud)

如果您想构建自定义镜像,请为其指定一个与官方镜像名称(最好)不冲突的名称,并提供构建上下文:

services:
  notebook:
    build:
      context: ./<dir-that-contains-the-dockerfile>
      dockerfile: Dockerfile
      args:
        - NB_USER=appuser
        - NB_UID=1001
        - NB_GID=101
    image: <repo>/<img-name>:<tag>
Run Code Online (Sandbox Code Playgroud)