云昴(Mao Yun)

【建站教程】Docker for caddy

| | 【专业·学习】建站Docker

这是Caddy的docker映像。谢谢abiosoft

点此来得到它

为什么建造它

来自abiosoft的docker映像有问题。 我认为可能获取了一些错误的链接/程序包,所以我尝试使用一种不友好但有效的方式对其进行修复。

版本

caddy v1.0.5

默认插件

dnspod, filter, cache, minify, expires, realip, cors

加入更多插件

常规插件

  1. 前往 官方插件介绍.(filter作为例子)

  2. 点击网站上的“完整文档”。

  3. 复制包/存储库链接,就像 github.com/echocat/caddy-filter/.

  4. 将其添加到“ builder.sh”中,之后您可以在其中看到类似 "import/path/here" (注意:不要忘记前面的“ _”)

  5. 完毕。

特殊插件

我所知,您需要做更多的事情去加入一些插件。(例​​如cors)。

  1. 执行“常规”中与1&2相同的操作

  2. 您可以在存储库中看到caddy文件夹,并且其中有一个corsPlugin.go文件。

  3. 打开它可以将内容复制到builder.sh中。(您可以看到我所做的,然后按照它添加其他插件(例如cors))

build

我使用docker-compose构建映像。


 caddy:
    build:
      context: ./caddy
    container_name: caddy
    environment:
      - TZ=
      - DNSPOD_API_KEY=
      - DNSPOD_HTTP_TIMEOUT=10
    volumes:
      - ./caddy/data/Caddyfile:/caddy/Caddyfile
      - ./caddy/data/certs:/caddy/certs
      - ./caddy/data/.caddy:/root/.caddy
      - ./www:/www/:rw
    ports:
      - 2015:2015
      - 80:80
      - 443:443
    restart: always
    networks:
      - net-default

您需要将context更改为您的Dockerfile所在的位置。

改变 environment.

TZ 是时区。

如果您使用dnspod,则需要使用DNSPOD_API_KEY,例如id,api_tokens

如果您使用cloudflare,则需要CLOUDFLARE_EMAILCLOUDFLARE_API_KEY 你可以从中得到它 cloudflare

更重要的是

您想从中获取“cloudflare”插件 点击 那么您可以像特殊插件一样添加它或查看我如何添加dnspod插件。

致谢

再次感谢 abiosoft 您可以看到有关构建caddy v1的更多详细信息 caddy v1.0.5

云昴(Mao Yun)