即使将Docker“在$ PATH中找不到可执行文件”,即使将它添加到基本映像中的路径中?

库尔特·皮克(Kurt Peek)

我想修改此图像https://hub.docker.com/r/micromdm/scep,以运行scepclient而不是scepserverDockerfile该图像是:

FROM alpine:3.6

COPY ./build/scepserver-linux-amd64 /usr/bin/scepserver
COPY ./build/scepclient-linux-amd64 /usr/bin/scepclient

EXPOSE 8080

ENTRYPOINT ["scepserver"]

我希望ENTRYPOINT使用["scepclient"]而不是["scepserver"],我尝试使用以下方法Dockerfile

FROM micromdm/scep

ENTRYPOINT ["scepclient"]

但是,如果我使用构建它docker build . --tag loadtest并尝试运行它,则会出现以下错误:

> docker run loadtest
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"scepclient\": executable file not found in $PATH": unknown.

我以为PATH在基础映像(micromdm/scep)中添加到您的可执行文件也将在“派生”映像中可用,但事实并非如此,而且我无法从https那里获得更多的了解://docs.docker.com/engine/reference/builder/#from

如何使用micromdm/scep图像而scepclient不是运行图像scepserver

ckaserer

根据dockerhub页面上的文档,您需要自己编译scep并自己构建docker映像。https://hub.docker.com/r/micromdm/scep

通过拉动spep docker镜像后

docker pull micromdm/scep

您可以通过检查

docker history micromdm/scep
    IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
    143554922979        17 months ago       /bin/sh -c #(nop)  CMD ["/scep"]                0B
    <missing>           17 months ago       /bin/sh -c #(nop)  VOLUME [/depot]              0B
    <missing>           17 months ago       /bin/sh -c #(nop)  EXPOSE 8080/tcp              0B
    <missing>           17 months ago       /bin/sh -c apk --no-cache add curl unzip && …   6.84MB
    <missing>           17 months ago       /bin/sh -c #(nop)  ENV SCEP_VERSION=v1.0.0      0B
    <missing>           21 months ago       /bin/sh -c #(nop)  CMD ["/bin/sh"]              0B
    <missing>           21 months ago       /bin/sh -c #(nop) ADD file:df48d6d6df42a0138…   3.99MB

