对于GitHub Actions,我想在Docker容器中运行作业的所有命令,但是无法使其正常工作。以下是我的操作的代码:
(顺带一提,我看到了this question,但是答案不起作用)
name: PR Checks
on: [push]
jobs:
my_checks:
container:
image: docker://alpine:latest
runs-on: ubuntu-18.04
steps:
- run: uname -a
- run: cat /proc/version
输出结果表明这些命令正在运行在Ubuntu主机上,而不是Alpine Linux。以下是表明这一点的输出:
我该如何在容器
镜像内运行这些命令?(顺带一提,我看到了this question,但是答案不起作用)
uname
这样打印内核级别细节的命令并不能说明您是否正在容器内运行。您可以尝试运行 Ubuntu 系统有但 Alpine 镜像没有的命令(如bash
)来证明这一点。 - David Mazeapt-get
来管理软件包,而Alpine Linux使用apk
。一个简单的测试是运行apk update
,如果成功,则肯定在容器中运行。另外,如果指定了container
,则无需指定runs-on
选项,这也是另一种检查方式。 - smac89container
,runs-on
也是必需的。如果没有它,GitHub 将会将其标记为无效的工作流文件。 - jeffmaher