Azure devops 如何在AzureDevops管道YAML中设置容器用户?

Azure devops 如何在AzureDevops管道YAML中设置容器用户?,azure-devops,Azure Devops,我有一个yaml文件,我正在使用Azure DevOps在github上构建一个项目: resources: containers: - container: fedora-29 image: fedora:29 options: --user 0 jobs: - job: RunInContainer pool: vmImage: 'Ubuntu-16.04' strategy: matrix: fedora

我有一个yaml文件,我正在使用Azure DevOps在github上构建一个项目:

resources:
  containers:
  - container: fedora-29
    image: fedora:29
    options: --user 0

jobs:
  - job: RunInContainer
    pool:
      vmImage: 'Ubuntu-16.04'
    strategy:
      matrix:
        fedora-29:
          containerResource: fedora-29

    container: $[ variables['containerResource'] ]

    steps:
    - bash: |
        dnf install 'dnf-command(copr)' -y
      timeoutInMinutes: 30
此yaml文件使用
fedora:29
容器。Fedora 29不包括现成的
sudo
,默认情况下使用非root用户

因此,
dnf
命令失败:

Error: This command has to be run under the root user.
如果在
dnf
之前添加
sudo
,则错误为:

line 1: sudo: command not found

有没有办法通过yaml文件在Dockerfile中执行与
USER
命令等效的操作?或者我可以通过某种方式将
--user 0
标志传递给
docker run
吗?

您在
选项中指定的所有“东西”都将作为参数发送给docker守护进程,所以可能?我测试了上述文件(包括
选项:--user 0
部分)。它不起作用。azure强制用户ID为1001。好吧,在这种情况下,启动您自己的容器,如果azure强制用户1001,您对此无能为力,那么您在
选项中指定的所有“事情”都将作为参数发送到docker守护进程,所以可能?我测试了上述文件(包括
选项:--user 0
部分)。它不起作用。azure强制用户ID为1001。那么,在这种情况下,启动您自己的容器,如果azure强制用户1001,您对此无能为力