宝塔面板简介
宝塔面板是一款专门简化服务器运维操作的可视化 Web 管理工具,支持 Linux 和 Windows 两大主流服务器系统,全球超 2000 万台服务器安装使用,而且基础核心功能全免费,像网站管理、环境部署、资源监控等入门所需功能无需付费
宝塔面板把复杂的服务器命令(如环境部署、软件安装等)封装成图形化按钮,通过网页界面点击操作即可完成,不用记忆繁琐命令。Linux 端支持 CentOS、Ubuntu、Debian 等系统,Windows 端支持 2008、2012 等多个版本;同时能适配各类云服务器(阿里云、腾讯云等)和物理服务器。
一般宝塔面板常用的核心功能如下:
- 一键部署运行环境:这是入门最常用的功能。能一键安装 LAMP(Linux+Apache+MySQL+PHP)、LNMP(Linux+Nginx+MySQL+PHP)等主流网站运行环境,也支持 Tomcat、Node.js 等针对 Java、前端项目的环境,省去手动配置的复杂步骤。
- 网站与域名管理:快速创建网站,绑定自己的域名;还能一键部署 SSL 证书,让网站开启 HTTPS,同时支持伪静态、防盗链等基础网站配置,新手也能快速搭建起可访问的网站。
- 数据库与文件管理:支持 MySQL、MariaDB 等常用数据库的一键安装,可图形化操作数据库的备份、还原、权限设置;内置文件管理器,能在线上传、下载、编辑、打包解压服务器文件,不用额外借助 FTP 工具。
- 服务器资源监控:直观展示服务器 CPU、内存、磁盘、网络的实时使用情况,还有数据记录,能清晰知道服务器运行状态,比如是否因资源占用过高导致网站卡顿。
- 一键部署主流应用:针对新手开发者,可一键部署 WordPress(博客)、Discuz(论坛)、Halo(轻量博客)等常见源码程序,几分钟就能搭建好对应的网站,无需手动配置程序环境。
使用:
- 用 SSH 连接服务器,输入对应系统的安装命令(比如 CentOS
系统输入
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh)。 - 安装完成后,记录下面板访问地址(默认端口 8888)、初始用户名和密码。
- 打开浏览器访问面板地址,登录后先修改默认密码,再根据需求安装 LAMP/LNMP 等基础环境。
- 环境安装完成后,就能创建网站、部署程序,开始服务器管理操作了。
使用宝塔面板
宝塔面板安装
这个一般情况下,购买带有宝塔面板的云服务器就行,或者你可以切换带有宝塔的镜像
宝塔的安装也就是把服务器接口打通,然后去官网一装的事,进入宝塔面板安装教程,复制云服务器系统的宝塔面板安装指令。
然后你要安装一个远程ssh链接的工具
本案例使用腾讯云
连接到服务器
一般情况下,需要重置密码才能拿到
新建连接连接到云服务器,输入正确的内容,主机就是主机名,ssh默认是22端口,用户名一般默认是 root
这里如果有需要,就在这里进行执行安装宝塔面板的命令安装宝塔面板
腾讯云能在实例的详情直接通过登录进入宝塔面板,前提是你选择了带宝塔的服务器
修改一下宝塔的默认端口,随便一个不冲突的就行,要不然总是提示
注意你需要新增一个端口对外访问就需要在安全组里面进行放行的配置
然后就进来了
宝塔面板安装JDK
腾讯云使用yum 或 dnf进行包管理,因为
OpenCloudOS 通常基于 RHEL/CentOS 体系,所以可能没有使用 apt
包管理器
1 | yum install -y java-21-openjdk-devel.x86_64 |
输入这样的命令安装 JDK21,RHEL/CentOS 系系统中,OpenJDK
的包名格式通常为 java-{版本}-openjdk-devel(开发版,包含
javac 等工具),版本号直接使用数字(如
8、11、17、21),而非 1.8.0 这种格式(后者是旧版 8
的特定命名)。
若安装时提示包不存在,可先执行
yum search java-21-openjdk 确认系统中可用的 21
版本包全名,再替换安装命令中的包名即可。
如果使用宝塔面板,就使用 JDK 管理中下载
因为我是 Spring Cloud 的微服务项目,我就没搞 Tomcat,所以直接下 JDK 就行
复制JDK地址
、
点击右侧文件,进入根目录的root文件夹下,双击编辑.bashrc文件
在文件后面填入如下内容
1 | export JAVA_HOME=/www/server/java/jdk-21.0.2 |
测试一下 JDK 是否可用
1 | java -version |
面板内安装其他必要内容
MySQL 8.0.25
安装方式这里根据自身实际的情况选择,如果当前环境为生产环境,一般使用编译安装,确保后期程序运行的稳定性
可以通过以下命令检查Nginx服务器是否打开
软件商店点击直接安装 mysql,安装完了测试一下服务的可用性
MySQL编译安装方式极其消耗机器性能,普通云服务器请勿尝试,避免磁盘 IO 过高导致服务器宕机。
修改一下配置文件,打开配置文件,找到 [mysqld] 段落下的
bind-address 项:
- 若存在
bind-address = 127.0.0.1,将其修改为bind-address = 0.0.0.0(允许所有 IP 连接);
1 | sudo systemctl status mysql |
记得把端口放行
可以看到是没有问题的
Redis 7
建议打开在首页显示
开放6379默认端口,记得宝塔和云服务那边的规则组都开
打开Redis配置控制台,修改ECS服务器安全组的访问规则
将IP绑定设置为 0.0.0.0 ,同时一定要设置Redis访问密码
重启之后测试一下
在宝塔面板的「终端」或服务器 SSH 中执行:
1 | systemctl status redis |
连接一下看看
1 | redis-cli -a "你的密码" |
宝塔面板安装Nacos3
如果不使用 Docker,安装过程可以说是相当扫码了
首先 java 和 Mysql 需要配置好,JDK需要大于18
从 Nacos
的官方下载页面(https://github.com/alibaba/nacos/releases)下载最新版本的
Nacos 安装包,例如 nacos-server-2.5.1.tar.gz。
我是习惯将其放置在 /usr/local
目录下,然后解压压缩包
1 | cd /usr/local/nacos |
解压完成后,你会看到一个名为 nacos 的文件夹。
一般我们需要使用 MySQL 数据库去做Nacos的持久化,进入
conf 目录,编辑 application.properties
文件:
在文件中添加以下内容
1 | # 数据源平台设置为mysql |
修改完成后按Ctrl+O保存,Ctrl+X退出。
登录到 MySQL 数据库并创建一个名为 nacos 的数据库:
1 | mysql -u root -p |
输入密码后,执行以下 SQL 命令
先创建 'root'@'%' 并设置密码:
1 | CREATE USER 'root'@'%' IDENTIFIED BY 'password'; |
创建用户后,再授予对 nacos 数据库的权限:
1 | GRANT ALL PRIVILEGES ON nacos.* TO 'root'@'%'; |
然后来到 nacos/conf 下,配置数据库初始化脚本
1 | mysql -u root -p nacos < nacos-mysql.sql |
放宝塔里面执行也可以,然后可以看到表都产生了
切换到 bin 目录下,使用单例模式启动,并且配置 jwt
1 | bash startup.sh -m standalone |
配置初始密钥
在 Linux 终端中执行以下命令,直接生成符合要求的 Base64 密钥(无需手动拼接字符串)
1 | # 生成一个 48 位的随机字符串(满足 ≥32 位要求),并进行 Base64 编码 |
例如:ZjJjMjBmZmQwNzM3OWYwYzYyZTdiNDBlZjk5ZmViZjcxMjcwMTZkNTEzYmFlZTc3Cg==
认证的密钥对自己配置一下就可以了
启动完成后,可以通过查看日志文件确认 Nacos 是否正常运行:
1 | cat /usr/local/nacos/nacos/logs/startup.log |
1 | tail -f /usr/local/nacos/nacos/logs/startup.log |
配置完成
典中典之忘放开8080端口
这样就配置好了,Nacos第一次控制台启动慢点是正常的
这才对
但是为了确保 Nacos 在系统启动时自动运行,我们需要将其配置为服务。
创建一个名为 nacos.service 的 systemd 服务文件:
1 | sudo nano /etc/systemd/system/nacos.service |
byd这个服务器怎么连 nano 都没有
1 | sudo yum install -y nano |
编辑服务的配置文件
1 | [Unit] |
重新加载 systemd 配置
1 | sudo systemctl daemon-reload |
启用服务配置
1 | sudo systemctl enable nacos.service |
启动服务
1 | sudo systemctl start nacos.service |
检查服务状态
1 | sudo systemctl status nacos.service |
如果需要关闭 Nacos,可以在 bin 目录下执行以下命令:
1 | bash shutdown.sh |
注意,Nacos要放行如下端口才能实现本地服务通信云上Nacos
宝塔面板安装MinIO
由于宝塔面板的MinIO有问题,建议按照一般服务器的情况部署
使用wget或curl下载MinIO服务器二进制文件。以下命令下载最新稳定版并赋予执行权限:
1 | wget https://dl.min.io/server/minio/release/linux-amd64/minio |
创建minio的专用用户
1 | # 创建 minio 用户和组 |
设置文件和目录权限
1 | # 给 minio 二进制文件执行权限 |
创建数据目录
1 | mkdir -p /data/minio/data |
创建服务的配置文件
1 | sudo vim /etc/systemd/system/minio.service |
1 | [Unit] |
重新加载并启动服务
1 | # 重新加载 systemd 配置 |
当然你用宝塔也行
进行设置
正常填写就行
Host就填写 MinIO 服务器的域名或公网 / 内网 IP
地址就行,需包含端口(默认端口是
9000,若未修改可填 http://你的服务器IP:9000 或
https://你的域名:9000)。
配置服务文件
1 | sudo nano /etc/systemd/system/minio.service |
写入配置
1 | [Unit] |
把 Java 项目部署到服务器上运行
我的项目是微服务项目,所以可能会复杂很多很多
注意区分你的部署方式
- Tomcat 部署:需要安装 Tomcat 容器,将 WAR 包部署到容器中
- Spring Boot 部署:内置容器,只需要 JDK 环境,直接运行 JAR 包
Maven
首先要装Maven,Maven没办法通过宝塔安装
通过终端进入存放压缩包的目录
1 | cd /usr/local |
访问 Maven 官方下载页面:maven.apache.org/download.cg…
下载最新版本的二进制压缩包(通常为 .tar.gz 文件)。
执行解压命令:
1 | tar -xvf apache-maven-3.8.1-bin.tar.gz |
系统范围配置,修改全局环境变量文件:
1 | vim /etc/profile |
在文件末尾添加以下内容:
1 | # Maven 环境变量 |
刷新
1 | source /etc/profile |
Maven 虽然没有宝塔,但是安装也是比较简单的
为了提升构建速度及稳定性,推荐配置国内镜像仓库,如阿里云 Maven 仓库,避免下载官方中央仓库时网络缓慢问题。
编辑用户目录下的
settings.xml,路径通常为:~/.m2/settings.xml。若没有此文件,可以在
/usr/local/maven/conf/ 复制一份到 .m2
目录并修改。
添加阿里镜像配置:
1 | <mirrors> |
然后将项目包通过宝塔面板上传到服务器并解压,然后添加项目进入 网站 > Java项目,点击 添加项目
项目路径是选择你 SpringBoot
项目的根目录(通常是包含target文件夹、pom.xml等文件的目录)
项目名称无需手动填写,选择项目文件后会自动获取(通常是项目的
ArtifactId,即pom.xml中<artifactId>的值)。
创建完成后使用你对应的端口和路径访问项目后端的接口
那么涉及到多个服务怎么办?
你可以把上述的每个单独的需要运行的 jar 包打到上面的项目里,然后按顺序运行
或者我是直接写了个脚本
为服务器添加一个域名
准备工作
- 拥有一个已实名认证的主域名(如
yourdomain.com)。 - 明确服务器的公网 IP 地址。
进入你购买域名的平台(如阿里云、腾讯云),找到 “域名解析” 或 “DNS
管理” 入口,选择你的主域名(如 yourdomain.com)。
那么如果你需要解析二级域名,就需要为你的主域名添加二级域名的 A 记录
点击 “添加记录”,填写以下信息:
- 记录类型:选择 A 记录(将域名直接指向服务器 IP)。
- 主机记录:填写二级域名的前缀(如
api或blog,最终二级域名为api.yourdomain.com)。 - 记录值:填写服务器的公网 IP 地址。
- TTL:默认选
600秒(10 分钟,解析生效较快)。 - 示例:若二级域名为
api.yourdomain.com,则主机记录填api,记录值填服务器 IP。
提交后,DNS 解析通常在10 分钟到 2
小时内全球生效。可通过 ping 二级域名(如
ping api.yourdomain.com)验证,若返回服务器 IP
则解析成功。
如何在服务器(宝塔面板)中绑定二级域名
添加站点并绑定二级域名
登录宝塔面板,点击左侧 “网站”→“添加站点”:
- 域名:填写完整的二级域名(如
api.yourdomain.com)。 - 根目录:选择项目的存放路径(如
/www/wwwroot/api-project)。 - 其他选项默认,点击 “提交”。
- 域名:填写完整的二级域名(如
修改 nginx配置文件,下面细说,这里简要看一下
1
2
3
4
5
6
7
8
9
10
11server {
listen 80;
server_name api.yourdomain.com; # 替换为你的二级域名
root /www/wwwroot/api-project; # 替换为项目根目录
index index.php index.html index.htm;
# 按需添加其他配置(如反向代理、静态资源缓存等)
location / {
try_files $uri $uri/ /index.php?$query_string;
}
}
那么如何开启 https
为二级域名申请免费 SSL 证书(宝塔面板支持一键申请 Let’s Encrypt):
- 点击站点的 “SSL”→“申请证书”,选择 “Let’s Encrypt”。
- 填写邮箱并选择域名(自动识别已解析的二级域名),点击 “申请”。
- 申请成功后,强制 HTTPS 访问(开启 “强制 HTTPS” 开关)。
但是问题来了,例如我的服务器的nginx不是从宝塔面板搞的,是自己装的然后配置的nginx和我的网站,那么我如何不使用宝塔面板申请https
Certbot 是 Let’s Encrypt 官方的自动化证书管理工具,支持一键申请和续期。根据服务器系统选择命令:
1 | sudo yum install -y certbot python3-certbot-nginx |
执行以下命令,替换 yourdomain.com
为你的实际域名(支持多个域名,用 -d 追加):
1 | sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com |
呃呃别忘了 Certbot 默认会去 /etc/nginx/nginx.conf
路径查找 Nginx 配置文件,但是如果没有,就需要明确告诉 Certbot 你的 Nginx
配置文件和二进制程序的实际路径
执行后会进入交互流程:
- 输入邮箱(用于证书到期提醒)→ 回车;
- 同意服务条款(输入
Y)→ 回车; - 选择是否共享邮箱(一般输入
N)→ 回车; - 选择是否强制 HTTP 跳转到 HTTPS(推荐输入
2)→ 回车。
如果出现这种情况
国内服务器(如腾讯云、阿里云)要求域名必须备案,未备案的域名会被拦截,无法正常访问(返回拦截页面)。
使用Nginx部署Vue3前端项目
找到项目所在位置进行打包得到dist文件夹
注意:如果是做的前后端分离的项目,前端在进行请求时要把 localhost 改成后端服务的ip地址
然后去宝塔放到进去你的 dist,建议和后端一个根目录
我这个添加过了,不再添加了
下载 nginx 不用说了,宝塔上来就有基本,注意在防火墙开放端口
然后配置 nginx
1 | server { |
因为我这边是引入的配置,所以就不给大家看了
检查在Linux终端下使用指令查看该端口是否的确开放了。
1 | firewall-cmd --zone=public --list-ports |
当然你使用宝塔面板左侧
“网站”→“添加站点”,填写域名(若没有域名可填服务器
IP)、选择站点根目录(即存放dist文件夹的路径,如/www/wwwroot/vue3-project),其他选项默认,点击
“提交”,也可以
别忘了点击新建站点的 “设置”→“配置文件”,将默认配置替换为上面内容
记得重启nginx
好哩
我的证书过期114514年了,就没搞







