soe*_*ace 3 docker github-actions
当我创建GitHub Actions工作流文件时,示例YAML文件包含runs-on: ubuntu-latest。根据文档,我只有Ubuntu,Windows Server和macOS X的几个版本之间可以选择。
我以为GitHub Actions在Docker内部运行。如何选择Docker映像?
Edw*_*son 73
GitHub 操作提供了一个虚拟机——正如你所指出的,无论是 Ubuntu、Windows 还是 macOS——并在其中运行你的工作流程。然后,您可以使用该虚拟机在容器内运行工作流。
使用说明container符在容器内运行一个步骤。确保runs-on为您的容器指定合适的主机环境(ubuntu-latest对于 Linux 容器,windows-latest对于 Windows 容器)。例如:
jobs:
vm:
runs-on: ubuntu-latest
steps:
- run: |
echo This job does not specify a container.
echo It runs directly on the virtual machine.
name: Run on VM
container:
runs-on: ubuntu-latest
container: node:10.16-jessie
steps:
- run: |
echo This job does specify a container.
echo It runs in the container instead of the VM.
name: Run in container
Run Code Online (Sandbox Code Playgroud)
甲作业(作为一部分工作流)的虚拟机内运行。您可以选择它们提供的环境之一(例如ubuntu-latest或windows-2019)。
一项工作由一个或多个步骤组成。步骤可能是使用run的简单shell命令。但这也可能是一个动作,使用了用途
name: CI
on: [push]
jobs:
myjob:
runs-on: ubuntu-18.04 # linux required if you want to use docker
steps:
# Those steps are executed directly on the VM
- run: ls /
- run: echo $HOME
- name: Add a file
run: touch $HOME/stuff.txt
# Those steps are actions, which may run inside a container
- uses: actions/checkout@v1
- uses: ./.github/actions/my-action
- uses: docker://continuumio/anaconda3:2019.07
Run Code Online (Sandbox Code Playgroud)
run: <COMMAND> 使用OS的外壳执行命令uses: actions/checkout@v1从主要版本1 actions的存储库checkout(https://github.com/actions/checkout)中的用户/组织运行操作。uses: ./.github/actions/my-action 在此路径下运行您自己的存储库中定义的操作uses: docker://continuumio/anaconda3:2019.07从Docker Hub(https://hub.docker.com/r/continuumio/anaconda3)anaconda3从用户/组织continuumio版本运行映像2019.07请记住,如果要使用Docker ,则需要选择Linux发行版作为环境。
还应该注意,有一个container选项,允许您运行通常在要在容器内运行的主机上运行的任何步骤:https : //help.github.com/en/articles/workflow-syntax-for -github-actions#jobsjob_idcontainer
| 归档时间: |
|
| 查看次数: |
803 次 |
| 最近记录: |