On This Page
Ruby 是一种动态、面向对象的编程语言,由日本程序员松本行弘(Yukihiro Matsumoto)开发。它的设计目标是提供一种简洁、可读性高的编程语言,旨在提高开发者的生产力和乐趣。
Ruby 具有以下特点:
在 Ruby 中,”bundle” 是指 Bundler,它是 Ruby 的一个依赖管理工具。Bundler 用于管理项目中所需的 Ruby gem(库)的版本和依赖关系。 当你在一个 Ruby 项目中使用多个 gem 时,每个 gem 都可能有不同的版本要求和依赖关系。Bundler 的作用就是帮助你管理这些依赖关系,确保项目能够正确地加载和使用所需的 gem。
Bundler 通过一个名为 “Gemfile” 的配置文件来指定项目的依赖关系。在 Gemfile 中,你可以列出项目所需的 gem,并指定它们的版本要求。例如:
source 'https://rubygems.org'
gem 'rails', '~> 6.0.0'
gem 'nokogiri', '1.12.5'
gem 'dotenv-rails'
gem install bundle
:安装bundle管理工具sudo apt-get install ruby-dev
: 安装开发工具sudo apt-get install build-essential
: 安装构建工具gem install racc
: 安装racc当你运行项目时,Bundler 会根据 Gemfile 中的配置检查 gem 的版本和依赖关系,并确保所需的 gem 被正确加载。它会自动解析和安装 gem 的依赖关系,并创建一个名为 “Gemfile.lock” 的锁定文件,记录实际使用的 gem 版本。这样可以确保在不同的环境中使用相同的 gem 版本,避免因为版本不一致而导致的问题。 你可以使用 Bundler 的命令行工具来安装 gem、更新 gem、解决依赖关系等操作。常用的命令包括:
bundle install
:根据 Gemfile 安装项目的依赖关系。PS:该命令会尝试更新已经存在的依赖包bundle update
:更新项目的依赖关系到符合 Gemfile 中指定的版本要求。并同时更新项目Gemfile.lock文件bundle update [gemname]
: 跟新指定的包文件,并更新gemfile.lockbundle exec
:在项目的上下文中执行命令,确保使用项目所需的gem。bundle lock
: 锁定当前环境,这样便不能通过bundle update
来更新依赖包的版本,保证了统一的环境。bundle unlock
: 解锁环境通过使用 Bundler,你可以方便地管理 Ruby 项目的依赖关系,确保项目能够正确地加载和使用所需的 gem,提高开发效率和项目的可维护性。
Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过一个转换器(如 Markdown)和我们的 Liquid 渲染器转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。Jekyll 也可以运行在 GitHub Page 上,也就是说,你可以使用 GitHub 的服务来搭建你的项目页面、博客或者网站,而且是完全免费的。
常用命令:一般用不到jekyll的命令 使用1.4中相关命令
jekyll instll
: 构建当前目录默认输出到当前目录的_site下,详细参数可以参考官方文档jekyll install --destination /root/_site
: 根据项目下的Gemfile将项目构建并输出到指定目录jekyll s
: 启动一个本地服务器,一般用下面这个命令bundle exec jekyll s
: 启动一个本地开发服务器,而且能够监听md的修改,更多参数参考官方文档jekyll是依赖ruby环境的,在编译(将md转换成html)或者本地开发的时候会用到。
以Linux举例:
sudo apt-get install ruby-full build-essential zlib1g-dev
gem install jekyll bundler
这个命令如果卡住了或者time out错误,需要切换gem源试试,gem源在国外可以切换为国内源
# 查看源
gem sources
# 添加国内源
gem sources --add https://gems.ruby-china.com/
# 删除国外的官方源
gem sources --remove https://rubygems.org/
jekyll new myblog
:创建一个名为myblog
的模板项目cd myblog
:指定到项目下bundle exec jekyll serve
:运行本地环境cd /xxxxx
:指向到你的项目根目录下bundle install
:安装项目依赖的gem包bundle exec jekyll serve
:启动本地环境以上步骤执行完,通过127.0.0.1:4000
能够正常访问,说明你的编译运行环境都ok了。编译环境则看下面
cd /xxxx
:cd到项目主目录下(带Gemfile那一层)bundle install
:安装环境的相关gem包依赖bundle exec jekyll build
: 执行jekyll的编译,默认编译好的文件会输出在当前目录下的_site目录bundle exec jekyll build --destination /root/_site
:或者编译到指定的目录下然后通过nginx直接代理到_site
目录下或者把目录下的所有文件放到容器中则可以正常访问了,推荐使用nginx比较简单
将代码提交到gitHub仓库便可以实现服务托管.
GitHub Pages 是 GitHub 提供的一项静态网站托管服务,它允许您将静态网页文件托管在 GitHub 上,并通过您的 GitHub 用户名或组织名访问这些网页。您可以使用 GitHub Pages 来托管个人博客、项目文档、演示页面等。但是免费账户不能托管私有库
以下是使用 GitHub Pages 的一般步骤:
gh-pages
的分支。这是 GitHub Pages 默认使用的分支。gh-pages
分支。gh-pages
分支作为源。您可以通过以下步骤访问您的 GitHub Pages 网站:
请注意,GitHub Pages 网站的 URL 通常遵循以下格式:https://<username>.github.io/<repository>
,其中 <username>
是您的 GitHub 用户名,<repository>
是您的仓库名称。
在您的 GitHub Pages 网站上,您可以使用自定义域名、选择主题、配置 HTTPS 等。有关更多详细信息和配置选项,请参阅 GitHub Pages 的官方文档。
在自己有服务器的情况下,使用这种方式最快速且访问速度跟你服务器挂钩,不受托管的平台限制.能跟达到跟托管一样的效果,修改之后只需要push到代码仓库便可以全自动部署.
一般步骤:
参考文章:jenkins快速入门