一个简单的cli“所有东西都有多个拱门”

kross的Python项目详细描述


克朗

一个简单的cli“多架构所有东西”

什么是克罗斯?

kross是一个工具,它可以自动为多个架构构建docker映像,而无需对代码进行任何更改

快速启动

  • 通过PIP安装

pip install kross

  • 初始化(一次)

kross init

  • 更新Docker生成命令

Before

docker build -t me/myapp:vX.X.X ...args... path/to/docker/context
docker push me/myapp:vX.X.X

After

kross build -t me/myapp:vX.X.X ...args... path/to/docker/context
kross push me/myapp:vX.X.X

为什么是克罗斯?

克罗斯出生于一个树莓派百香酸开发商。 因为Raspberry PI是基于ARM的,DockerHub上90%的图像是基于AMD64的,所以开发人员必须复制/调整所有DockerFile,这样图像才能在上面工作,避免太多流行的cannot execute binary file: Exec format error

要了解更多信息,请阅读full article

克罗斯怎么样了?

kross基于qemu library在基于amd64的主机上构建多个架构映像。 在所有的图片都被构建并推送到Docker注册表之后,也会推一个manifest list,这样用户就可以无缝地根据他们的架构拉图片了。

支持的体系结构

kross将尝试为以下架构构建映像:

  • AMD64
  • ARM32V6
  • ARM32V7
  • ARM64V8
  • ppc64le
  • S390x
  • i386

运行示例

  • 安装kross pip install kross

  • 检查计算机配置 kross init

  • 运行kross构建 kross build -t kross-world:v0.1.0 https://raw.githubusercontent.com/pcorbel/kross/master/docs/example/Dockerfile

  • 运行kross push kross push kross-world:v0.1.0

  • 检查Dockerhub account上的图像可用性

  • 在任何地方运行图像

docker run --rm kross-world:v0.1.0

提供示例图像here

提示和技巧

知道克罗斯工作时发生了什么 export KROSS_VERBOSE=true

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用从PreparedStatement返回的RowId。getGeneratedKeys()?   selenium chrome驱动程序中下一个网站url的java空白页   java如何将参数化匿名类转换为lambda?   java JUnit在AfterClass上获取测试结果   java将动态XML/JSON内容与静态标记化负载进行比较,并检索标记值   java共享一个需要数据持久性的项目[数据库]   java在调用方法时获取意外的参数类型。getParameterTypes()   java如何用jdbc在swing中用另一个字段替换外键?   需要java Jersey Tomcat CDI依赖项解释   java如何生成UML图   java如何编写Jersey rest服务可以通过给定的spring代码访问   SpringMaven存储库管理器Nexus与Java依赖项的Artifactory   java将包从另一个项目导入eclipse中的当前项目   加密Java使用密码加密文件