docker打包前端vue项目

文章目录

Dockerfile

用于生成镜像的文件

FROM nginx:1.17.9 //基础镜像

ENV LANG=en_US.UTF-8
ENV TZ=Asia/Shanghai

COPY src/dist /opt/map  //把打包后生产的dist文件夹,复制到.../map 目录下

COPY config/map_client_web_nginx.template /opt/config/map_client_web_nginx.template
COPY config/config.template /opt/config/config.template
RUN touch /etc/nginx/conf.d/map_client_web_nginx.conf  //新建一个nginx的配置文件,此时文件还是空的
CMD ["/bin/bash", "-c", "envsubst  /etc/nginx/conf.d/map_client_web_nginx.conf && envsubst  /opt/map/static/json/config.json && nginx -g 'daemon off;'"]
//CMD docker run时执行命令,参数用,分割
//生成nginx配置文件并替换

docker-compose.yml

用来启动容器的文件

用这个文件直接启动,docker-compose up,就不用再用docker run 之类的指令了

version: '3'
services:
  XXXX:
    image: test_docker:1.00
    environment:
     ......
      - MAP_SERVER_PORT=8085 //这里可以给nginx模板中用到的一些变量赋值,比如MAP_SERVER_PORT是nginx配置中的一个变量,指定了在容器中运行的端口号
    ports:
      - "8085:8085"

文件目录

docker打包前端vue项目_第1张图片

过程

cd main
docker build ./ test_docker:1.0.0  #打包镜像 镜像名:tag
docker-compose up #启动容器

你可能感兴趣的:(docker)