今年过年的时候在网上搜到的这个网站,磕磕绊绊三四个月,中间也断了一阵子,在今天终于把博客搭好了。不同于其他的博客系统,这个既开放又有些限制的设定让我这个选择困难症患者么得可选了。简单总结下搭建过程吧~
- 服务器:某免费服务器(不知道允不允许发服务器商名字) // 如果可以还是买个服务器吧,各大云厂商对于学生都有优惠的(非学生请无视)
- 操作系统:全新 Centos7.6 x64 // 这里注意,如果你使用的是 amd64 架构的,可能不会遇到什么问题,但是如果你使用的是 arm 架构的,请往后看
- 搭建方式:这里
期间可能会遇到的问题,希望对新手朋友有些帮助~
- 全新的系统不预装任何东西对于新手来说可能会有些小麻烦,因为要装一些环境什么的,希望各位量力而行
- 在安装 docker compose 的时候,如果使用的是 python2,可能会遇到报错,建议直接安装 python3 并且使用 pip3 进行安装,具体安装方法请自行搜索
- 在一切都安装好之后,如果你不使用 https 协议的话,一般来说就可以启动运行了。
- 如果使用 https 协议,请认真阅读文档说明,写的很详细但是文字多别跳着看仔细一点。需要注意的是,在按照文档配置完后启动成功,打开博客地址可能会遇到 Latke 配置错误这样的提示,此时你需要根据这里的文档配置 proxy_set_header,这样的话就应该能访问了
- 还有一点,不熟悉 nginx 的小伙伴在配置 ssl 证书的时候,可能会遇到自己的证书后缀是
.crt
而给出的配置文件中后缀是.pem
,此时无需进行格式转换直接用 crt 后缀的证书就可以的,不然可能会出现证书链不完整,在安卓手机中访问博客会提示证书不安全等等信息
就这些了,还是比较简单的,打算接下来去一点一点研究源码,理解理解作者的出发点以及发展方向。如果和我使用一样的搭建方式遇到了问题也可以评论,但是不包括其他的情况哈~
再次补充,我又购买了一个服务器进行搭建(原因是觉得免费的有些小限制,比如需要发帖延期。。。),但是出现了无法启动的问题,使用 arm64 架构的服务器可能会出现此情况,并且 mysql 只有 8 以上版本支持 arm 架构服务器,需要修改下 compose 配置文件将 mysql 版本改成 mysql/mysql-server:latest, 同时为了避免低版本数据文件和高版本不兼容,需要删除 mysql/data 目录下文件并手动创建数据库。无法启动的问题正在请教老大,待续 ~
完结
经过了一天的查阅资料和自己瞎鼓捣,终于把无法启动的问题解决了,记录一下,方便有同样问题的小伙伴们参考~
原因其实很简答,对于 arm64v8 架构的服务器,构建 solo 所需的 mvn 版本需要使用 arm64v8 对应的版本,在 docker hub 上可以轻松的找到,关键字 arm64v8/maven
.建议大家把所有镜像全部换成 arm64v8 版本的,这样兼容性上应该是最好的.
最后说一下操作步骤吧~
- 安装 docker 及 docker compose
- clone 最新 solo 源码
- 修改 Dockerfile 文件中的第一行为
FROM arm64v8/maven:3-jdk-8-alpine as MVN_BUILD
- 进行构建
- 启动刚刚构建好的镜像就 ok 了
希望大家都能有折腾精神,遇到报错不要慌,互联网这么大,总会有解决办法的,加油~
至于其他架构的服务器怎么办,聪明的你应该能想到解决办法了 😏
还要再补充一下 😂 其实不改 dockerfile 文件也行,因为 docker 会根据你的 cpu 架构自动下载对应的版本,花了两天一宿的时间才研究明白这一点。对于 amd64 之外的 cpu,只需要 clone 源码然后无脑 build 就 ok 了,我上面说的基本都是废话了,不想折腾的只能换 amd64 的服务器或者等 D 大什么时候出其他版本的镜像了,另外,如果可以的话,还是去研究下源码,无脑问问题也不是个办法。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于