Docker/Rancher2安装部署Caddy2

2022-11-22
1761
0
4

温馨提示:本文最后更新于 2024-08-07,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

76cece10aef10d733add41c23b1ca831_photo-1610545749949-cb587f457385_crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=MnwxMTgwOTN8MHwxfHNlYXJjaHw1fHxkb2NrZXJ8ZW58MHx8fHwxNjY5MTI0Mjkw&ixlib=rb-4.0.3&q=80&w=1080

Caddy是一款基于Go语言编写的强大且可扩展的平台,可以给你的站点、服务和应用程序提供服务。

官网:https://caddyserver.com/docs/
中文教程网站:https://caddy2.dengxiaolong.com/docs/
Github地址:https://github.com/caddyserver/caddy

  • 这里以 v2.6.2版本做演示
  • 本站以切换到 Caddy 2.6.2版本反代

Docker部署

docker run -d --restart=always --privileged --net=host -v /data/caddy/data:/data -v /data/caddy/config/Caddyfile:/etc/caddy/Caddyfile -v /data/caddy/config/vhosts:/etc/caddy/vhosts -v /data/caddy/logs:/logs caddy:2.6.2
  • 先准备 Caddyfile配置文件
  • data目录可放静态资源文件
  • vhosts目录放各站点的配置文件和ssl证书文件
  • logs目录放caddy日志文件
  • 只需一个邮箱可自动申请并配置https访问

自用整理的 Caddyfile配置文件,Caddyfile语法可参考官网教程

# 日志
(LOG) {
    log {
        format json {
            time_local
            time_format wall_milli
        }
      
        output file "/logs/{args.0}/access.log" {
            roll_size 100mb
			roll_local_time
            roll_keep 3
            roll_keep_for 30d
        }
    }
}

# 压缩
(GZIP) {
	encode zstd gzip
}

# 静态资源设置缓存
(STATIC) {
    @static {
        expression path_regexp('\\.(ico|css|js|jpg|jpeg|png|gif|bmp|webp|avif|svg|woff|woff2|otf)')
    }
    header @static >Cache-Control max-age=31536000
}

import ./vhosts/*.conf

本站反代配置示例

https://4xx.me {
	import GZIP
	import LOG "4xx.me"
	tls /etc/caddy/vhosts/4xx.me/4xx.me.pem /etc/caddy/vhosts/4xx.me/4xx.me.key
    reverse_proxy 10.0.16.15:8091
}

自动申请ssl证书配置示例

https://域名 {
	import GZIP
	import LOG "域名"
	tls 邮箱
    reverse_proxy 10.0.0.13:9000
}

image-1669125084627

静态网站配置示例

https://static.4xx.me {
	import GZIP
	import LOG "static.4xx.me"
	import STATIC
    tls x@xxx.com
    try_files {path} /
	root * /htmls/文件目录
    file_server
}

Rancher2部署

image-1669125167626
image-1669125206997

部署、使用都很简单,欢迎使用


评论

Polar.
最重要的,是拥有跟随内心与直觉的勇气

文章目录