1、安装Docker,搭建Mysql
很简单,自行安装
2、获取solo最新镜像
docker pull b3log/solo
3、配置Mysql
连接mysql,手动建库(库名 solo
,字符集使用 utf8mb4
,排序规则 utf8mb4_general_ci
):
create database solo default character set utf8mb4 collate utf8mb4_general_ci;
create user 'root'@'127.0.0.1' identified by '123456';
grant all privileges on *.* to 'root'@'127.0.0.1';
flush privileges;
4、启动容器
docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="123456" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true" \
b3log/solo --listen_port=8080 --server_scheme=https --server_host=lbzhi.club --server_port= --static_server_scheme=https --static_server_host=cdn.jsdelivr.net --static_server_port= --static_path=/gh/88250/solo/src/main/resources
启动参数说明:
--listen_port
:进程监听端口--server_scheme
:访问协议,如果反代服务未启用 HTTPS 这里需要改为http
--server_host
:访问域名或公网 IP,不要带端口--server_port
:访问端口,若使用浏览器默认的 80 / 443 的话,值留空即可
--static_server_scheme=https
--static_server_host=cdn.jsdelivr.net
--static_server_port=
--static_path=/gh/88250/solo/src/main/resources
注意:😳
以上4行为Solo的参数配置,目的是使用jsDelivr CDN来加速访问,如果不需要可以不加
5、查看日志
docker logs solo
6、配置Nginx反代
upstream backend {
server localhost:8080; # Solo 监听端口
}
server {
listen 443;
server_name lbzhi.club; # 博客域名
add_header Strict-Transport-Security "max-age=63072000;";
ssl_certificate /usr/local/nginx/cert/blog/lbzhi.club.pem;
ssl_certificate_key /usr/local/nginx/cert/blog/lbzhi.club.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
ssl_prefer_server_ciphers on;access_log off;
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;
}
access_log off;
}
7、完成,快欣赏下自己的博客吧!