V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jdOY
V2EX  ›  程序员

关于容器化部署 vue 项目思路讨论

  •  
  •   jdOY · 2022-11-18 18:06:53 +08:00 · 2671 次点击
    这是一个创建于 734 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,现在有一个需求是有多个前端的 vue 项目想要用 docker swarm 部署
    现在有个思路是想要将每个应用打包成不同的镜像,再拉起容器运行,想问下大家有没有建议或者更好的思路
    17 条回复    2022-11-21 16:01:05 +08:00
    calmzhu
        1
    calmzhu  
       2022-11-18 19:18:45 +08:00
    编译成 html 放 nginx 吧
    gouflv
        2
    gouflv  
       2022-11-18 20:00:33 +08:00 via iPhone
    前端只有静态资源的话,cdn 更合适,ssr 才需要容器
    jinweijie
        3
    jinweijie  
       2022-11-18 21:37:13 +08:00
    用 nginx 做为 base 容器,写 Dockerfile npm build 后拷过去做成镜像,多个前端可以用 nginx.conf 配置不同路径。
    kamilic
        4
    kamilic  
       2022-11-18 21:40:56 +08:00
    参考下 netlify 吧
    xiaojie668329
        5
    xiaojie668329  
       2022-11-19 01:32:35 +08:00 via iPhone
    就是 #3 三楼的做法。
    Macv1994
        6
    Macv1994  
       2022-11-19 12:00:57 +08:00 via Android
    编译后不都是静态资源了吗?直接 NGINX 就可以了吧?
    jdOY
        7
    jdOY  
    OP
       2022-11-19 20:38:26 +08:00
    @jinweijie 好的,回头试试
    jdOY
        8
    jdOY  
    OP
       2022-11-19 20:38:37 +08:00
    @kamilic 好的,感谢
    jdOY
        9
    jdOY  
    OP
       2022-11-19 20:39:08 +08:00
    @calmzhu 这样感觉不是很方便统一管理部署啥的
    jdOY
        10
    jdOY  
    OP
       2022-11-19 20:40:39 +08:00
    @gouflv cdn 也有用
    yuekcc
        11
    yuekcc  
       2022-11-19 21:55:31 +08:00
    我现在的项目就是类似的实现。纯的 spa 。总体就只有几个页面,差不多一个页面一个容器。感觉很浪费资源,但是分发的时候方便,一个版本对应一个镜像,直接交付镜像。
    zliea
        12
    zliea  
       2022-11-20 13:27:38 +08:00 via iPhone
    推荐编译后上传 oss ,Nginx 配置 oss
    zliea
        13
    zliea  
       2022-11-20 13:30:55 +08:00 via iPhone
    如果一个项目一个镜像意味着 1 个项目 1 个 ng ,太费资源了。
    如果把所有项目装到一个 ng ,意味着其中一个项目的变更需要重新发布所有项目。
    因此个人推荐使用 oss 或者可以
    zliea
        14
    zliea  
       2022-11-20 13:31:28 +08:00 via iPhone
    或者共享存储来存储静态资源
    julyclyde
        15
    julyclyde  
       2022-11-21 08:29:17 +08:00
    前端项目不是只有一堆文件吗?都不需要“运行”的吧
    为什么还要容器?直接发到 CDN 上不就得了?
    litchinn
        16
    litchinn  
       2022-11-21 08:53:07 +08:00
    这个东西`nginxWebUI`符合你的需求,不过这个目前不太适合用于 k8s 的环境,只适合单机部署, 我不了解 docker swarm ,不清楚用 docker swarm 和 k8s 的区别,所以还需要你自行判断
    laev
        17
    laev  
       2022-11-21 16:01:05 +08:00
    @zliea 目前我也有一样的需求。请教下,nginx 应该如何配置代理 oss 中的 html 文件
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3519 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 127ms · UTC 00:50 · PVG 08:50 · LAX 16:50 · JFK 19:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.