Dockerfile
FROM centos:7
COPY jdk-21_linux-x64_bin.tar.gz /usr/localRUN tar -xzf /usr/local/jdk-21_linux-x64_bin.tar.gz -C /usr/local/ && rm -f /usr/local/jdk-21_linux-x64_bin.tar.gz
ENV JAVA_HOME=/usr/local/jdk-21.0.8ENV PATH=$JAVA_HOME/bin:$PATH
RUN mkdir -p /appWORKDIR /app
COPY tlias.jar tlias.jar
EXPOSE 8080
ENTRYPOINT [“java”, “-jar”, “/app/tlias.jar”]
Hexo 博客使用方法指南本文是Hexo博客的完整使用指南,涵盖从基础操作到高级配置的所有内容。
基础命令1. 清理与生成hexo clean # 清理缓存文件 (db.json) 和已生成的静态文件 (public)hexo g # 生成静态文件 (generate 的简写)hexo generate # 完整写法,生成静态文件
2. 本地预览hexo server # 启动本地服务器,默认端口 4000hexo s # server 的简写hexo s -p 5000 # 指定端口号hexo s --debug # 启用调试模式
3. 部署hexo deploy # 部署到远程服务器hexo d # deploy 的简写hexo g -d # 生成并部署 (组合命令)hexo d -g # 部署并生成 (组合命令)
文章管理1. 创建文章hexo new post "文章标题" # ...
arm64 Debian系统软件安装指南本文介绍在arm64架构的Debian系统上安装JDK、Nginx、Tomcat、MySQL等常用软件的详细步骤。
安装Nginx解压安装包并安装依赖:
tar -xzvf nginx.tar.gzapt install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel
编译安装:
cd nginx-1.26.3/./configure --prefix=/usr/local/nginxmakemake install
启动Nginx:
cd /usr/local/nginx/sbin/nginx
安装JDK解压JDK安装包:
tar -xzvf jdk-21_linux-aarch64_bin.tar.gz mv jdk-21.0.8/ /usr/local/
配置环境变量:
nano /etc/profile
在文件末尾添加以下JDK环境变量配置:
# JDK环境变量配置export JAVA_HOME=/usr/local/jdk-21.0.8export JRE_H ...
Maven依赖配置指南本文介绍Spring Boot项目中常用的Maven依赖配置,包括MySQL连接、Druid连接池、日志配置等。
MySQL依赖配置在 pom.xml 中添加MySQL连接器依赖:
<!-- MySQL连接器依赖 --><dependency> <groupId>com.mysql</groupId> <artifactId>mysql-connector-j</artifactId> <version>8.0.33</version></dependency>
Druid连接池配置1. 添加Maven依赖切换到阿里巴巴的Druid连接池,在 pom.xml 中添加:
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> < ...
开机自动关led灯
执行以下命令打开rc.local文件
sudo nano /etc/rc.local
在 exit 0 之前加入以下命令:
sleep 5echo none > /sys/class/leds/blue:wifi/triggerecho none > /sys/class/leds/red:os/triggerecho none > /sys/class/leds/green:internet/trigger
按 Ctrl + O 保存,然后按 Enter 确认文件名,按 Ctrl + X 退出。
树和二叉树、森林
树
树的先根遍历相当于对应的二叉树的先序遍历
树的后根遍历相当于对应的二叉树的中序遍历
查找
折半查找
low、high、mid
mid = (high - low) / 2 ,向下取整
若查找的值比mid的值大,令low=mid+1,更新mid;若比mid的值小,令high=mid-1,更新mid
二叉搜索树
左子树的所有值都小于根节点,右子树的所有值都大于根节点
平衡二叉搜索树(又叫AVL树)
在二叉搜索树的基础上满足平衡二叉树的条件,即左右子树的高度差不大于1
插入节点:插入到符合的位置,如果不平衡,往上找第一个不平衡的根节点,把这个树摘出来,进行排序,排完序再放回去
优先级队列
哈夫曼树
排序算法
快速排序
在一个数组中,找一个数为基准数,将这个数中所有比基准数大的数放在该数的右边,比基准数小的数放在该数的左边。
插入排序
将一个记录插入到已排好序的序列中,从而得到一个新的有序序列
将序列的第一个数据看成是一个有序的子序列,然后从第二个记录逐个向该有序的子序列进行有序的插入,直至整个序列有序
希尔排 ...
Linux
未读转眼间就到了2025年,这是今年的第一个博客,记录一下Linux更改docker源的方法。
编辑/etc/docker/daemon.json文件,如果没有该文件则新建,在里面添加如下内容:
{ "builder": { "gc": { "defaultKeepStorage": "500MB", "enabled": true } }, "experimental": false, "registry-mirrors": [ "https://docker.hpcloud.cloud", "https://docker.m.daocloud.io", "https://docker.unsee.tech", "https://docker.1panel.live ...
当你通过SSH连接到Linux服务器时,你可能希望在登录后自动执行一些命令。我们可以通过编辑 .bashrc 文件来实现。
这里用 neofetch 来举例,neofetch是一个流行的命令行系统信息工具,它可以显示你的操作系统、内核版本等信息。
首先,你需要确保你的Linux服务器上已经安装了neofetch。如果没有安装,你可以通过以下命令进行安装:
apt-get install neofetch
编辑 .bashrc 文件: 打开用户的 .bashrc 文件,该文件位于用户的主目录下。
nano ~/.bashrc
如果提示 -bash: nano: command not found,说明你的系统中没有安装nano编辑器,可以运行以下命令安装nano:
apt-get install nano
添加 neofetch 命令: 在 .bashrc 文件的末尾添加以下命令:
if [ "$SSH_CONNECTION" ]; then neofetchfi
这段代码的作用是检查当前会话是否是通过 SSH 连接的,如果是,则运行 neo ...
ssh连接
打开Windows终端,输入命令:
ssh 用户名@服务器IP
用户名一般是 root
如果是第一次连接,会提示是否继续连接,输入 yes 并回车即可。
接下来输入密码,输入密码的时候不会显示任何字符,输入完成后按回车即可。
更新软件包
更新软件包列表:
sudo apt update
升级所有已安装的软件包到最新版本:
sudo apt upgrade
sudo 是 Linux 和 Unix 系统中的一个命令,代表 “superuser do”。它允许普通用户以超级用户(root 用户)的权限执行命令。使用 sudo 可以在不切换到 root 用户的情况下执行需要管理员权限的操作,从而提高了系统的安全性和管理的便利性。
安装软件sudo apt install 软件包名
例如安装nano文本编辑器:
sudo apt install nano
文件操作列出文件
语法
ls
删除文件
语法
rm [options] name…
options
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将 ...