在 github ci 中进入 docker 容器之前,如何在主机中 运行 命令

how to run a command in host before entering docker container in github ci

在进入 docker 容器(arch linux)

之前,我正在尝试在主机系统上安装一个包,即(ubuntu-最新)

我尝试了很多语法,但我都错了

on: [push]
jobs:
  update-aur:
    runs-on: ubuntu-latest
    steps:
      - run : sudo apt-get install runc
    container: archlinux
    steps:
      - run: |
          pacman --noconfirm -Syu 
          pacman --noconfirm -S base-devel 

这给出了错误的步骤已经定义

如果 运行 机器配置对构建很重要,请尝试使用 self-hosted runner

  1. 您可以在某些云提供商(例如 AWS、Azure 等)中创建 VM 并使用 GitHub-CI.
  2. 进行注册
  3. 安装 GitHub-CI 服务
  4. 安装您需要的所有实用程序
  5. 将运行器注册到存储库
  6. 更改 run-on 的构建脚本以指向自托管运行器

您可以在 GitHub-CI Docs

中找到更多信息

您可以 运行 仅容器中的一个步骤,而不是整个作业。类似于:

on: [push]
jobs:
  update-aur:
    runs-on: ubuntu-latest
    steps:
      - run: sudo apt-get install ...
      - uses: docker://archlinux
        with:
          entrypoint: /usr/bin/bash
          args: -c 'pacman --noconfirm -Syu && pacman --noconfirm -S base-devel'

我不知道这对你的情况是否可行,因为你可能想 运行 之后在同一个容器中执行一系列步骤。在任何情况下,您都可以在容器 here and the different options available here

中找到有关 运行ning 步骤的更多信息