当前位置: 首页 > wzjs >正文

公司外宣网站中国最新疫情最新消息

公司外宣网站,中国最新疫情最新消息,网站建设公司擅自关闭客户网络,建设银行网站怎么能转账腾讯云轻量应用服务器部署个人博客全指南:一站式 Docker Compose 搭建 Caddy、Halo、Certimate、Watchtower 与 Bing 壁纸 API。 前言 又好久没写博客了,毕业了事情比较多,而且因为经济上的原因,托管服务器的经济压力较大&#x…

腾讯云轻量应用服务器部署个人博客全指南:一站式 Docker Compose 搭建 Caddy、Halo、Certimate、Watchtower 与 Bing 壁纸 API。

前言

又好久没写博客了,毕业了事情比较多,而且因为经济上的原因,托管服务器的经济压力较大,托管后操作起来没有云服务器方便,同时大量的配置空闲,比较浪费。本着降本增效的原则,再加上最近 EdgeOne 大火,所以又上云了。

本文将详细介绍如何在腾讯云服务器上购买2C2G3M的云服务器,并使用 Docker Compose 运行 Caddy、Halo、Certimate、Watchtower、bing-wallpaper-api,最终搭建起一个功能完善的个人博客网站。

简介

对于个人博客而言,2核2G3M的配置是一个非常经济且性能足够的选择。它能够满足日常访问需求,同时避免了资源浪费。腾讯云作为国内领先的云服务提供商,其稳定性和网络质量都有保障。

Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。通过一个 docker-compose.yml 文件,我们可以轻松地配置、启动和管理所有服务,大大简化了部署和维护的复杂度。

⚠️ 注意

阅读本文你只需要:有手就行😜

准备工作

相信再看这篇教程的,你肯定有自己的服务器,可以点击 这里 直达教程,如果没有可以点击 https://curl.qcloud.com/Tkb1BeLp获取更多优惠!

为什么选择腾讯云轻量应用服务器?

LH(Lighthouse)相较于CVM,具有更简单灵活的创建以及服务面板,对于博客这样的轻量需求能够更好的适配。

对比项

轻量应用服务器

传统VPS

虚拟主机

云服务器CVM

适用场景

中小企业、开发者、轻量级应用(博客、小程序、测试环境等)

需要完整服务器权限的中小型项目

仅支持基础建站功能

中大型企业、高并发/复杂架构场景(视频处理、AI训练等)

资源管理

套餐式整体售卖(计算+存储+网络),性价比高

独立分配资源,需自行组合

共享底层资源,无独立管理权限

灵活选配各资源,按需计费

应用部署

支持一键部署应用模板(如 WordPress、LAMP)

需手动安装环境

仅支持预装环境建站

需完全手动配置

网络配置

自动创建网络,简化操作

需手动配置网络

无独立网络配置权限

需管理 VPC、安全组等复杂配置

功能支持

完整生命周期管理 + 防火墙 + 监控

基础管理功能

仅 FTP 文件管理

支持高阶功能(如弹性伸缩、GPU 等)

安全防护

默认免费提供 DDoS 防护和主机安全

需自行部署安全措施

依赖服务商基础防护

支持自定义高级安全策略

腾讯云轻量应用服务器购买指南

  1. 登录腾讯云官网:访问 http://cloud.tencent.com 并登录您的账号。如果没有账号,请先注册。

  2. **进入购买页面:**点击 https://curl.qcloud.com/Tkb1BeLp选择一块适合你配置的服务器下单购买。

  3. 设置登录方式:选择“密码登录”或“SSH密钥登录”,并设置好密码或绑定密钥。

  4. 确认订单并支付:核对所有配置信息,确认无误后提交订单并完成支付。

搭建个人博客服务

接下来,我们将使用 Docker Compose 搭建各个服务。

Docker 及 Docker Compose 安装配置

购买并登录到您的腾讯云服务器后,我们需要安装 Docker 和 Docker Compose。以下是详细步骤:

  1. 更新系统软件包

    sudo apt update && sudo apt upgrade -y

  2. 安装 Docker

点击查看安装即配置 docker:

https://www.anye.xyz/archives/SoizHNTd#docker

Watchtower 配置

Watchtower 可以帮助我们自动更新 Docker 容器镜像。在 docker-compose.yml 中添加 Watchtower 服务:

services:watchtower:container_name: watchtowerimage: containrrr/watchtower:latestvolumes:- /var/run/docker.sock:/var/run/docker.sockcommand: --interval 3600 --cleanup

