我的个人博客正式上线了!

news/2024/12/24 2:55:30 标签: 服务器

我的个人博客终于上线啦点此访问

经过一番折腾,我的个人博客终于上线啦!这是一个属于我自己的小天地,可以用来记录生活点滴、技术分享以及一些随想。
在这里,我想分享一下搭建博客的整个过程和心得体会。

为什么要搭建博客?

在快节奏的信息流时代,我一直觉得需要一个沉淀思考的地方。一个博客不仅是知识的记录,更是一种表达自我的方式。

搭建过程

选择技术栈

我这选择了开源的Solo进行搭建,github地址solo

数据库:mysql

使用docker搭建,可以自行选择自己的方式搭建

部署到服务器

腾讯云轻量级服务器 + 本地电脑(ubuntu server系统)
  • docker启动服务
 docker run --detach --name solo --network=host     --env RUNTIME_DB="MYSQL"     --env JDBC_USERNAME="xxxx"     --env JDBC_PASSWORD="xxxxxxxx"     --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver"     --env JDBC_URL="jdbc:mysql://你自己mysql服务器的ip:你自己mysql服务器暴露的端口/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true"     b3log/solo --listen_port=9000 --server_scheme=https --server_host=blog.douwen.top --server_port=
  • nginx反向代理
    在这里插入图片描述
upstream backend {
    server localhost:9000; # Solo 监听端口
}

server {
    server_name  blog.douwen.top; # 博客域名

    access_log off;

    root /var/www/html;
    location ~* \.(png)$ {
      expires 30d;  # 设置浏览器缓存时间
      access_log off;
      try_files $uri $uri/ /index.html;
    }
    location / {
        proxy_pass http://backend$request_uri;
        proxy_set_header  Host $http_host;
        proxy_set_header  X-Real-IP $remote_addr;
        client_max_body_size  10m;
    }


    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/blog.douwen.top/fullchain.pem; # managed by Certbot # 填写自己的证书地址
    ssl_certificate_key /etc/letsencrypt/live/blog.douwen.top/privkey.pem; # managed by Certbot # 填写自己的证书的私钥地址
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}


server {
    if ($host = blog.douwen.top) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen       80;
    server_name  blog.douwen.top;
    return 404; # managed by Certbot


}
  • nps内网穿透开源链接,可参考我的另一片博文,详细记录使用过程

自生成ssl证书,让访问更安全

参考链接

设计与优化

我尽量让页面看起来清爽简约,减少视觉疲劳。
后续会在此基础上根据需求再开发相关能力

写博客的意义

  • 记录成长:技术学习、项目踩坑、生活思考,这些都值得记录。
  • 交流分享:希望未来能在这里和更多志同道合的人交流想法。
  • 提高表达能力:写作是一种思维训练,帮助我更清晰地表达观点。

未来计划

  • 将自己学习内容以及心得记录下来
  • 将工作中遇到问题的背景与解决思路记录下来
  • 尽量经常更新博文,保持输出的节奏

希望你喜欢这篇文章的风格,搭建博客是值得纪念的事情!


http://www.niftyadmin.cn/n/5797242.html

相关文章

与乐鑫相约 CES 2025|创新技术引领物联网与嵌入式未来

2025 国际消费电子产品展览会 (International Consumer Electronics Show, CES) 将于 2025 年 1 月 7 至 10 日在美国拉斯维加斯盛大开幕。作为全球规模最大、水准最高,且影响力最广的消费电子类科技盛会,CES 每年都吸引着全球行业领袖、开发者和技术爱好…

【计算机视觉基础CV-图像分类】02-入门详解图像分类、经典数据集、比赛与冠军图像模型演进史

前言 图像分类(Image Classification)是计算机视觉(Computer Vision)中一项基础且核心的任务。简单来说,就是让计算机从给定的类别集合中,为一张输入图片分配一个正确的类别标签。这个过程听起来直观&…

流式处理,为什么Flink比Spark Streaming好?

1 、反压机制 Flink 在数据传输过程中使用了分布式阻塞队列,一个阻塞队列中,当队列满了以后发送者会被天然阻塞住,这种阻塞功能相当于给这个阻塞队列提供了反压的能力。 Spark Streaming 为了实现反压这个功能,在原来的架构基…

从零玩转CanMV-K230(4)-小核Linux驱动开发参考

前言 K230 芯片是一款基于 RISC-V 架构的端侧 AIoT 芯片,包含两个核心: CPU 1: RISC-V 处理器,1.6GHz,32KB I-cache, 32KB D-cache, 256KB L2 Cache,128bit RVV 1.0扩展 CPU 0: RISC-V 处理器,0.8GHz&am…

《深入浅出 Servlet:Java Web 开发的基石》(二)

ServletConfig(熟练) ServletConfig对象对应web.xml文件中的<servlet>元素。例如你想获取当前Servlet在web.xml文件中的配置名&#xff0c;那么可以使用servletConfig.getServletName()方法获取&#xff01; 你不能自己去创建ServletConfig对象&#xff0c;Servlet的in…

使用Docker启用MySQL8.0.11

目录 一、Docker减小镜像大小的方式 1、基础镜像选择 2、减少镜像层数 3、清理无用文件和缓存 4、优化文件复制&#xff08;COPY和ADD指令&#xff09; 二、Docker镜像多阶段构建 1、什么是dockers镜像多阶段构建 1.1 概念介绍 1.2 构建过程和优势 2、怎样在Dockerfil…

播放端标注叠加方案

方案要求 标注信息能够随着视频数据一起传输&#xff0c;混合在视频数据中数据在解码前&#xff0c;就可以从视频数据中解析出来 传输协议 目前&#xff0c;主流摄像头的数据都是通过RTSP协议进行协商&#xff0c;然后通过RTP传输数据&#xff0c;使用RTCP进行流控。 应用层…

Java中使用四叶天动态代理IP构建ip代理池,实现httpClient和Jsoup代理ip爬虫

在本次爬虫项目中&#xff0c;关于应用IP代理池方面&#xff0c;具体完成以下功能&#xff1a; 从指定API地址提取IP到ip池中&#xff08;一次提取的IP数量可以自定义更改&#xff09; 每次开始爬虫前&#xff08;多条爬虫线程并发执行&#xff09;&#xff0c;从ip池中获取一…