该存储库包含OpenFAAS网页和博客-https://www.openfaas.com,使用Jekyll和CloudCannon Frisco Template的修改后叉创建,并使用GitHub页面构建/托管。
以下各节为将对网站进行的一些常见更改提供了基本指南,并添加了帖子,作者等。
所有博客文章都必须具有标题和描述,这有助于SEO。作者的名字可以在描述中提及。
格式:
简短的介绍/概述(150个单词)
一系列逻辑步骤或点 /主题
嵌入概念图,视频或图片以帮助制作情况。
指向DOC/GITHUB或其他内容。
如有必要,向其他合作或提供您使用的反馈的人表示感谢。在GitHub上工作时,这在公共历史上可用,因此请谨慎使用。
使用步骤时,请使用主动/命令性语音进行标题。
好的:
坏的:
英语的说话广泛,但不是所有读者的母语。该出版物还涵盖了许多技术主题,您可能是专家,但是您的读者不太可能成为专家,因此在撰写文章时都要考虑这两个。
始终以简单的英语写入,当存在一个简单的单词时,请避免从拉丁语中得出的单词,避免使用活跃动词可以替换它的gerunds。
如果您正在写一篇文章,那么您的声音应该会遇到和经验。这就是为什么您正在撰写帖子 - 尝试避免使用被动时态或语句,您可以在其中使用以I开头的句子。
前:
后:
使用简短的句子:
前:
后:
有关其他建议,请参见:
这篇文章,肯塔基大学拉斐尔·芬克尔(Raphael A. Finkel)。
and [and]
虽然使用“繁荣!”,“有趣和利润”之类的有趣术语,并在文本中开玩笑,但可以在个人博客上运作良好。 OpenFAAS博客和文档应最少使用这种“乐趣”或“可爱”术语。
意见应作为您自己的观点提出。如果您有数据备份您的职位,这将有助于您的观点可信。 I found it easier to ..您没有数据,请确保读者通过与您自己有关I believe that ..
如果您说明事实 /客观数据,则还应使用引号,链接等来备份此内容。
当心版权法。如果您使用图表或嵌入某个地方的报价,请确保给它适当的归因。
将所有图像放在子文件中./images/<post-name>中
每个帖子都应从免费股票摄影中挑选的背景照片或提供创意共享许可证。请勿在不检查使用 /许可证是否有效的情况下从Google中拉出图像。将背景裁剪为1600像素的宽度。出口时使用JPEG并将其瞄准200KB-280KB(增加压缩)
您可以通过将JPEG的“质量”从100%限制到较低的70-75%来进一步降低大小。
pexels
Unplash
内部图像和屏幕截图
每个博客文章应至少具有一个概念图。这应该显示功能,新闻或设计的逻辑流或抽象视图。嵌入式推文或视频也可以实现此目的。
图像对于每个帖子都很重要,但请尽可能合理和可能地压缩 /裁剪图像。这将有助于减轻GitHub回购可以增长的巨大尺寸,其中充满图像。
交叉填充内容会对SEO分数产生负面影响,因此,除非提出额外的注意和关注以包括所需的“ OG”标头,否则不应完成。确保OpenFAAS社区博客上的所有内容都是原始的。
提供了一个Docker组成的文件来简化网站和博客的开发/贡献,已验证可以在OSX和Windows 10上使用(在Windows上开发/写作时,请在编辑器中使用Unix Line Endings)。
在本地运行以下网站:
docker compose up
这将使网站在-http:// localhost:4000。
Starting openfaas-www_openfaas-jekyll_1 ... done
Attaching to openfaas-www_openfaas-jekyll_1
openfaas-jekyll_1 | ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux-musl]
openfaas-jekyll_1 | Configuration file: /srv/jekyll/_config.yml
openfaas-jekyll_1 | Source: /srv/jekyll
openfaas-jekyll_1 | Destination: /srv/jekyll/_site
openfaas-jekyll_1 | Incremental build: disabled. Enable with --incremental
openfaas-jekyll_1 | Generating...
openfaas-jekyll_1 | Remote Theme: Using theme cloudcannon/frisco-jekyll-template
openfaas-jekyll_1 | done in 3.074 seconds.
openfaas-jekyll_1 | Auto-regeneration: enabled for '/srv/jekyll'
openfaas-jekyll_1 | Server address: http://0.0.0.0:4000
openfaas-jekyll_1 | Server running... press ctrl-c to stop.
编辑器中对网站进行的任何更改都将在容器内部拾取,并将重新生成该站点(请注意,这不包括对_config.yml的更改,您必须重新启动Docker容器以拾取这些更改)。
例如,如果您在_posts/2018-07-31-my-post.md中添加自己的帖子,您会看到Jekyll检测到更改并重新生成该站点,刷新浏览器会添加任何更改。
openfaas-jekyll_1 | Regenerating: 1 file(s) changed at 2018-07-31 21:28:36
openfaas-jekyll_1 | _posts/2018-08-22-my-post.md
openfaas-jekyll_1 | Remote Theme: Using theme cloudcannon/frisco-jekyll-template
openfaas-jekyll_1 | ...done in 2.0199265 seconds.
_data/users.ymlimages/users-logos/登录页面上的“贡献者”部分正在使用generate-stats.js文件中的一个小node脚本生成。建议您在打开PR之前运行此脚本。这将确保贡献者部分是最新的:
node generate-stats.js
注意:需要在系统上安装node.js。
为了使博客文章正确地归因于作者,必须通过在_staff_members目录中创建<author_name>.md文件来将它们添加到团队中。
团队成员在团队页面上的显示基于数据/成员中的位置。
博客文章中的归因基于文件名。
例如, _staff_members/alex.md可以通过设置以下元数据的帖子来使用:
author_staff_member: alex
这导致每个分配的帖子都显示一个作者框:

