一、Docker部署个人博客
官网:https://docs.halo.run/
curl -L https://github.com/halo-dev/halo/releases/download/v1.5.3/halo-1.5.3.jar --output halo.jar
其他地址:https://docs.halo.run/getting-started/downloads
java -jar halo.jar
Docker
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=always halohub/halo:1.5.3
二、申请域名、SSL证书、备案
申请域名
https://wanwang.aliyun.com/
免费的SSL 证书
https://help.aliyun.com/document_detail/205510.html?spm=5176.b657008.help.24.312c799dBmT8yq
ICP 备案
https://help.aliyun.com/document_detail/147846.html
整个周期大概7个工作日左右
公安备案
https://help.aliyun.com/document_detail/36888.html
填写网络接入服务商信息
若您的备案所需服务器是在阿里云购买,办理公安联网备案的域名是通过阿里云在工信部备案,阿里云信息如下。
网络接入服务商名称:阿里云计算有限公司
网络接入商所属区域:浙江省杭州市余杭区
接入方式:租赁虚拟空间
接入服务商电话:95187
接入服务商组织机构代码/接入商编码:673959654
填写域名注册服务商信息
若您办理公安联网备案的域名是通过阿里云注册,阿里云信息如下。 如需下载域名证书,请参见域名证书。
域名注册服务商名称:阿里云计算有限公司(原万网)
域名注册服务商所属区域:浙江省杭州市余杭区
域名注册服务商电话:95187
三、部署nginx 配置SSL
mkdir -p /root/nginx/{logs,ssl,html,conf/conf.d}/
docker run -d --name nginx -p 80:80 nginx
docker cp nginx:/etc/nginx/nginx.conf /root/nginx/conf/nginx.conf
docker cp nginx:/etc/nginx/conf.d/default.conf /root/nginx/conf/conf.d/default.conf
docker cp nginx:/etc/nginx/conf.d/default.conf /root/nginx/conf/conf.d/default.conf
docker rm nginx
文件目录
/root/nginx
.
├── conf
│ ├── conf.d
│ │ ├── default.conf
│ │ └── default.conf.bk
│ └── nginx.conf
├── html
├── logs
│ ├── access.log
│ └── error.log
└── ssl
├── 7791535_blog.lxfsite.com.cn.key
└── 7791535_blog.lxfsite.com.cn.pem
#上传文件 需要修改 文件权限
docker run -d --name nginx -p 443:443 -p 80:80 --privileged=true -v /root/nginx/html:/usr/share/nginx/html:rw -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf/:rw -v /root/nginx/conf/conf.d/:/etc/nginx/conf.d/:rw -v/root/nginx/logs:/var/log/nginx/:rw -v /root/nginx/ssl:/ssl/:rw nginx
修改配置文件
upstream blog-8090{
server 172.17.0.1:8090;
}
server{
listen 80;
server_name blog.lxfsite.com.cn;
rewrite ^(.*) https://blog.lxfsite.com.cn$1 permanent;
}
server {
listen 443 ssl;
server_name blog.lxfsite.com.cn
root html;
index index.html index.htm;
ssl_certificate /root/nginx/ssl/7791535_blog.lxfsite.com.cn.pem;
ssl_certificate_key 7791535_blog.lxfsite.com.cn.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://blog-8090;
}
}
重启容器
docker restart nginx
验证