【发布时间】:2020-09-17 19:50:30
【问题描述】:
我在尝试创建一个 docker 映像以公开适用于 linux 的 Cloudflare's Tunnel 可执行文件时遇到了困难。到目前为止,我的 docker 镜像已经到了这个阶段(图片来自https://github.com/jakejarvis/docker-cloudflare-argo/blob/master/Dockerfile)
FROM ubuntu:18.04
LABEL maintainer="Jake Jarvis <jake@jarv.is>"
RUN apt-get update \
&& apt-get install -y --no-install-recommends wget ca-certificates \
&& rm -rf /var/lib/apt/lists/*
RUN wget -O cloudflared.tgz https://bin.equinox.io/c/VdrWdbjqyF/cloudflared-stable-linux-amd64.tgz \
&& tar -xzvf cloudflared.tgz \
&& rm cloudflared.tgz \
&& chmod +x cloudflared
ENTRYPOINT ["./cloudflared"]
在official documentation for their kubernetes setup 之后,我通过以下方式将它作为sidecar 添加到我的部署中:(这里cloudflare-argo:5 是从上面的dockerfile 构建的图像)
- name: cloudflare-argo
image: my-registry/cloudflare-argo:5
imagePullPolicy: Always
command: ["cloudflared", "tunnel"]
args:
- --url=http://localhost:8080
- --hostname=my-website
- --origincert=/etc/cloudflared/cert.pem
- --no-autoupdate
volumeMounts:
- mountPath: /etc/cloudflared
name: cloudflare-argo-secret
readOnly: true
resources:
requests:
cpu: "50m"
limits:
cpu: "200m"
volumes:
- name: cloudflare-argo-secret
secret:
secretName: my-website.com
但是,一旦我部署后,我的 pod 上出现 CrashLoopBackOff 错误,并出现以下 kubectl describe 输出
创建容器 cloudflare-argo
错误:无法启动容器“cloudflare-argo”:来自守护程序的错误响应:OCI 运行时创建失败:container_linux.go:349:启动容器进程导致“exec:\”cloudflared\”:$ 中找不到可执行文件路径":未知
【问题讨论】:
标签: docker kubernetes cloudflare