我可以在Docker容器中运行Xcode吗?


70

我可以在Docker容器中运行Xcode吗?我想码头化一个Xcode CI系统,只是想知道这是否可能。



不过,您还是想错了
阿卜杜拉·吉巴利

我怀疑您是对的
克里斯(Chris)

1
可能可以运行xcodebuild或facebook的xctool,但是我想您无法进行单元测试的iOS模拟器,我想像不到
Chris

我猜想这将需要Xcode命令行工具在linux上工作(因为xctool需要使用这些工具来构建项目)
NSTJ 2015年

Answers:


34

现在,该答案可能会与2015年时的版本过时。它可能仍可作为复制相同内容的参考

-

Docker Hackathon 2015的此回购描述了如何使用Docker客户端构建和运行iOS应用。那是你追求的吗?

观看视频:

秘诀在于server.js中,它实现了REST API以模拟docker服务器。因此,实际上,它实际上并没有在真正的Linux docker服务器上运行iOS-而是实现了docker API,然后充当ios-sim(运行)和XCode(构建)的代理。


当然看起来真的很有趣!
克里斯

20
我不相信这能达到最初的问题是什么?我的解释是,@ Chris希望将其单元测试/构建设置从(可能是基于OSX计算机的)连续集成服务器迁移到基于Docker的CI系统(例如Bitbucket Pipelines?)。我的用例就是:OSX计算机上托管的Bamboo-> Bitbucket Pipelines。
约翰斯,

2
我没有成功实现这一目标。它使用XCode映像,我不确定它来自哪里,因为它不在Docker库中。
Vimalraj Selvam

这是做什么的:他们创建了一个Docker注册表服务器,可以接收Dockerfile,然后调用xcodebuild(应该在本地安装)。不幸的是,Docker的优点(使用后可以配置,生成和丢弃的容器)并未得到使用。(尽管这是运行xcodebuild的一种非常有创意的方法:
raoel

5
我认为这不是一个有效的答案。回购的作者本人在这里说,>> xcode:7.0 docker镜像实际上不是docker镜像。在这种情况下,Xcode:7.0只是告诉构建工具在OSX平台上使用xcode 7进行构建。基本的“映像”基本上是Mac上的现有开发环境。我想尽可能使其看起来像传统的dockerfile(并匹配概念)。
Mig82
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.