本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
SWAG(Secure Web Application Gateway,前身为letsencrypt,与Let's Encrypt™无关联)是一个安全Web应用网关,它设置了Nginx Web服务器和反向代理,支持PHP,并内置Certbot客户端,可自动完成免费SSL服务器证书的生成和更新过程(支持Let's Encrypt和ZeroSSL)。它还包含用于入侵防御的fail2ban。
URL为yoursubdomain.duckdns.org,SUBDOMAINS可以是www,ftp,cloud(用于HTTP验证)或wildcard(用于DNS验证)。您可以使用我们的duckdns镜像来更新duckdns.org上的IP。http验证,路由器互联网侧的端口80应转发到此容器的端口80dns验证,请确保将您的凭据输入到/config/dns-conf下相应的ini文件(或某些插件的json文件)中
yoursubdomain.duckdns.org,将SUBDOMAINS变量留空)*.yoursubdomain.duckdns.org,将SUBDOMAINS变量设置为wildcard)--cap-add=NET_ADMIN是fail2ban修改iptables所必需的[***]访问默认主页(默认情况下禁用通过端口80的http访问,您可以通过编辑/config/nginx/site-confs/default.conf中的默认站点配置来启用它)。/config/log/letsencrypt下的日志,了解续订失败的原因。建议在docker参数中输入您的电子邮件,以便在这种情况下收到Let's Encrypt的过期通知。SWAG默认包含许多Certbot插件,但并非所有插件都能包含。 如果您需要未包含的插件,最快的获取方法是使用我们的Universal Package Install Docker Mod。
在容器上设置以下环境变量:
docker run -d \ --name=swag \ --cap-add=NET_ADMIN \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e URL=example.com \ -e VALIDATION=http \ -e SUBDOMAINS=www, `#可选` \ -e CERTPROVIDER= `#可选` \ -e DNSPLUGIN=cloudflare `#可选` \ -e PROPAGATION= `#可选` \ -e EMAIL= `#可选` \ -e ONLY_SUBDOMAINS=false `#可选` \ -e EXTRA_DOMAINS= `#可选` \ -e STAGING=false `#可选` \ -e DISABLE_F2B= `#可选` \ -e SWAG_AUTORELOAD= `#可选` \ -e SWAG_AUTORELOAD_WATCHLIST= `#可选` \ -p 443:443 \ -p 80:80 `#可选` \ -p 443:443/udp `#可选` \ -v /path/to/swag/config:/config \ --restart unless-stopped \ lscr.io/linuxserver/swag:latest
在/config/dns-conf/<plugin>.ini中设置所需的凭据(通常可在插件文档中找到)。
建议先使用STAGING=true获取证书,以确保插件正常工作。
dhparams.pem提供。docker exec -it swag htpasswd -c /config/nginx/.htpasswd <username>.htpasswd添加多个用户:密码。对于第一个用户,使用上述命令,对于其他用户,使用不带-c标志的上述命令,因为-c会强制删除现有.htpasswd并创建新文件/config/nginx/site-confs/default.conf。您可以随意修改此文件,也可以向此目录添加其他conf文件。但是,如果删除default文件,容器启动时将创建一个新的默认文件。/config/nginx/proxy_confs下的README.md文件。预设的conf文件位于并从此仓库导入。add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
这将"请求"Google等不要索引和列出您的站点。使用此选项时要小心,因为如果您在希望出现在搜索引擎上的站点上保留此行,最终会被除名-v /path-to-swag-config:/swag-ssl),在其他容器中,使用证书位置/swag-ssl/keys/letsencrypt//config下的SWAG文件夹etc(即-v /path-to-swag-config/etc:/swag-ssl),在其他容器中,使用证书位置/swag-ssl/letsencrypt/live/<your.domain.url>/(这更安全,因为第一种方法与其他容器共享整个SWAG配置文件夹,包括www文件,而第二种方法只共享ssl证书)cert.pem、chain.pem、fullchain.pem和privkey.pem,由Certbot生成,供nginx和各种其他应用使用privkey.pfx,一种Microsoft支持的格式,通常由dotnet应用(如Emby Server)使用(无密码)priv-full***bundle.pem,捆绑私钥和fullchain的pem证书,供ZNC等应用使用/config/fail2ban/jail.local.conf文件,而是创建同名的.local文件并编辑这些文件,因为.conf文件在操作和过滤器更新时会被覆盖。.local文件将附加.conf文件中的内容(即nginx-http-auth.conf --> nginx-http-auth.local)docker exec -it swag fail2ban-client status检查哪些jail处于活动状态docker exec -it swag fail2ban-client status <jail name>检查特定jail的状态docker exec -it swag fail2ban-client set <jail name> unbanip <IP>解除IP禁令此镜像支持QUIC(也称为HTTP/3),但必须在每个代理conf和默认conf中显式启用,因为如果启用了监听器但不暴露443/UDP,可能会中断某些浏览器的连接。
要启用QUIC,请将443/UDP暴露给您的客户端,然后取消注释所有活动代理conf以及默认conf中的QUIC监听器,并重启容器。
您还应该取消注释ssl.conf中的Alt-Svc头,以便浏览器知道您提供QUIC连接。
建议增加主机上的UDP发送/接收缓冲区,方法是设置net.core.rmem_max和net.core.wmem_max sysctl。建议值为4-16Mb(4194304-16777216字节)。要在重启之间保持持久性,请使用/etc/sysctl.d/。
linuxserver/letsencrypt镜像迁移请按照此博客文章上的说明进行操作。
docker run -d \ --name=swag \ --cap-add=NET_ADMIN \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e URL=example.com \ -e VALIDATION=http \ -e SUBDOMAINS=www, `#可选` \ -e CERTPROVIDER= `#可选` \ -e DNSPLUGIN=cloudflare `#可选` \ -e PROPAGATION= `#可选` \ -e EMAIL= `#可选` \ -e ONLY_SUBDOMAINS=false `#可选` \ -e EXTRA_DOMAINS= `#可选` \ -e STAGING=false `#可选` \ -e DISABLE_F2B= `#可选` \ -e SWAG_AUTORELOAD= `#可选` \ -e SWAG_AUTORELOAD_WATCHLIST= `#可选` \ -p 443:443 \ -p 80:80 `#可选` \ -p 443:443/udp `#可选` \ -v /path/to/swag/config:/config \ --restart unless-stopped \ lscr.io/linuxserver/swag:latest
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429