Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着很是活跃的社区,可将文章做为帖子推送到社区,来自社区的回帖将做为博客评论进行联动html
总的来讲,这款博客框架还不错,社区也在不断的完善。最重要的是使用Java写的。像流行的Hexo、Hugo等博客框架都是静态博客,没有后台啥的,主要发表的文章是Markdown转HTML格式的形式发表的,但solo是有后台管理的,与Jpress有些类似。java
docker pull b3log/solo
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;
root
用户密码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=6000 --server_scheme=http --server_host=localhost --server_port=
JDBC_PASSWORD
也是指云服务器上mysql的root
用户密码--listen_port
,我这边设置监听的端口号是6000
,官方给的是8080
端口,由于我这边服务器上的8080
端口已经被Tomcat占用了,因此放行 6000
端口的防火墙,也能够自定义其余端口号(在不冲突的状况下,也就是肯定没有其余进程在使用),开启防火墙端口号的命令以下:firewall-cmd --zone=public --add-port=6000/tcp --permanent firewall-cmd --reload firewall-cmd --zone=public --list-ports
6000
端口docker ps -a
docker logs solo
log4j2
将日志打印到标准输出流,能够经过 docker logs solo
进行查看。若是须要覆盖 log4j
配置,可经过挂载文件实现:--volume ~/log4j2.xml:/opt/solo/log4j2.xml
skins
,目录结构请参考原版 skins
:--volume ~/skins/:/opt/solo/skins/
nginx.conf
文件添加以下:upstream backend { server localhost:6000; # Solo 监听端口 } server { listen 80; server_name solo.xdr630.com; # 博客域名 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; } }
6000
端口号就是上面solo进程所须要的的端口号nginx -s reload
接着访问登陆后台就可使用了:http://solo.xdr630.com/
mysql
能够看到,主题仍是比较多的,也能够在设置移动端的皮肤,或添加看板娘之类的。
nginx
有关更细致的对solo博客的了解请访问官网。程序员