创建docker-consul官方形象

时间:2016-07-19 14:33:33

标签: docker certificate consul

我正在尝试使用官方的docker-consul图像阅读此文档https://hub.docker.com/_/consul/

不确定我是否可以从集线器中提取此官方图像,但我正在尝试从dockerfile和官方仓库中的脚本构建图像

https://github.com/hashicorp/docker-consul

使用以下命令

docker build -t docker-consul:0.6 .

来自teh文件夹,包含Dockerfile和docker-entrypoint.sh

但是图像创建失败并出现以下错误

   The command '/bin/sh -c apk add --no-cache ca-certificates gnupg &&     gpg --recv-keys 91A6E7F85D05C65630BEF18951852D87348FFC4C &&     mkdir -p /tmp/build &&     cd /tmp/build &&     wget 


https://releases.hashicorp.com/docker-base/${DOCKER_BASE_VERSION}/docker-base_${DOCKER_BASE_VERSION}_linux_amd64.zip &&     wget 

https://releases.hashicorp.com/docker-base/${DOCKER_BASE_VERSION}/docker-base_${DOCKER_BASE_VERSION}_SHA256SUMS &&     wget 

https://releases.hashicorp.com/docker-base/${DOCKER_BASE_VERSION}/docker-base_${DOCKER_BASE_VERSION}_SHA256SUMS.sig &&     gpg --batch --verify docker-base_${DOCKER_BASE_VERSION}_SHA256SUMS.sig docker-base_${DOCKER_BASE_VERSION}_SHA256SUMS &&     grep ${DOCKER_BASE_VERSION}_linux_amd64.zip docker-base_${DOCKER_BASE_VERSION}_SHA256SUMS | sha256sum -c &&     unzip docker-base_${DOCKER_BASE_VERSION}_linux_amd64.zip &&     cp bin/gosu bin/dumb-init /bin &&     wget 

https://releases.hashicorp.com/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_linux_amd64.zip &&     wget 

https://releases.hashicorp.com/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_SHA256SUMS &&     wget https://releases.hashicorp.com/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_SHA256SUMS.sig &&     gpg --batch --verify consul_${CONSUL_VERSION}_SHA256SUMS.sig consul_${CONSUL_VERSION}_SHA256SUMS &&     grep consul_${CONSUL_VERSION}_linux_amd64.zip consul_${CONSUL_VERSION}_SHA256SUMS | sha256sum -c &&     unzip -d /bin consul_${CONSUL_VERSION}_linux_amd64.zip &&     cd /tmp &&     rm -rf /tmp/build &&     apk del gnupg &&     rm -rf /root/.gnupg' returned a non-zero code: 2

我错过了什么?

我想修改入口点以包含它作为独立模式运行的运行时参数。然后只使用'docker run consul运行conatiner。

1 个答案:

答案 0 :(得分:1)

如果你想更改一个文件,更好的方法是准备你的Dockerfile并从官方继承。

Dockerfile示例:

FROM consul:0.6
ADD docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh

也许因为你只够改变CMD

FROM consul:0.6
CMD ["agent", "-your_param_1", "-your_param_2"]