利用 Docker 搭建 AdGuard Home

AdGuard Home 是一款广告拦截和追踪工具。将它作为 DNS 服务器运行,并根据需求配置自定义规则后,可将特定域名(如:广告、弹窗、影片、文字、横幅、跟踪、恶意或钓鱼网站等)重新路由到“黑洞”,从而阻止您的设备连接到这些服务器,且无需在设备上安装任何客户端软件。 下面介绍用 Docker Compose 方式在 VPS 上搭建及设置 AdGuard Home : 新建 AdGuard Home 目录 mkdir adguardhome cd adguardhome mkdir work conf 创建 docker-compose.yml 文件 services: adguardhome: image: adguard/adguardhome container_name: adguardhome restart: unless-stopped ports: - "53:53/tcp" - "53:53/udp" - "3000:3000/tcp" volumes: - ./work:/opt/adguardhome/work - ./conf:/opt/adguardhome/conf environment: TZ: Asia/Shanghai 启动 adguardhome 容器 docker compose up -d 此时在浏览器输入 VPS 的 IP 地址 + 端口(以上配置文件端口为 3000 )即可进入 AdGuard Home 主页 ...

September 1, 2025

使用 Watchtower 自动更新 Docker 容器

Watchtower 是一款开源工具,专为 Docker 平台设计。它可以监控正在运行中的 Docker 容器,并监视这些容器是否有新版本可用。如果 Watchtower 检测到镜像发布了新版本,它将自动拉取新镜像并使用相同的选项重启容器。从而简化了容器维护的流程,减少手动干预。 使用 Docker Compose 部署 Watchtower 是推荐且灵活的方式,它能更好的管理容器配置。 Docker Compose 部署 Watchtower 操作步骤 创建 Docker Compose 文件 mkdir docker-compose.yml 编辑 docker-compose.yml 文件 services: watchtower: image: nickfedor/watchtower # 指定Watchtower镜像版本 container_name: watchtower # 定义容器名称 volumes: - /var/run/docker.sock:/var/run/docker.sock # 挂载Docker Socket,使Watchtower能与Docker守护进程通信 environment: - 'TZ=Asia/Shanghai' # 设置时区,例如:Asia/Shanghai - 'WATCHTOWER_POLL_INTERVAL=86400' # 设置轮询间隔,单位秒。默认为86400秒(24小时) - 'WATCHTOWER_CLEANUP=true' # 更新后自动删除旧镜像,可选 - 'WATCHTOWER_NOTIFICATIONS=email' # 配置通知方式,例如:email, slack, discord等 - 'WATCHTOWER_NOTIFICATION_EMAIL_FROM=sender@example.com' # 设置发送电子邮件地址 - 'WATCHTOWER_NOTIFICATION_EMAIL_TO=recipient@example.com' # 设置接收电子邮件地址 - 'WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.example.com' # 设置发送电子邮件服务器 - 'WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587' # 设置发送电子邮件服务器端口 - 'WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=user' # 设置邮件服务器用户名 - 'WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=password' # 设置邮件服务器密码 restart: unless-stopped # 设置容器重启策略,除非手动停止,否则自动重启 command: --schedule "0 0 3 * * ?" --cleanup nginx hysteria # 定时任务:每天凌晨3点执行更新并删除旧镜像 更多配置选项: ...

August 29, 2025

Nginx、Hysteria 的 Docker 部署实践

Docker 部署 Nginx 安装 Docker Engine 设置 Docker 的 apt存储库 # Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update 安装 Docker 包 sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 运行一个测试镜像验证安装是否成功 sudo docker run hello-world docker-compose 方式部署 Nginx 新建一个目录存放 docker-compose 、 nginx.conf 文件和 conf.d 文件夹 在新建的目录中创建一个名为" docker-compose.yml “的文件,内容如下: services: nginx: image: nginx:stable-alpine-perl container_name: nginx ports: - "80:80" - "443:443" volumes: - ./nginx.conf:/etc/nginx/nginx.conf:ro # nginx.conf文件路径根据实际调整 - ./conf.d:/home/sixdian/nginx/conf.d:ro # conf.d 目录路径根据实际调整 - /home/sixdian/site/sixdian.com/public:/home/sixdian/site/sixdian.com/public:ro # 网站根目录路径根据实际调整 - /home/sixdian/ssl:/home/sixdian/ssl:ro # ssl 证书目录路径根据实际调整 - /etc/dhparam:/etc/dhparam:ro environment: TZ: Asia/Shanghai restart: always 在 docker-compose.yml 文件所在目录中执行以下命令启动服务: docker compose up -d Docker 部署 Hysteria docker-compose 方式部署 Hysteria 新建一个目录存放 docker-compose.yml 文件和 hysteria.yaml 配置文件 在新建的目录中创建一个名为” docker-compose.yml “的文件,内容如下: services: hysteria: image: tobyxdd/hysteria container_name: hysteria restart: always network_mode: "host" volumes: - ./hysteria.yaml:/etc/hysteria.yaml:ro # hysteria.yaml 文件路径根据实际调整 - /home/sixdian/ssl:/home/sixdian/ssl:ro # ssl 证书目录路径根据实际调整 environment: TZ: Asia/Shanghai command: ["server", "-c", "/etc/hysteria.yaml"] 在 docker-compose.yml 文件所在目录中执行以下命令启动服务: docker compose up -d