说明

  • container_name: watchtower:指定容器名称为 watchtower

  • containrrr/watchtower:使用 Watchtower 官方镜像。

  • volumes/var/run/docker.sock:/var/run/docker.sock:将 Docker Socket 挂载到容器内,以便 Watchtower 可以与 Docker Daemon 通信,监控和更新其他容器。

  • command: --cleanup --interval 3600

    • --cleanup:更新后自动清理旧的镜像。

    • --interval 3600:每 3600 秒(1 小时)检查一次更新。您可以根据需要调整检查间隔。

CAW 代理加速

参考下面的教程获取 token:

https://www.anye.xyz/archives/VbiODlkV

docker-compose.yml 中添加 CAW 代理:

services:cdm:container_name: cawimage: docker.cnb.cool/anyexyz/tools/cnb-accelerates-web:latestnetwork_mode: bridgeports:- 172.17.0.1:3128:3128environment:- CNB_TOKEN=xxxxxxxxxxxxxxx- CNB_REPO=Anyexyz/Temp/runtime

说明:

  • container_name: caw:指定容器名称为 caw,便于在 Docker CLI 中识别和操作该容器。

  • image: docker.cnb.cool/anyexyz/tools/cnb-accelerates-web:latest:使用来自 docker.cnb.cool 镜像仓库的加速代理服务镜像,适用于访问加速。

  • ports::将宿主机的 172.17.0.1:3128 端口映射到容器的 3128 端口,用于提供代理服务。

Docker Mirror 加速

https://www.anye.xyz/archives/VbiODlkV

Certimate 配置

Certimate 是一个自动化 SSL 证书管理工具。在 docker-compose.yml 中添加 Certimate 服务:

services:certimate:container_name: certimateimage: certimate/certimate:latestports:- 127.0.0.1:8091:8090volumes:- /etc/localtime:/etc/localtime:ro- /etc/timezone:/etc/timezone:ro- ./data:/app/pb_dataenvironment:- http_proxy=http://172.17.0.1:3128- https_proxy=http://172.17.0.1:3128

说明

  • certimate/certimate:latest:使用最新版 Certimate 镜像。

  • container_name: certimate:指定容器名称为 certimate

  • ports:将容器的 8090 端口映射到主机的 8091 端口。您可以根据需要调整主机端口。

  • .data:/app/data:将 Certimate 的数据目录持久化到本地的 certimate_data 文件夹。

  • 添加环境变量以使用 caw 提供的代理。

Caddy 配置

Caddy 将作为我们的反向代理服务器,负责处理 HTTPS 证书和流量转发。在 docker-compose.yml 中添加 Caddy 服务:

services:caddy:container_name: caddyimage: caddy:latestports:- "80:80"- "443:443"- "443:443/udp"volumes:- ./conf:/etc/caddy- ./site:/srv- ../ssl:/ssl:ro

同时,创建 Caddyfile 文件:

https://anye.xyz {tls /ssl/anye.xyz/cert.crt /ssl/anye.xyz/cert.keyredir https://www.anye.xyz{uri} permanent
}https://www.anye.xyz {tls /ssl/anye.xyz/cert.crt /ssl/anye.xyz/cert.keyhandle_path /bg-image* {reverse_proxy http://172.17.0.1:9000}reverse_proxy http://172.17.0.1:8090
}

说明

  • caddy:latest:使用最新版 Caddy 镜像。

  • ports:映射 80 和 443 端口,用于 HTTP 和 HTTPS 访问。

Halo 配置

Halo 是本站使用的开源博客系统。在 docker-compose.yml 中添加 Halo 服务:

https://docs.halo.run/getting-started/install/docker-compose

services:halo:container_name: haloimage: registry.fit2cloud.com/halo/halo-pro:2depends_on:halodb:condition: service_healthynetworks:halo_network:volumes:- ./halo2:/root/.halo2ports:- "172.17.0.1:8090:8090"healthcheck:test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]interval: 30stimeout: 5sretries: 5start_period: 30srestart: on-failure:5environment:- JVM_OPTS=-Xmx512m -Xms256mcommand:- --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo- --spring.r2dbc.username=halo- --spring.r2dbc.password=openpostgresql- --spring.sql.init.platform=postgresql- --halo.external-url=https://www.anye.xyz/halodb:image: postgres:15.4restart: on-failure:3networks:halo_network:volumes:- ./db:/var/lib/postgresql/datahealthcheck:test: [ "CMD", "pg_isready" ]interval: 10stimeout: 5sretries: 5environment:- POSTGRES_PASSWORD=openpostgresql- POSTGRES_USER=halo- POSTGRES_DB=halo- PGUSER=halonetworks:halo_network:

