首先
建立数据库
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 设置
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于