我想修改此图像https://hub.docker.com/r/micromdm/scep,以运行scepclient
而不是scepserver
。在Dockerfile
该图像是:
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
?
根据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] 删除。
我来说两句