bing-wallpaper-api 配置

bing-wallpaper-api 提供 Bing 每日壁纸的 API 接口。在 docker-compose.yml 中添加 bing-wallpaper-api 服务:

services:bing-wallpaper-api:container_name: bing-wallpaper-apiimage: docker.cnb.cool/anyexyz/bing-wallpaper-api:latestports:- 172.17.0.1:9000:9000restart: unless-stopped

说明

  • docker.cnb.cool/Anyexyz/bing-wallpaper-api:latest:使用 bing-wallpaper-api 镜像。

  • container_name: bing-wallpaper-api:指定容器名称为 bing-wallpaper-api

  • ports:将容器的 9000 端口映射到主机的 9000 端口。这是 bing-wallpaper-api 的默认访问端口。

各组件协同工作

现在,我们已经配置了所有必要的服务。它们将协同工作,共同搭建您的个人博客网站:

  1. Caddy:作为反向代理服务器,监听 80 和 443 端口。当用户访问您的域名时,Caddy 会根据 Caddyfile 中的配置,将请求转发到 Halo 或 bing-wallpaper-api 服务。

  2. Halo:博客系统本身,运行在 Docker 容器中,并通过 Caddy 暴露到公网。

  3. Certimate:证书管理工具,可以帮助您自动化管理和续期 SSL 证书。虽然 Caddy 已经内置了自动证书管理功能,但 Certimate 可以提供更灵活的证书管理方案,例如支持更多的 DNS 提供商,或者用于管理其他服务的证书。

  4. Watchtower:监控所有 Docker 容器的镜像更新。一旦发现有新版本,它会自动拉取最新镜像并重启相应的容器,确保您的服务始终保持最新状态。

  5. bing-wallpaper-api:提供 Bing 每日壁纸的 API 接口,您可以将其集成到您的博客中,例如作为背景图片或提供壁纸下载功能。

启动所有服务

在各应用目录下,运行以下命令启动服务:

docker-compose up -d

如果所有服务都正常运行,您现在应该可以通过您的域名访问 Halo 博客了。首次访问 Halo,您需要进行初始化设置。

总结

通过本文的指引,您应该已经成功在腾讯云服务器上搭建了一个基于 Docker Compose 的个人博客网站,集成了 Caddy 进行反向代理和 SSL 证书管理,Halo 作为博客系统,Certimate 进行更灵活的证书管理,Watchtower 自动化更新容器,以及 bing-wallpaper-api 提供额外的功能。

这种部署方式不仅充分利用了云服务器的资源,实现了“降本增效”的目标,还通过 Docker Compose 极大地简化了服务的部署和管理。希望这篇博文能帮助您轻松拥有自己的个人博客,并享受技术带来的乐趣!

如果您在搭建过程中遇到任何问题,欢迎在评论区留言交流。

http://www.dtcms.com/wzjs/316916.html

相关文章:

  • 建设部网站江阴百度推广公司
  • 阿里云网站空间做商城流程当下最流行的营销方式
  • 商城网站建设经验建立网站用什么软件
  • 互联网站建设用法百度知道在线
  • 可以在线做护理题的网站北京网站推广助理
  • 昆明网站推广公司域名站长工具
  • 在猪八戒网站如何做兼职怎么做起泡胶
  • 网站建设社区交流品牌推广营销平台
  • app网站建设 - 百度百度2023免费
  • 工业设计网站官网信息流推广的竞价机制是
  • 网页代理软件网站关键字优化技巧
  • 蘑菇丁毕业设计网站seo诊断站长
  • 揭阳门户网站开发谷歌paypal官网入口
  • 网站建设 开票晨阳seo
  • 备案期间需要关闭网站友情链接怎么互换
  • 烟台优化网站企业品牌推广营销方案
  • 做网站怎么样公司网站制作公司
  • 餐饮公司 网站建设营销培训总结
  • 3733手游网站在哪里做的营销推广的特点
  • 室内设计方案设计说明关键词优化课程
  • 医院哪个科室负责网站建设武汉疫情最新动态
  • 商城 小程序河北百度seo点击软件
  • 厦门网站免费制作全渠道营销成功案例
  • 广东手机网站建设报价seo排名教程
  • 东莞seo优化百度seo排名培训 优化
  • 惠阳建设局网站站长工具域名查询
  • 国家电网网站制作网络销售挣钱吗
  • 做带字头像的网站域名备案查询
  • 金华网站制作系统成功品牌策划案例
  • z-blog做企业网站app推广注册招代理