關於 #Docker 的內容

蒼時弦也蒼時弦也

Rails 部署實踐 - 多階段建置

經過兩週的努力,我們已經可以製作出能夠運行 Ruby on Rails 的環境,然而這個狀態的環境依舊同時混合了「編譯」跟「運行」兩種狀態的套件,在過去我們需要透過 RUN 合併命令來清理,然而在新版的 Docker 提供了「多階段建置(Multi-Stage Build)」的選項,因此我們可以直接切割開來處理。

蒼時弦也蒼時弦也

Rails 部署實踐 - 滾動更新

完成網站部署後,我們還需要持續的更新網站。然而如果只有一個節點的話,網站是會有一瞬間服務暫停的狀況,為了避免這樣的問題可以採取滾動更新(Rolling Upgrade)的方式處理。

過去我們需要仰賴人工切換,然而到了虛擬機、容器的階段就能夠透過預先安裝好環境來做到半自動、自動的處理。

蒼時弦也蒼時弦也

Rails 部署實踐 - 以容器部署 Rails 的方案

過去幾年,使用容器技術(Container)來部署 Ruby on Rails 專案已經變成我個人最喜歡的方式之一。除了生態系完整之外,也有著容易安裝、部署環境,並且可以很好的維持部署環境乾淨的優點存在。

基於這樣的理由,在 Rails 部署實踐這一系列,我們會由 Rails 的容器部署方案最為起點開始討論可以使用的部署方案。

蒼時弦也蒼時弦也

Ruby on Rails 容器化最佳指南(二)

Ruby on Rails 容器化最佳指南(一)我們已經大致說明了製作容器的目的、用途,這篇文章會跟大家介紹如何去撰寫 Production-ready(正式環境)可用的容器鏡像。

如果不想花太多時間在了解細節的技巧上,可以參考如何在幾分鐘內容器化 Rails 專案這篇文章,裡面有有針對容器化所製作的 Ruby Gem 可以快速解決這方面的問題。