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

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

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

  • 服务器:某免费服务器(不知道允不允许发服务器商名字) // 如果可以还是买个服务器吧,各大云厂商对于学生都有优惠的(非学生请无视)
  • 操作系统:全新 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
做一个好人,做好一个人。写一份好代码,写好一份代码。 沈阳

推荐标签 标签

  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    239 引用 • 224 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 1 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    79 引用 • 431 回帖 • 1 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 437 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    7 引用 • 27 回帖
  • C++

    C++ 是在 C 语言的基础上开发的一种通用编程语言,应用广泛。C++ 支持多种编程范式,面向对象编程、泛型编程和过程化编程。

    107 引用 • 153 回帖 • 1 关注
  • CAP

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

    12 引用 • 5 回帖 • 632 关注
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    199 引用 • 542 回帖
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    315 引用 • 547 回帖 • 1 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 165 关注
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    411 引用 • 3588 回帖
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    180 引用 • 408 回帖 • 486 关注
  • CongSec

    本标签主要用于分享网络空间安全专业的学习笔记

    1 引用 • 1 回帖 • 31 关注
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 29 关注
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    173 引用 • 414 回帖 • 366 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖
  • 印象笔记
    3 引用 • 16 回帖 • 2 关注
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 292 关注
  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    948 引用 • 1460 回帖
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 633 关注
  • OneDrive
    2 引用
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1441 引用 • 10069 回帖 • 495 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1063 引用 • 3455 回帖 • 162 关注
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 249 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 679 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    20 引用 • 7 回帖 • 3 关注