我在Mac上运行Jenkins for MacOS(使用Homebrew)和Docker Desktop。
当我尝试从Jenkins pipeline为Python应用构建Docker镜像时,报告了以下错误:
+ docker build -t <docker image name> .
ERROR: mkdir /.docker: permission denied
Jenkinsfile片段:
pipeline {
agent none
stages {
...
stage("Build Docker Image") {
agent {
docker { image 'docker:24.0.5' }
}
steps {
script {
dockerImage = docker.build("<docker image name>:${env.BUILD_ID}")
}
}
}
...
}
}
Dockerfile(来自GitHub存储库上的根路径):
FROM python:alpine3.18
WORKDIR /app
COPY requirements.txt /app
RUN pip install -r requirements.txt
EXPOSE 5000
COPY . /app
CMD ["flask", "run","--host","0.0.0.0","--port","5000"]
在前面的阶段中,Docker容器已经成功使用。
编辑:
我需要应用这个解决方案:https://harshityadav95.medium.com/how-to-setup-docker-in-jenkins-on-mac-c45fe02f91c5,因为在此之前我遇到过docker command not found
问题。
我假设Jenkins的用户没有权限在./docker目录中写入,但我不确定这是哪个用户。
任何帮助都欢迎。提前感谢您的时间。
1条答案
按热度按时间2w3rbyxf1#
我通过在Jenkins阶段中将HOME设置为${env.WORKSPACE}来解决报告的问题:
我希望它能帮助某人。