小编Mos*_*ses的帖子

COPY 不能与 docker-compose 一起使用,但可以与 docker build 一起使用 find

我的任务是对 Angular 应用程序进行 docker 化并使用 Nginx 为其提供服务。

我已将 Angular 项目构建到 dist 文件夹中,并希望将此文件夹与其他不同的微服务一起移动到构建容器中的 nginx->html 目录。

这就是我的 docker 项目的结构

 |-dist/
 |-Dockerfile
 |-dockerignore
 |-default.config
Run Code Online (Sandbox Code Playgroud)

Dockerfile

FROM nginx

#Remove default nginx website
RUN rm -rf /usr/share/nginx/html/*

COPY ./dist /usr/share/nginx/html

COPY ./nginx.conf /etc/nginx/conf.d/default.conf
Run Code Online (Sandbox Code Playgroud)

在这个目录的顶部是一堆其他服务,需要与 Angular 应用程序一起运行,这些应用程序都按预期运行。使用以下 docker-compose.yml 文件

docker-compose.yml

version: '3.2'
services:
  adminportal:
    build: ./adminPortal
    ports:
      - "80:80"
    volumes:
      - "/usr/share/nginx/html:/usr/share/nginx/html"
      - "/etc/nginx/conf.d:/etc/nginx/conf.d"
Run Code Online (Sandbox Code Playgroud)

当我使用 docker build 构建此容器并运行时,它按预期运行“将 dist 内容复制到正确的文件夹并将配置复制到正确的目录”。但如果使用 构建docker-compose up --build,一切都会正常运行,不会返回错误,但它不会将文件复制到各自的 nginx 文件夹。

nginx docker-compose angular

6
推荐指数
1
解决办法
4477
查看次数

标签 统计

angular ×1

docker-compose ×1

nginx ×1