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

现在阿里内部的 Java 应用是怎么部署的?

  •  
  •   zgqq · 2019-09-25 12:48:01 +08:00 · 4047 次点击
    这是一个创建于 1885 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在常用有两种部署方式, 一种是打包成 war 或者 tar,首次部署需要 jdk 环境; 另外一种通过 docker 不需要安装 jdk,首次部署很方便,但是每次部署都要先构建镜像,会占用很多磁盘,而且 jdk 8 后期版本才支持 docker,使用 arthas 这类工具有点麻烦

    zhenjiachen
        1
    zhenjiachen  
       2019-09-25 14:08:50 +08:00 via iPhone
    jib 不会占磁盘。
    guyeu
        2
    guyeu  
       2019-09-25 14:15:22 +08:00
    你对 docker 的理解有点肤浅。。。
    构建镜像和部署是两回事,一般是构建流程把镜像构建出来推到内网仓库,然后部署的时候服务器去拉;
    构建流程无论如何都会占用磁盘,但是 pull 镜像是增量的,也就是说只会拉改动的 layer。
    jdk 不需要支持 docker ;
    你如果希望在 docker 里使用 jdk 的工具,确实会显著增加镜像体积,但是那也只是增加了第一次拉取镜像的时间。
    zgqq
        3
    zgqq  
    OP
       2019-09-25 19:05:35 +08:00
    @guyeu 现在公司没用 docker,我自已用 docker,都是直接在服务器 build 镜像的,我就是觉得 push 镜像和 pull 镜像太花时间了
    Leigg
        4
    Leigg  
       2019-09-25 20:07:20 +08:00 via Android
    首先 build 一个带环境的镜像(仅需一次)
    然后写一个发布应用的 dockerfile(调用构建好环境的镜像,copy 代码,编译,执行)
    上线时: 本地上传代码--服务器本地拉代码--build 生产容器--run 起来完事,服务器都不用装代码执行环境,除非你非得在生产服务器上 debug。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2272 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:10 · PVG 00:10 · LAX 08:10 · JFK 11:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.