如您所见,没有一个层提到scep二进制文件的副本。但是它引用/中的scep二进制文件。但是/文件夹中没有客户端二进制文件。我建议您按照dockerhub(https://hub.docker.com/r/micromdm/scep所述,检查关联的git存储库并构建scep和docker映像

编译中

要编译SCEP客户端和服务器,有一些要求。

您必须具有Go编译器。编译器通常在golang软件包中。您必须为$ GOPATH设置一个shell变量。这是Go编译器和实用程序用于所有Go项目的目录。设置完所有这些后,使用go get克隆存储库。get github.com/micromdm/scep安装依赖项:make deps编译服务器和客户端二进制文件:make build二进制文件将编译在build /文件夹中。

码头工人

docker build -t working/scep:latest .

泊坞窗运行

docker run -it --rm -v /path/to/ca/folder:/depot micromdm/scep:latest ca -init

建立在该图像上

接下来,您可以按照已经描述的那样更改入口点。但是这一次,您将在FROM语句中使用新创建的工作/临时图像。

FROM working/scep

ENTRYPOINT ["scepclient"]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Docker基本映像:无法启动容器XXX:exec:“ cat”:在$ PATH中找不到可执行文件

来自分类Dev

Docker:提取映像时出错,在$ PATH中找不到可执行文件

来自分类Dev

即使文件存在并且在PATH中,Linux可执行文件也会失败并显示“找不到文件”

来自分类Dev

错误:找不到pg_config可执行文件。即使我已经在环境变量上将路径添加到pg_config

来自分类Dev

应该如何将安装在/ opt下的可执行文件添加到路径中?

来自分类Dev

uWSGI + Docker:pyuwsgi:在$ PATH中找不到可执行文件

来自分类Dev

为什么Docker“在$ PATH中找不到可执行文件`/ bin / sh`”?

来自分类Dev

docker-exec失败:“ cd”:在$ PATH中找不到可执行文件

来自分类Dev

在$ PATH中找不到Docker撰写可执行文件”:未知

来自分类Dev

Docker容器构建失败:“ exec:\” flask \”:在$ PATH中找不到可执行文件”:未知

来自分类Dev

docker本地注册表“ exec:\“ htpasswd \”:在$ PATH中找不到可执行文件”

来自分类Dev

使用AWS Batch / ECS时在PATH中找不到Docker可执行文件

来自分类Dev

如何将“ rails”的可执行文件添加到我的容器的$ PATH中?

来自分类Dev

如何将某个目录中的单个可执行文件添加到 PATH 环境变量?

来自分类Dev

将函数调用添加到64位Visual C ++可执行文件中

来自分类Dev

docker 映像中的 sh 在 Windows 10 上看不到可执行文件

来自分类Dev

如何在不压缩的情况下将RAR文件添加到使用Inno Setup创建的安装可执行文件中?

来自分类Dev

即使我的PATH设置正确并且ZSH中的权限也正确,仍无法在我的PATH中找到可执行文件(pipsi)

来自分类Dev

将Docker映像配置为可执行文件

来自分类Dev

将字节写入C中的可执行文件

来自分类Dev

即使通过Selenium和Python使用ChromeDriverManager之后,为什么PATH中的“ chromedriver”可执行文件也不可用

来自分类Dev

将eval exec与可执行文件名一起使用,该可执行文件名在路径中包含空格

来自分类Dev

将元数据添加到gcc生成的可执行文件

来自分类Dev

将Unix可执行文件添加到Mac OS X Dock

来自分类Dev

将python标志cx_freeze添加到可执行文件

来自分类Dev

将部分添加到链接上的可执行文件

来自分类Dev

如何在将调试信息添加到可执行文件的同时让货物进入正确的标准库源文件路径

来自分类Dev

将Visual Studio Code二进制文件添加到Mac中的路径,找不到命令,尽管它在$ PATH中

来自分类Dev

Python错误:即使将目录添加到PATH之后,也找不到模块

Related 相关文章

  1. 1

    Docker基本映像:无法启动容器XXX:exec:“ cat”:在$ PATH中找不到可执行文件

  2. 2

    Docker:提取映像时出错,在$ PATH中找不到可执行文件

  3. 3

    即使文件存在并且在PATH中,Linux可执行文件也会失败并显示“找不到文件”

  4. 4

    错误:找不到pg_config可执行文件。即使我已经在环境变量上将路径添加到pg_config

  5. 5

    应该如何将安装在/ opt下的可执行文件添加到路径中?

  6. 6

    uWSGI + Docker:pyuwsgi:在$ PATH中找不到可执行文件

  7. 7

    为什么Docker“在$ PATH中找不到可执行文件`/ bin / sh`”?

  8. 8

    docker-exec失败:“ cd”:在$ PATH中找不到可执行文件

  9. 9

    在$ PATH中找不到Docker撰写可执行文件”:未知

  10. 10

    Docker容器构建失败:“ exec:\” flask \”:在$ PATH中找不到可执行文件”:未知

  11. 11

    docker本地注册表“ exec:\“ htpasswd \”:在$ PATH中找不到可执行文件”

  12. 12

    使用AWS Batch / ECS时在PATH中找不到Docker可执行文件

  13. 13

    如何将“ rails”的可执行文件添加到我的容器的$ PATH中?

  14. 14

    如何将某个目录中的单个可执行文件添加到 PATH 环境变量?

  15. 15

    将函数调用添加到64位Visual C ++可执行文件中

  16. 16

    docker 映像中的 sh 在 Windows 10 上看不到可执行文件

  17. 17

    如何在不压缩的情况下将RAR文件添加到使用Inno Setup创建的安装可执行文件中?

  18. 18

    即使我的PATH设置正确并且ZSH中的权限也正确,仍无法在我的PATH中找到可执行文件(pipsi)

  19. 19

    将Docker映像配置为可执行文件

  20. 20

    将字节写入C中的可执行文件

  21. 21

    即使通过Selenium和Python使用ChromeDriverManager之后,为什么PATH中的“ chromedriver”可执行文件也不可用

  22. 22

    将eval exec与可执行文件名一起使用,该可执行文件名在路径中包含空格

  23. 23

    将元数据添加到gcc生成的可执行文件

  24. 24

    将Unix可执行文件添加到Mac OS X Dock

  25. 25

    将python标志cx_freeze添加到可执行文件

  26. 26

    将部分添加到链接上的可执行文件

  27. 27

    如何在将调试信息添加到可执行文件的同时让货物进入正确的标准库源文件路径

  28. 28

    将Visual Studio Code二进制文件添加到Mac中的路径,找不到命令,尽管它在$ PATH中

  29. 29

    Python错误:即使将目录添加到PATH之后,也找不到模块

热门标签

归档