使用docker执行sencha cmd

275 阅读2分钟

1. 需求

有个老项目需要使用sencha touch,使用的是sencha cmd4.0版本。 随着mac系统的升级,java已经装成了8.0,导致cmd老版本无法正常执行。但是我也不能降级自己的系统。

2. 解决方法

于是想到了Docker。

第三方资源

github.com/rockmagic/s…

果然已经有人制作好了镜像只需要获取就行。

docker

其实docker非常简单,我也是头一次使用。

我的理解就是轻量的带安装配置的虚拟机,因为分层设计,可以大量地创建容器。 镜像就是模版,容器就是实例。

虽然镜像相同,因为传参不同,容器也是不同的。

当然还有更高级的docker玩法,比如管理和监控等。总之,我不是运维,用不上,也没机会试,我也不学。

很多技术就像眼镜,当你需要的时候就知道怎么用了。

3. 操作

  1. 安装docker,官网下载dmg,傻瓜式
  2. 命令行获取镜像 参考github.com/rockmagic/s… 里的命令
docker run --rm -v `pwd`:/app -w /app rockmagicnet/sencha-cmd:latest 
  app build

第一次安装的 执行命令

docker run --name xx_build -v /Users/xxxName/code/xxProject:/app -w /app rockmagicnet/sencha-cmd:4.0.5 app build package
# --name 起个名字
# -v 挂数据
# app build package   sencha的命令

docker 在第一次执行的时候会下载镜像,同时创建容器 这个容器后续可以重复使用,不需要那么复杂的配置

平时使用

docker start xx_build -i
# xx_build 是开始起得名字

在docker中查看已有容器,我只使用了打包和刷新,所以只有两个容器 image.png

4. 备份

考虑到sench可能会抽风地移除zip包的下载地址,所以直接把整个镜像备份,存到硬盘中,这样就不怕无法打包了。

参考文档

www.hangge.com/blog/cache/…

docker export 容器 docker save 镜像

我把镜像save了,后续容器再自己生成