升級成 Ubuntu 20 後網站開不了?!撞牆筆記全記錄
AWS EC2 的主機從原本的 Ubuntu 18 升級到 20,但卻遇到無法成功部署的問題。如果你也有相同困擾,不妨參考我的作法試試看吧!
起因
某天晚上,在 Teams 上收到主管的訊息說:我好像不小心玩壞測試機了⋯⋯
隔天仔細一問,原來是因為主管在檢查各個專案的 EC2 主機是否有資安疑慮。
然後在主機上要下指令更新套件時,不小心去更新到主機系統,導致主機從原先的 Ubuntu 18 更新到 20 了!
但我們也都很納悶為什麼這樣升級完之後,Rails 程式無法順利被啟動,只好開始研究怎麼救活它了。
過程
起初,我們發現原因似乎是主機上的 Puma server 沒有順利運作啟用。
因此我們嘗試透過 Capistrano 重新部署程式,想看能不能藉此重新啟用它。
但經過幾次嘗試都失敗,只好再想看看其他解法。
接著主管想到,如果複製其他台主機來作為新的主機環境來讓我們能重新部署程式,應該可以吧?
我們測試環境的主機配置為:
一台主機 (A) 處理網頁連線
兩台主機 (B、C) 處理 Sidekiq 排程
由於被玩壞掉的是 A 主機,所以主管幫忙複製 B 主機產生出 D 主機。 ...
部署平台新寵兒!教你快速上手 Fly.io !
這篇文章主要記錄部署平台改用 Fly.io 的歷程,會簡單介紹整個部署流程以及曾遇過的問題。
前言
還記得當時在 ASTRO Camp 時,總習慣用 Heroku 作為我的部署平台首選,沒有別的原因——就是因為免費!
不過由於平台官方考量[1],從 2022/10/26 起,Heroku 將開始刪除不活躍的帳號,直到 2022/11/28 將完全停止提供免費方案。
於是大家便開始苦尋下一個替代方案,而其中一個選擇就是這篇要介紹的 Fly.io 啦!
【網站名稱】Fly.io
【網站連結】https://fly.io/
註冊
Fly.io 支援第三方登入功能,所以可以直接透過 Google 或是 GitHub 帳號來註冊。
因為步驟蠻簡單的,所以這部分就先略過囉!
還是有疑問的話,可以在下方留言,如果我幫得上忙的話會盡力回覆的!
註冊完的重點是綁定信用卡!
Fly.io 有提供免費試用,但須先完成信用卡綁定,並且使用預設的 Personal 組織,不要另外自行建立新組織。
計畫選擇 Hobby,完成後,系統就會自動提供 5 美元的額度到 Personal 組織底下讓你使用,而這個額度 ...
Yarn 指令建置失敗!
最近在練習做 Side project 的時候,發現每次將 commit 推上去到 GitHub 後,CI 都會一直出現 yarn build:css 的錯誤,花了很久的時間才總算裡出一些頭緒…
趁著記憶猶新,趕快筆記下來吧!
情境
每次 GitHub Actions 執行到一半時,都會跳出以下的錯誤訊息:
1234567891011121314yarn install v1.22.21[1/4] Resolving packages...success Already up-to-date.Done in 0.10s.yarn run v1.22.21error Command "build:css" not found.info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.rake aborted!cssbundling-rails: Command build failed, ensure `yarn build:css` runs withou ...
與 AI 對話! LLM 應用開發工作坊心得分享!
自從 ChatGPT 爆紅後,人們開始更加關注 AI 接下來的發展與應用,甚至 2023 年更被譽為「生成式 AI 元年」。各領域也不斷地尋找 AI 適用的應用情境,思考著能如何用來提升工作效率及增加利潤。然而,身為工程師的我們當面對這樣的新技術誕生時,更不該因為害怕被新技術取代而拒絕去認識它;反之,我們更該嘗試認識它,看能藉由何種方式來幫助提升自我的價值。
課程資訊
大語言模型 LLM 應用開發工作坊
【講師】張文鈿(ihower)
【時間】2023/10/15 (日) 10:00 ~ 17:00
【地點】五倍紅寶石
【簡介】請點我
麻瓜的有勇無謀
在開始上課前,我想我對於 AI 的認識就和普羅大眾差不多吧!
透過 ChatGPT[1] 、 Google Bard[2] 等工具協助我們寫文章、找答案,幾乎都快成了 24 小時 On Call 、不須下班的私人家教;在 DALL·E2[3] 、 Midjourney[4] 的畫布上用提示詞揮灑出屬於我們的創作,誤以為自己是 21 世紀的畢卡索再世。一晃眼間,許多的 AI 應用網站推陳出新,便已令眾人愛不釋手、陶醉其中。
而比較深入 ...
新卡上路!富邦 Costco 聯名卡懶人包
萬眾矚目的 富邦 Costco 聯名卡 在 2023/02/01 正式發行啦!就讓我們來了解一下這張充滿話題性的卡片吧!
來來來!需要的朋友跟我來!
辦卡連結 ☞ 點我辦卡去
聯名卡是什麼?
信用卡的種類有非常多,根據金融監督管理委員會的介紹[1],我們可以知道信用卡有以下幾種:
普通卡
金卡
白金卡
商務卡、公司卡
簽帳卡
認同卡
聯名卡
附卡
學生卡
然而在這麼多種類之中,我們今天會來討論的是打勾的部分——聯名卡。
聯名卡是發卡銀行和事業體合作 聯合發行 的信用卡,其功能與一般信用卡並無差別,但會較具特定的商業導向, 比一般信用卡多了事業體賦予給它的各項功能或是特殊優惠,以提供回饋給持卡人 。例如航空公司聯名卡、百貨公司聯名卡等等。
另外,如果有仔細觀察市面上的各種聯名卡應該就會發現,大部分的聯名卡在申辦的時候,都會告知是有年費的(少部分不用年費或是有免年費的條件),所以在辦卡前也要針對這部分三思喔!
Costco 聯名卡新舊爭霸戰——富邦 V.S. 國泰
由於國泰世華銀行並未順利取得 Costco 聯名卡的續約權,因此合約只到 20 ...
日本大阪捷絲旅限時優惠
「捷絲旅」這個耳熟能詳的旅店品牌如今開始向海外拓展事業版圖,就讓我們來看看他們海外首站選擇在哪吧!
台灣知名旅店-捷絲旅的版圖正式進軍海外,首站插旗在國人的熱門旅遊城市-日本大阪🇯🇵
獨家折扣銷售快閃日期 ► 2/3 ~ 2/17
限時優惠,錯過不再!
可訂購的入住期間 ► 3/1 (正式開幕) ~ 11/30
火速手刀搶購🔥 訂房連結請點我
亮點簡介
「捷絲旅大阪心齋橋」是捷絲旅品牌進軍日本的首家據點,飯店位置緊鄰熱鬧繁華的心齋橋商圈,商圈內美食店舖林立,房客步行即可沉浸式的體驗在地潮流文化與熱情好客的風土民情。
[{"url":"內部-1.webp","alt":""},{"url":"內部-2.webp","alt":""}]
踏入飯店大廳,映入眼簾的是充滿心齋橋美國村的設計牆面,帶領旅人彷彿走進 70 年代的時光隧道般,使人能在這忘卻旅途的辛勞。
[{"url":"雅心客房.webp","alt":""},{"url":"雅心客房-1.webp","alt":""},{"url":"雅齋客房.web ...
都是 M1 惹的禍?連 Bundler 也遭殃?!
都是 M1 惹的禍?第二彈!本篇將帶你一起解決執行 Rails 專案時可能發現的 gem 安裝失敗問題!
前言
好不容易搞定了 Ruby 安裝,接下來當然就要開始起專案啦!
安裝過程
Mimemagic 安裝失敗
專案資料夾打開後,起手式當然是
1bundle install
嗯?哈囉? 為什麼又送我紅字啊—— 😱😱😱
稍加閱讀了終端上的紅字後,選擇先按照紅字建議去嘗試
1gem install mimemagic -v '0.3.10' --source 'https://rubygems.org/'
Rake failed? 怎麼又失敗了
只好把剛剛出現過的紅字複製後,拿去請教 Google 大神
大神表示:
1brew install shared-mime-info
執行後,如果有成功的話就會看到這樣的啤酒訊息,Safe!
1🍺 /opt/homebrew/Cellar/shared-mime-info/2.2: 86 files, 4.6MB
Mysql2 安裝失敗
安裝完 Mimemagic 後,再重新 bundle ...
都是 M1 惹的禍?輕鬆帶你搞定 Ruby 環境安裝!
之前耳聞過 Mac M1 在環境安裝會遇到不少問題⋯⋯本篇將帶你一起解決安裝 Ruby 環境時的疑難雜症!
前言
新公司報到第一天,領到公司配發的工作機⋯⋯
太讚啦!居然是 M1 新機欸!嗯~真香!
除了認識同事外,報到不外乎要建置開發環境,想到這邊突然有種不好的預感 🤨
聲明
因本文僅適用於 Mac 環境,還請 Windows 的朋友們尋找其他篇文章協助解決環境安裝問題
安裝過程
安裝 RVM
首先我們先安裝 RVM (Ruby Version Manager,Ruby 版本管理器) ,這是為了幫助我們可以管理不同版本的 Ruby 環境。
1\curl -sSL https://get.rvm.io | bash -s stable
上述的這個指令也可以在 RVM 首頁 找到唷!
安裝完成後,我們可以查詢 RVM 的版本號,以確認是否成功安裝。
1rvm -v
如果有正確安裝成功的話,輸入指令後會如下圖,得到現在的版本號。
安裝 Ruby
操作 RVM 的相關指令,可以在 https://rvm.io/rvm/cli 查得到,或是終端機直接輸入指令 rvm help
安裝前 ...
用 Discord 接收 GitHub 通知
想知道如何在 Discord 聊天室中接收到 GitHub 的事件通知嗎?本篇將帶給你完整的手把手教學!
Discord 設定
首先在群組中選擇欲設定的 文字頻道 ,點擊旁邊齒輪的圖示進入到設定畫面。
接著於左側的選單中選擇 整合 ,若之前不曾建立過 Webhook 的話,應該會看到如下圖所示 建立 Webhook 的按鈕。
但如果之前有建過 Webhook 的話,則會如下圖一樣呈現出 查看 Webhook 的字樣,點進去之後點擊 新 Webhook 的按鈕亦可。
成功建立後就會出現可以編輯 Webhook 資訊的區塊,當編輯完欲命名的名稱後,就可以直接點擊 複製 Webhook 網址 。
看到 已複製 的訊息後,我們就可以準備開始設定 GitHub 的部分囉!
複製好的 webhook 網址請注意不要任意公開散布出去給他人,因為只要取得此網址後,他人即有權限可傳送訊息至該頻道中。
GitHub 設定
登入 GitHub 並找到你想要設定的 Repo 後,點擊 Settings 頁籤。
然後一樣選擇左側選單中的【Webhooks】,並且找到右側 Add webhook 按鈕 ...
WSL 無法開啟 SQLite 檔案
由於上課所需,開始研究如何在 WSL 中安裝 SQLite Browser,結果意外發現有問題啊!!!
安裝
因為龍哥說明天要用學資料庫,所以請同學們安裝 SQLite Browser ,於是便進到官網開始查安裝說明。
【應用程式名稱】SQLite Browser
【官網連結】請點我
因應各家系統,所以安裝方式也非常及 MacOS 多,除了 Windows 及 macOS 可以直接下載安裝檔以外,Linux 系統也可以透過指令去下載。
由於課程開始時,龍哥建議使用 Windows 系統的學生們可以安裝 WSL 來作為 Ruby 開發環境。所以這邊應用程式的安裝,我就打算直接透過 Linux 的終端機來安裝,而不是直接下載 Windows 安裝檔。而我的 Linux 系統是使用 Ubuntu 20.04 LTS ,我就採用 APT 指令方式下載。
首先我們先更新 APT 的 cache
1sudo apt-get update
更新完成後再繼續接著安裝應用程式本體!
1sudo apt-get install sqlitebrowser
不過想小小吐槽一下的是 APT 指令安裝完成後 ...