首先请先安装好 docker 和 nginx,教程后面补上。
拉取镜像
这一步不是必需的,因为 docker run 的时候如果镜像不存在,会自动拉取镜像。
docker pull b3log/solo
docker pull mysql:5.7
运行 mysql
注意修改 root 密码。如果要修改访问端口,可以修改前面的,我这里设置成了 3308。mysql 的数据卷绑定到了主机的~/volume/mysql 目录。
docker run -p 3308:3306 -v ~/volume/mysql/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
创建数据库
库名 solo,字符集 utf8mb4,排序规则 utf8mb4_general_ci。
这一步我是在 Navicat 上操作的,sql 后面补上。
运行 solo
我安装过程中,复制命令导致--写成了—,导致安装后访问不了,这里要注意下。
docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="root" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://127.0.0.1:3308/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \
b3log/solo --listen_port=8080 --server_scheme=http --server_host=blog.bughub.top --server_port=8080
配置 nginx
# 指定应用访问地址
upstream blog_pool {
server localhost:8080;
}
server {
listen 80; # 监听端口
server_name blog.bughub.top; # 监听域名
access_log off;
# 将所有请求转发给blog_pool池的应用处理
location / {
proxy_pass http://blog_pool$request_uri;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
client_max_body_size 10m;
}
}
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于