作者定义采用以下格式:
---
name: Alex Ellis
position: Founder
image_path: /images/author/ellis.jpg
twitter_username: alexellisuk
blurb: Founder of <a href="https://twitter.com/openfaas">@openfaas</a>. Open Source <a href="https://twitter.com/vmware">@vmware</a>.
---
| 钥匙 | 细节 |
|---|---|
| 姓名 | 作者的全名 |
| 位置 | 他们与项目关系的免费文本描述 |
| image_path | 通往作者肖像的路径,这应该是154px * 154px图像 |
| Twitter_username | 作者Twitter句柄(没有@ ) |
| blurb | 有关用户的免费文本信息,这应该很短 |
###贡献帖子
贡献帖子与筹集包含您的帖子的PR以及任何嵌入式图像一样直接。
您的邮标应在_posts目录中创建,文件应采用以下结构。
yyyy-mm-dd-short-description-of-post.md
如果您有疑问,请查看现有的帖子,以了解可接受的想法。
该帖子由两个部分组成,一个YAML的前物质标头,该标题描述了帖子,并为Jekyll提供了渲染/归因等的提示,以及仅是标准降价的邮局。
元数据以下表格:
---
title: Introducing the OpenFaaS Operator for Serverless on Kubernetes
date: 2018-07-14
image: /images/kubernetes-operator-crd/pexels-asphalt-blue-sky-clouds-490411.jpg
categories:
- kubernetes
author_staff_member: alex
canonical_url: https://blog.alexellis.io/introducing-the-openfaas-operator/
---
| 钥匙 | 细节 |
|---|---|
| 标题 | 博客文章的标题 |
| 日期 | 以yyyy-mm-dd格式发布博客文章的日期 |
| 图像 | 将显示标题后面显示的图像的路径,应将其添加到一个目录中,名称与images目录下的博客文章相同。 |
| 类别 | 帖子属于的类别的可选列表,您应始终从可行的帖子中重复使用现有类别 |
| fure_staff_member | _staff_members目录中的作者文件的名称,用于归因(请参见上一节) |
| canonical_url | 如果博客文章已经在另一个URL上发布,则必须设置此字段。优先考虑原始内容。 |
尽管Jekyll支持多种格式,但您应该以降级格式提交帖子。
以下指南描述了语法:
当您想学习如何格式化帖子时,将现有帖子与基础降价文件进行比较也非常有用。
添加图像使用普通的标记格式,尽管可以在PR中包含任何图像,但除了外部图像,这些图像应该以与images目录下的帖子相同的名称中的目录,例如images/kubernetes-operator-crd/ 。
请注意,要注意仅包括合理的图像尺寸,您应该确保在将图像添加到PR之前进行调整/处理任何图像。
该网站使用SASS样式表语言,对网站的任何更改都必须使用SASS进行,不会贡献RAW .css文件。
我们还使用Bulma作为CSS框架。在进行任何样式更改 /添加之前,请考虑:
该网站的Navbar和页脚在以下文件中通过YAML配置:
_data/footer.yml_data/navigation.yml添加条目应该是最后的手段,因为它们不得变得混乱。
有关如何构建网站的更详细了解,请参考Jekyll和Github页面文档:
该网站还使用以下插件:
有关如何使用和配置每个插件的详细信息,请参阅上面的文档。
rm -rf outg/ * ; ffmpeg -i videoplayback.mp4 -vf " select='not(mod(n,2000))',setpts='N/(30*TB)' " -f image2 -y outg/out%03d.jpg
ffmpeg -f image2 -framerate 1 -i outg/out%003d.jpg -vf " scale=width=-2:height=ih/2 " out.gif