当我试图运行一个容器内部()方法

2024-05-15 21:58:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我建立了一个管道,它的唯一目的是建立一个映像,然后在其中执行一个简单的命令。在

我可以构建容器,但是,我不能在其中执行任何命令。当我执行'sh'步骤时,它会无限期挂起。在

如果我运行container.run()方法或container.withRun,则该步骤将执行,但实际上不会在容器内执行。在

很明显,我做错了什么-有人能给我建议正确的方法吗?我只想能够在容器内部执行步骤,或者-在容器中执行一个命令,然后将操作的结果读回Jenkins。在

node {
    String baseName = "salimfadhley/python_hello_world_server"
    String buildTag = "${baseName}:${env.BUILD_ID}".toString()
    def customImage

    stage('Build') {
        checkout scm
        customImage = docker.build(buildTag)
    }

    stage('Test') {
        customImage.inside('--entrypoint=/bin/bash') {
            sh "pwd"
        }
    }

}

Jenkins日志输出如下所示:

^{pr2}$

Dockerfile如下所示:

FROM salimfadhley/testpython:latest
COPY . /project
COPY src /src
RUN python -m pip install --upgrade pip setuptools
RUN python -m pip install -e /project/src
WORKDIR /project
#ENTRYPOINT ["/bin/bash"]
ENTRYPOINT ["uvicorn", "--port=80", "--host=0.0.0.0", "helloworld.main:app"]
EXPOSE 8080

所以,总结一下:我可以修复这个管道,让它真正允许我在容器内运行进程吗?在


Tags: pip方法命令srcprojectstring管道container