Azure devops 如何在AzureDevops管道YAML中设置容器用户?
我有一个yaml文件,我正在使用Azure DevOps在github上构建一个项目: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
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,您对此无能为力