Docker介紹

Docker是一個改變我們部署應用程式和分發應用程式方式的工具之一。 它是一項非常受歡迎且廣受大多數使用者喜愛的技術,將其列入履歷中是一件很棒的事情。 使用Docker,我們可以創建一個封裝整個應用程式的容器。 不僅如此,它可以封裝整個應用程式並保存為映像以便輕鬆複製。 在這裡,複製是關鍵詞。使用Docker,我們可以創建運行在你的電腦、客戶的電腦、你的服務器等任何地方的獨立環境,並使用我們想要運行的軟體的特定版本。 這有助於解決從配置錯誤和不同環境之間版本不匹配導致的各種問題。 Docker很複雜,但我認為它用相對用戶友好的方式處理了許多複雜的問題。 這就是為什麼"理解它"可以從你作為開發者和作為軟體使用者的生活中減少很多複雜性的原因。 不再有"但在我的電腦上運行正常"這樣的問題了。你不再需要這樣說,別人也不需要再這樣對你說了。 我們都知道調試是困難的,當某些東西在你測試過的所有環境中運行正常,但在某些奇怪的配置上卻不正常時,這就更難了。有太多的變動部分。 Docker也非常適合分發你創建的軟體,但你不想應對來自於試圖在所有可能的Web伺服器和配置上安裝它的人們所提出的無數支援請求。 我知道受歡迎的論壇應用程式Discourse在很大程度上依賴於Docker。我現在找不到參考資料,但我敢肯定我讀過他們只會支援運行官方Docker映像的安裝問題。我在這裡可能錯了,但這個想法聽起來並不是無稽之談: 如果你作為一個程式設計師可以創建一個在任何你可以部署Docker容器的地方運行的映像,那麼作為一個使用者,你絕對應該利用這一點。 Docker的另一個重大好處是能夠運行不同版本同一套軟體堆疊的多個應用程式,如果沒有類似的解決方案,這將變得困難或至少令人困惑。 在接下來的教程中,我們將介紹幾個Docker的概念,並探索如何使用以下內容: Docker映像 Docker容器 Dockerfile 基於Docker映像更新已部署容器 如何提交更改到Docker映像 如何在Docker容器外部訪問檔案 在Docker Hub上共享Docker映像 從命令行操作Docker映像 從命令行操作Docker容器 如果Docker容器立即退出該怎麼辦 從頭開始創建一個簡單的Node.js Hello World Docker容器 使用Docker Desktop管理容器 安裝Docker後的第一步 在macOS上安裝Docker 等等!

如何安裝Redis

您可以從https://redis.io/download下載最新版本的Redis。 Redis可以安裝在任何伺服器上。在此我們將在本地安裝以進行測試。 在macOS上,使用Homebrew安裝更簡單。運行以下命令: brew install redis 然後運行: brew services start redis 以使Redis在計算機重新啟動時自動啟動和重新啟動。 您也可以使用以下命令手動啟動: redis-server /usr/local/etc/redis.conf 在Linux Ubuntu上,您需要運行以下命令: sudo apt-get install redis-server Redis將自動啟動並運行。 一旦啟動,Redis將監聽端口6379。 在本地伺服器上運行時,無需密碼即可運行。但當Redis暴露在互聯網上時,請確保在redis.conf配置文件中設置密碼,其位置取決於您的操作系統。

如何強制在每個 Axios 請求中使用憑據

我使用 Axios 與一個設定了 JWT 權杖的 API 進行交互。 該 API 在 cookie 中返回該令牌,我很快發現我需要在 Axios 選項中設置 withCredentials: true: import axios from 'axios' axios.post(API\_SERVER + '/login', { email, password }, { withCredentials: true }) 否則,cookie 將不會被保存。 我還需要在我發出的每個其他請求中設置它,以將 JWT 權杖發送到服務器: axios.get(API\_SERVER + '/todos', { withCredentials: true }) 現在,對於少量請求,這是可行的,但對於許多請求,您可能希望使用一個通用的配置。 您可以使用 create() 方法來創建一個新的 Axios 實例,然後在您的請求中使用它: import axios from 'axios' const instance = axios.create({ withCredentials: true }) instance.get(API\_SERVER + '/todos') 通常還會添加一個 baseURL 屬性: import axios from 'axios' const instance = axios....