August 28, 2025

最近在学习和使用的几款工具

GIMP GIMP 是一款跨平台图像编辑器,适用于 GNU/Linux、macOS、Windows 等操作系统。 无论您是平面设计师、摄影师、插画师还是科学家,GIMP 都能为您提供精良的工具,助您轻松完成工作。GIMP 提供丰富的自定义选项和第三方插件,助您进一步提升工作效率。 功能特性 高品质照片处理 GIMP 提供高质量图像处理所需的工具。从润饰、修复到创意合成,唯一的限制就是您的想象力。 原创艺术作品创作 GIMP 为艺术家提供了将图像转化为真正独特的创作的能力和灵活性。 图形设计元素 GIMP 用于制作图标、图形设计元素以及用户界面组件和模型的艺术。 编程算法 GIMP 是一个高质量的脚本图像处理框架,支持多种语言,如 C、C++、Perl、Python、Scheme 等! Inkscape Inkscape是一个免费开源的矢量图形编辑软件,它适用于GUN/Linux,Windows或MacOS X系统平台。Inkscape提供了一套丰富的功能,被广泛用于艺术和技术插图中,例如:卡通,剪贴画,logo,排版,图表和流程图。不同于像素图,Inkscape使用的是矢量图,因此并不会被固定的像素所限制的,从而可以得到无限尺度清晰的打印输出和渲染。Inkscape使用标准化的SVG格式作为其主要文件格式(许多应用都支持SVG格式,包括网页浏览器)。 Inkscape支持导入和导出多种文件格式,包括SVG,AI,EPS,PDF,PS和 PNG。它有着全面的功能、简单的界面,支持多种语言并被设计为可扩展的;用户可以用附加组件定制自己的Inkscape的功能。 功能特性 对象创建 绘图:铅笔工具(可以手绘简单路径)、钢笔工具(创建贝塞尔曲线和直线)、书法工具(手绘,使用填充路径来代表书法笔划) 形状工具:矩形(可以设置圆角)、椭圆(包括圆、弧、线段)、星形/多边形(可以是圆形和/或随机的)、螺旋 文本工具(多行文本,全画布编辑) 嵌入位图(可以创建和嵌入所选对象的位图) 克隆(对象的“实时”链接副本),包括可以创建克隆的图样和排列的工具 对象操作 对象变换(移动、缩放、旋转、倾斜)可以以交互方式进行或指定精确数值操作 Z序操作(升高和降低) 对象分组(“在组中选择”而不取消分组,或“进入组”使其成为临时图层) 图层(锁定和/或隐藏单个图层,重新排列它们等;层可以形成分层树) 对齐和分布操作 填充和描边 颜色选择器(RGB、HSL、CMYK、色轮、CMS) 颜色选取工具 样式复制/粘贴 能够选择多级渐变的渐变编辑器 图案填充(位图/矢量图) 虚线描边,带有许多预定义的虚线样式 路径标记(结尾、中间和/或开始处标记,例如箭头) 基于路径的操作 节点编辑:移动节点和贝塞尔手柄,节点对齐和分布等。 转换为路径(用于文本对象或形状),包括将描边转换为路径 布尔运算操作 路径简化(简化层度可调) 路径插入和偏移,包括动态和链接的偏移对象 位图(像素图)临摹(彩色和单色路径) 文本支持 多行文本 使用任何已安装的轮廓字体,包括从右到左的文本 字距,字母间距,行间距调整 路径上的文本(文本和路径都保持可编辑) 形状中的文本(用文本填充图形) 渲染 完全抗锯齿显示 显示和PNG导出的Alpha透明度的支持 在交互式操作中瞬间完成的实时渲染 文件格式 完美兼容SVG格式文件生成和编辑 在XML编辑器中实时观看和编辑文档树 NG、OpenDocument Drawing、DXF、sk1、PDF、EPS和PostScript等导出格式 用于导出和转换的命令行选项 Kdenlive 一个自由开源的视频编辑软件,让每个人都可以制作高质量的内容,以提高媒体工具的民主化程度。应用的图形用户界面采用 C++ 和 Qt 编写,同时使用 Dan Dennedy 编写的 MLT 框架的 KDE 程序库,其依靠 FFmpeg 编解码当今现存几乎所有的音视频格式,同时承载了许多特效库,如用于视频的 Frei0r 和 Movit,以及用于音频的 LADSPA 和 SOX。 ...

August 17, 2025

股票表现

截止2025年8月16日我的股票收益情况:

August 16, 2025