博客搭起来了,纪念一下哈哈哈

本贴最后更新于 1660 天前,其中的信息可能已经时移俗易

今年过年的时候在网上搜到的这个网站,磕磕绊绊三四个月,中间也断了一阵子,在今天终于把博客搭好了。不同于其他的博客系统,这个既开放又有些限制的设定让我这个选择困难症患者么得可选了。简单总结下搭建过程吧~

  • 服务器:某免费服务器(不知道允不允许发服务器商名字) // 如果可以还是买个服务器吧,各大云厂商对于学生都有优惠的(非学生请无视)
  • 操作系统:全新 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 大什么时候出其他版本的镜像了,另外,如果可以的话,还是去研究下源码,无脑问问题也不是个办法。

3 操作
liunian-zy 在 2020-06-09 19:52:22 更新了该帖
liunian-zy 在 2020-06-08 21:08:40 更新了该帖
liunian-zy 在 2020-06-08 12:42:56 更新了该帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
liunian-zy
做一个好人,做好一个人。写一份好代码,写好一份代码。 沈阳

推荐标签 标签

  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    126 引用 • 169 回帖
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 316 关注
  • FFmpeg

    FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

    23 引用 • 32 回帖 • 2 关注
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    110 引用 • 54 回帖 • 4 关注
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 3 关注
  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 589 关注
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 747 关注
  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    15 引用 • 7 回帖
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 366 关注
  • App

    App(应用程序,Application 的缩写)一般指手机软件。

    91 引用 • 384 回帖 • 1 关注
  • 安全

    安全永远都不是一个小问题。

    200 引用 • 816 回帖 • 1 关注
  • 音乐

    你听到信仰的声音了么?

    61 引用 • 511 回帖
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    728 引用 • 1275 回帖
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 538 关注
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    210 引用 • 2036 回帖
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 162 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 75 关注
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    167 引用 • 1520 回帖
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    8 引用 • 30 回帖 • 410 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 614 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    8484 引用 • 38639 回帖 • 153 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    136 引用 • 193 回帖
  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 624 关注
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 638 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 6 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1348 回帖
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