【发布时间】:2022-01-10 03:30:18
【问题描述】:
首先,问题是:有没有办法为 GitHub 代码空间选择平台(例如 x86_64、AMD64、ARM64)?
这是我目前发现的:
尝试 1(不工作):
在 GitHub.com 中,您可以为代码空间选择“机器”,但唯一的选项是 RAM 和磁盘大小。
尝试 2(编辑:不工作): devcontainer.json
创建 Codespace 时,您可以通过创建包含两个文件的顶级 .devcontainer 文件夹来指定选项:devcontainer.json 和 Dockerfile
在这里你可以自定义运行时、安装的包等等,但是文档没有说任何关于确定架构的内容...
...但是,devcontainer.json 的 VSCode 文档有一个 runArgs 选项,它“接受 Docker CLI 参数”...
和 --platform 上的 Docker CLI 文档说您应该能够通过 --platform linux/amd64 或 --platform linux/arm64,但是...
当我尝试这个时,代码空间会挂起,永远不会完成构建。
尝试 3(进行中):在Dockerfile中指定
这条路线似乎最有前途,但对我来说都是新的(容器化、代码空间、docker)。尝试 2 和 3 可能会相互配合。不过,目前有太多新的移动部件,我需要外部帮助。
- GitHub Codespaces 是否支持此功能?
- 你会在 Dockerfile 或 devcontainer.json 中传递它吗?怎么样?
- 无论如何,您将如何验证这一点? [已解决:
dpkg --print-architecture或uname -a] - 对于 Windows,您可能需要许可证(我在 GitHub 上没有看到任何关于预许可代码空间的信息)——但这可能超出了问题的范围。
参考:
https://code.visualstudio.com/docs/remote/devcontainerjson-reference
https://docs.docker.com/engine/reference/commandline/run/
https://docs.docker.com/engine/reference/builder/
https://docs.docker.com/desktop/multi-arch/
https://docs.docker.com/buildx/working-with-buildx/
【问题讨论】:
-
最后查了一下,Github上不直接支持arm平台,最多可以在qemu之类的解释器下运行。 github.community/t/…
标签: docker github vscode-devcontainer codespaces github-codespaces