如何通过docker-compose.yml构建docker镜像

时间:2020-02-18 11:46:05

标签: docker docker-compose

这是我的docker-compose.yml

version: '2'
services:
web:
  build: .
  context: ./
  dockerfile: Dockerfile
  ports:
    - "8080:8080"
  container_name: demo
  volumes:
    - .:/images

我遇到一个错误:

错误:撰写文件'./docker-compose.yml'无效,因为: services.web的不受支持的配置选项:“ dockerfile”

所以我想构建容器并运行。我将有更多的容器来构建和运行。 docker-compose是否可能?

2 个答案:

答案 0 :(得分:0)

如果我不敢问问题,是在build之后有一个点,则dockerfilecontext的标识不正确。而且我认为context中的栏不应存在。

version: "3.7"
services:
  api:
    image: image-name
    build:
      context: .
      dockerfile: path/to/Dockerfile
    container_name: container-name

我认为这可以解决您遇到的问题,但无法对其进行测试。

答案 1 :(得分:0)

您需要注意缩进,这是构建Nginx docker映像https://github.com/wshihadeh/three_methods_to_share_assets/blob/master/precompile_during_docker_build/docker-compose.yml的示例

version: '3.7'
services:
  web:
    build:
      context: nginx
      dockerfile: Dockerfile
    command: server
    ports:
      - 80:80