首先
建立数据库
CREATE DATABASE IF NOT EXISTS solo DEFAULT CHARSET utf8mb4 COLLATE utf8_general_ci;
安装 docker
wget -qO- https://get.docker.com/ | sh
菜鸟教程
拉取镜像
docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="???" \
--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" \
b3log/solo --listen_port=8080 --server_scheme=https --server_host=zdone.top --server_port=
certbot clone 下来
./certbot-auto certonly --standalone --email 邮箱 -d 域名
然后安装 nginx
编写 nginx 配置文件 nginx.conf
upstream backend {
server localhost:8080;
}
server {
listen 80;
server_name zdone.top www.zdone.top;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
server_name zdone.top www.zdone.top;
if ($host ~* www.zdone.top) {
rewrite ^/(.*)$ https://zdone.top/$1 permanent;
}
access_log off;
ssl_certificate /root/2389470_www.zdone.top_nginx/2389470_www.zdone.top.pem;
ssl_certificate_key /root/2389470_www.zdone.top_nginx/2389470_www.zdone.top.key;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_session_timeout 10m;
location / {
proxy_pass http://backend$request_uri;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header http_x_forwarded_for $remote_addr;
client_max_body_size 30m;
}
}
这里将 www.zdone.top 转向了 zdone.top -.- 控制访问的域名
之后开启 nginx 就好了
我遇到的:
latke 配置错误:重新弄了一遍 docker 将 ip 都改成域名(已备案)就好了
nginx nginx.pid failed 错误:nginx -c /etc/nginx/nginx.conf
通过 crontab 自动更新 solo
域名可以通过供应商的免费 ssl 设置
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于