当前位置: 首页 > 面试题库 >

詹金斯错误的卷权限

公良修竹
2023-03-14
问题内容

我有一台托管Oracle Linux的虚拟机,在其中安装了Docker并使用docker-
compose文件创建了容器。我将jenkins卷放在一个共享文件夹下,但是在启动docker-compose时,我遇到了Jenkins的以下错误:

詹金斯| 触摸:无法触摸’/var/jenkins_home/copy_reference_file.log’:权限被拒绝
无法写入/var/jenkins_home/copy_reference_file.log。卷权限错误?詹金斯退出了代码1

这是卷的声明

  volumes:
    - "/media/sf_devops-workspaces/dev-tools/continuous-integration/jenkins:/var/jenkins_home"

问题答案:

问题是,容器中的用户与主机上的用户具有不同的userid:groupid。

您有两种可能性:

  1. 您可以确保容器中的用户具有与主机上的用户相同的userid:groupid,该主机可以访问装入的卷。为此,您必须在Dockerfile中调整用户。在dockerfile中使用相同的userid:groupid创建一个用户,然后切换到该用户https://docs.docker.com/engine/reference/builder/#user

  2. 您可以确保主机上的用户与容器中的用户具有相同的userid:groupid。为此,使用输入容器,docker exec -it <container-name> bash并显示用户ID id -u <username>组ID id -G <username>。将装入的卷的权限更改为此userid:groupid。



 类似资料:
  • 我在mac os X 10.6.8上安装了詹金斯,成功安装詹金斯后,我在浏览器中以默认地址浏览它http://localhost:8080但tomcat页面显示的不是詹金斯主页。我读了jenkins的文档,它将需要执行命令java-jarjenkins.war--http pPort=8080 当执行命令java-jarjenkins时。war——httpPort=8080 有这个错误 2016-

  • 有人有主意吗? build.xml

  • 有没有可能让詹金斯使用真正的浏览器而不是无头浏览器?我正在运行一些用TestNG编写的测试(使用Selenium webdriver)。当我运行testng时。在Eclipse中,浏览器启动并运行测试。但当我使用Jenkins并用maven运行测试时,它不会启动任何浏览器。

  • 问题内容: 如何轻松地将Jenkins与qUnit集成?我将使用真正的浏览器(如firefox和chrome)运行测试。我的服务器在RedHat 6.1 Linux上运行。我想我都需要插件/库,但我仍然不知道如何使其工作。我第一次与Jenkins合作(在服务器端)。 //编辑: 如果有人也可以共享想法如何构建覆盖率报告,那将是很棒的。 提前致谢 :)。 问题答案: 说詹金斯和QUnit只是难题的一

  • 我想做一些非常简单的事情,在一个文件夹中,我有一个jar文件和一个包含脚本的名为脚本的文件夹。但我可以让詹金斯拉链来做这件事。 zip目录:“awsdeploy”,排除:“”,glob:“”,“scripts/”,zipFile:“SQSToElasticProcessor.zip” 必须显式命名“zip”的参数。@ 第 31 行,第 16 列。

  • 问题内容: 我正在尝试设置 Jenkins 从属服务器,以构建使用名为“ Freddy”的Swift窗格的Swift项目。 问题是构建因错误而失败: 错误:没有这样的模块“ Freddy” 这是我的Podfile: CocoaPods版本0.39.0 Xcode 7.2.1( 直接从Xcode构建时没有问题 ) PS。在我将其替换为AFNetworking之前,Alamofire吊舱也发生了同样的