程式技術: 程式技術交流與分享

AWS NAT Gateway 你也太貴!用 Terraform 做一個自己的 NAT

小弟我的部落格原本是架在 AWS 的 Lightsail 服務上,Lightsail 簡單好用又便宜,缺點是 OS 的 image 更新的有點慢。Lightsail 上面 Ubuntu 22.04 的 image 在前陣子終於推出了,但 2023 都快過一半了…在工作上轉換...

使用 AWS EC2 Instance 當你的 GitHub Action Runner

前陣子都在研究怎麼將 Laravel 專案容器化,也學習到了不少知識,也有寫一篇文章說明容器化的方式。使用 Docker 把自己的 Laravel 專案容器化雖然容器化確實方便,但是只要程式碼一更新,就需要重新建立容器的映像檔...

如何在 WSL 中,用 PhpStorm 指令開啟 WSL 系統中的專案

我自己平常開發時常用的作業系統是 Mac 和 WSL (Windows Subsystem for Linux),而在編寫 PHP 時都是使用 PhpStorm 這款超級好用的 IDE。在 Mac 作業系統上,PhpStorm 提供了一個方便的功能,可以在終端機中使用 php...

簡單介紹如何用 Packer 建立 AWS AMI

假設我們需要一個運行 PHP 專案的線上環境,我們可以在雲端服務上面啟動一台裝有 Linux 乾淨作業系統的機器,然後透過 SSH 進入機器,開始安裝所需的系統套件,以便運行 PHP 專案。這個過程雖然不算冗長,但是假設你...

初見 PDM,一套現代化的 Python 依賴管理工具

在編寫 Python 程式時,許多人通常會使用 venv 虛擬環境來管理專案的依賴套件。雖然這樣的作法可以避免不同專案之間的套件相互干擾,但對於具有 PHP 或 Node.js 開發經驗的人來說,他們可能會好奇為什麼 Python 沒有...

使用 Docker 把自己的 Laravel 專案容器化

最近我正在學習如何使用容器管理平台 K8s,過程中深刻體會到容器化所帶來的許多好處。舉例來說,它可以更好地實現水平擴展,同時在更新服務時,可以使用滾動更新 (rolling update) 的方式,讓服務不間斷。因此某一天...

使用 Cloudflare 幫你的網站掛上 SSL 憑證與 CDN

之前曾經寫過一篇文章介紹如何使用 Certbot,幫自己的網站向 Let's Ecncrypt 申請免費的 SSL 憑證。幫網站掛上 HTTPS,使用 Certbot 向 Let's Encrypt 申請憑證用這種方式幫網站掛上憑證可以說是簡單又快速,而且還...

分享使用 Laravel Livewire 時曾遇到過的各種陷阱卡

小弟是前端苦手,因此部落格是使用 Laravel Livewire 這個 Laravel 的全端框架,而部落格經營到現在也兩年多了,這兩年來我多次幫部落格進行各種小改版,希望可以讓自己寫文章的體驗越來越好。而我也在這多次改版中...

如何在 PHP 中測試 Trait

在使用 Laravel Livewire 的時候,我時常會把 livewire component 中可以重複使用的邏輯或是方法抽出並放在 Trait 中。Laravel Livewire 官方文件中也建議使用 Trait 來處理經常重複使用的邏輯。詳細可以參考下面兩...

讓你的 Laravel 環境變數檔案進入版本控制

在開發 Laravel 應用程式時,我們會將一些敏感資訊,如連線資料庫的帳號密碼或是用來取得第三方軟體認證的金鑰,放在環境變數檔案 .env 中,也因為如此,我們不會讓 .env 檔案進入 git 的版本控制,避免內容公開被其...