Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Dockerfile for Java(Maven)NPM中的Azure工件进行身份验证_Docker_Maven_Npm_Azure Devops_Azure Artifacts - Fatal编程技术网

使用Dockerfile for Java(Maven)NPM中的Azure工件进行身份验证

使用Dockerfile for Java(Maven)NPM中的Azure工件进行身份验证,docker,maven,npm,azure-devops,azure-artifacts,Docker,Maven,Npm,Azure Devops,Azure Artifacts,是否有人可以为Maven、NPM或Python的Azure工件在docker构建阶段对Dockerfile内部进行身份验证提供推荐的解决方案 虽然针对从Dockerfile内部构建时访问Azure工件的已验证提要这一特定问题的大多数解决方案都在Stack Overflow或internet上(在下面的各种文章中)提到过,但我的问题是针对Maven、NPM或Python包的 为nuget&docker提供解决方案的示例博客- 谢谢你的帮助 我的问题是关于Maven、NPM或Python包 这

是否有人可以为MavenNPMPython的Azure工件在docker构建阶段对Dockerfile内部进行身份验证提供推荐的解决方案

虽然针对从Dockerfile内部构建时访问Azure工件的已验证提要这一特定问题的大多数解决方案都在Stack Overflow或internet上(在下面的各种文章中)提到过,但我的问题是针对Maven、NPM或Python包的

为nuget&docker提供解决方案的示例博客-

谢谢你的帮助

我的问题是关于Maven、NPM或Python包

这些包类型来自不同的系统,因此我们应该使用不同的方法对它们进行身份验证

对于Maven:

检查。您应该配置
pom.xml
文件来定义url,然后使用PAT定义
settings.xml
文件。您可以在项目中管理这两个文件,然后使用Dockerfile将
settings.xml
复制到
${user.home}/.m2
文件夹

对于NPM:

您可以按照此处的
Other
主题配置一个包含凭据的
.npmrc
。另外,我认为您可以创建一个普通的
.npmrc
文件,然后使用
Npm Authenticate task
对其进行修改。这里有一个

对于Python:

我们可以使用来填充
PIP\u EXTRA\u INDEX\u URL
环境变量,并将其作为构建参数传递。类似这样的内容:
参数:--build arg INDEX\u URL=$(PIP\u EXTRA\u INDEX\u URL)


您可以查看中的两个答案以了解更多详细信息。

谢谢@lance Li MSFT,所以看起来封装此文件的唯一方法是创建一个临时settings.xml或npmrc文件(在构建过程中,机密或令牌在运行时被替换),一旦构建完成,我们可以使用多阶段构建放弃它。我说的对吗?@BB8是的。一旦软件包恢复并且真正的构建完成,我们可以添加一个
delete
步骤来删除临时文件。谢谢@lance Li MSFTHi,问题如何?下面的答案是否解决了您的问题,如果是,您可以,这样可以帮助其他社区成员解决同样的问题,我们可以存档此线程,谢谢。