准备工作
服务器(这里使用阿里云,操作系统为 Alibaba Cloud Linux 3)
域名(可选,需配置好域名解析)
SSL证书(免费的就可以,搭配域名使用)
远程连接进入云服务器
利用阿里云控制台自带的远程链接。
使用远程工具。
安装Docker
安装相关依赖。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加阿里的镜像源。
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新缓存。
sudo yum makecache
安装 Docker。
sudo yum install -y docker-ce
如果冲突则使用(出现提示:尝试在命令行中添加 '
--allowerasing
' 来替换冲突的软件包 或 '--skip-broken
' 来跳过无法安装的软件包 或 '--nobest
' 来不只使用软件包的最佳候选)sudo yum install -y docker-ce --allowerasing
启动 Docker 服务。
sudo systemctl start docker
设置开启自动启动 Docker 服务。
sudo systemctl enable docker
测试是否安装成功,如果安装成功则会显示版本信息。
docker -v
安装1Panel面板
运行以下命令。
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh-o quick_start.sh && sh quick_start.sh
设置安装位置。
设置端口、用户名、密码。
安装成功后,控制台会打印面板访问信息,通过浏览器输入地址访问 1Panel。
如果第一步先安装1Panel面板,则有可能会提示 "
ERROR: Unsupported distribution 'xxx'
"。这是由于 Docker 的在线安装脚本不支持该操作系统导致的,目前最好的解决方案就是先手动在服务器上安装并启动 Docker,然后再安装 1Panel。
在云服务器工作台的安全组设置开放1Panel的活动端口。
云服务器工作台切换至安全组→点击操作标签下的管理规则→点击手动添加→输入1Panel的端口号后点击保存。
搭建Halo博客系统
配置镜像加速
设置好安全组规则后,打开浏览器输入外网地址访问1Panel面板。
进入容器的配置选项卡,点击镜像加速右侧的设置,配置下面的镜像加速链接。
https://hub-mirror.c.163.com https://docker.m.daocloud.io https://ghcr.io https://mirror.baidubce.com https://docker.nju.edu.cn
点击确认后,会提示自动重启。
安装OpenResty
进入应用商店安装OpenResty,按默认的设置安装即可。
安装PostgreSQL数据库
进入应用商店安装PostgreSQL,设置用户名和密码或者保持默认设置,如果仅作为Halo使用的话,端口外部访问保持关闭即可。
安装Halo
进入应用商店安装Halo。
设置数据库名、用户和用户密码或者保持默认设置;
外部访问地址设置为Halo的最终访问地址,如果有为 Halo 规划域名,需要配置为域名格式,例如
http://test.example.com
。否则配置为http://服务器IP:端口号
,例如http://192.168.15.137:1234
;端口:Halo 应用的服务端口,用默认的8080端口即可,这里我改成了1234;
端口外部访问:勾选。
在云服务器工作台的安全组设置开放Halo活动端口。
云服务器工作台切换至安全组→点击操作标签下的管理规则→点击手动添加→输入Halo的端口号后点击保存。
在浏览器输入
IP地址:端口号
(如192.168.15.137:1234
),在首次访问网站的时候会自动跳转到初始化页面。初始化完成之后,将会跳转到登录页面,输入刚才设置的用户名和密码即可进入后台。以后在浏览器地址后面加上/console
(如192.168.15.137:1234/console
)即可进入 Halo 管理端。
配置域名访问
回到1Panel面板设置,进入网站,点击创建网站。
选择反向代理,然后输入主域名和代理地址,代理地址为
127.0.0.1:端口号
,若在安装Halo时没有修改端口号,则使用默认地址127.0.0.1:8080
。
配置HTTPS
进入证书,点击上传证书,粘贴密钥和证书。
回到网站,点击操作标签下的配置进入网站设置,打开启用HTTPS,可设置为HTTP自动跳转HTTPS,HTTP直接访问或者禁止HTTP;SSL选项则选择已有证书。
更改SSH端口
回到1Panel面板设置,进入SSH管理,点击端口右侧的设置,修改为其它的端口。
在云服务器工作台的安全组设置开放修改后的SSH端口。
云服务器工作台切换至安全组→点击操作标签下的管理规则→点击手动添加→输入修改后的SSH端口后点击保存。
在云服务器工作台的安全组设置关闭默认的22端口
第2步结束后,找到默认的22端口设置,点击修改,将授权策略改为阻止,然后点击保存。
结语
经过上面的一系列设置,个人博客站点就搭建完成了。
这里再做几点说明:
Alibaba Cloud Linux 3是基于Anolis OS的商业版,与CentOS软件生态兼容,其它Linux发行版的安装可参考官方文档。
1Panel官网:https://1panel.cn/
1Panel官方文档:https://1panel.cn/docs/
Halo官网:https://www.halo.run/
Halo官方文档:https://docs.halo.run/
更改SSH默认的端口可以降低服务器被一些SB暴力破解的次数。
评论区