docker 作为开发环境的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wangxiaoaer
V2EX    问与答

docker 作为开发环境的问题

  •  
  •   wangxiaoaer 2018-11-11 22:02:05 +08:00 2336 次点击
    这是一个创建于 2531 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前的方法是 win 下编码,把 jar 包放到 linux image 里面,运行 containre,通过 remote debug 调试。

    但是每次代码有了修改都要重新打包,创建 image、run,感觉比较麻烦,有没有别的好的办法?还是用的方法不对?

    另外,对于 nodejs 项目也是同样需要 linux 运行,编码过程采用跟上面类似的办法,修改调试比较繁琐,同时准备发布版本的时候,一般都要对源码进行合并、压缩,这跟开发过程中的 dockerfile 就不一致了,我想到的是创建 2 个 dockerfile,大家一般怎么做的?

    9 条回复    2018-11-12 08:55:42 +08:00
    Svizzer
        1
    Svizzer  
       2018-11-11 22:17:27 +08:00
    win10 wsl 了解一下,我是 windows 下解压一个 tomcat,idea 配置一个 cat 脚本在 wsl 运行 tomcat 的 sh 启动脚本
    Yourshell
        2
    Yourshell  
       2018-11-11 22:27:27 +08:00
    volumes 啊
    wangxiaoaer
        3
    wangxiaoaer  
    OP
       2018-11-11 22:50:33 +08:00 via Android
    @Yourshell volume 对 php, py 这种管用,对 js Java 这种需要重启的还是不行。另外,linux 下一些包要从 c 编译,挂载目录好像不可以。
    byteli
        4
    byteli  
       2018-11-11 23:50:53 +08:00 via Android
    还是当个虚拟机用吧,调试好了再打包
    AlphaTr
        5
    AlphaTr  
       2018-11-12 00:04:44 +08:00 via iPhone
    shell 进入到 docker 容器里面,然后当虚拟机着用
    akira
        6
    akira  
       2018-11-12 00:34:29 +08:00
    调试不是测试,调试的时候没必要完整打包吧
    FeifeiJin
        7
    FeifeiJin  
       2018-11-12 00:45:32 +08:00 via Android
    @wangxiaoaer 可否配置为更新文件后,自动更新 image,并自动启动新的容器。
    或者把 volumes 挂在到编译后的文件目录
    ETiV
        8
    ETiV  
       2018-11-12 01:10:59 +08:00
    打一个环境( JVM )包,jar 通过 -v 挂载进去

    restart 可以用 always,network 用 host

    更新之后,重启就行了
    zgray
        9
    zgray  
       2018-11-12 08:55:42 +08:00
    之前思考过类似的模式,思考过如下模式,但还没完全实践完成,楼主可以参考下:
    1. 对于 Java 或者 nodejs,可以考虑真机直接编译,也可以考虑使用容器的 multi-stage 分编译阶段和开发阶段。
    2. 写一个 Dockerfile,将编译后的输出目录用 volume 挂载编译目录到容器中。注意挂载目录,不建议直接挂载文件。目录会灵活点。
    3. 剩下的就是编译后怎么重启应用的问题,这里可以参考 nodejs 之类的方案,在容器里面启动 nodemon,监视目录,并打开 debug 端口,当发现目录更新后由容器内的服务自行完成重启动作。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2765 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 46ms UTC 14:38 PVG 22:38 LAX 07:38 JFK 10:38
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86