使用私有GitLab 模組建構Docker 化的Go 應用
本文探討了在Docker 容器中使用私有GitLab 模組建構Go 應用程式的過程。
第1 步:初始化Docker映像
- 從基礎Go 映像開始,例如golang:1.14.11-alpine,並將其設定為建置環境。
- 為建造過程。
- 將原始碼複製到工作中
第2 步:安裝依賴項並設定SSH
- 安裝SSH 客戶端和Git 以處理私有儲存庫。
- 建立 SSH 目錄並將 GitLab SSH 金鑰新增至known_hosts檔案。
- 設定 Git 以使用帶有個人存取權杖的 HTTPS URL 替換。
步驟 3:建立應用程式
- 設定建置標誌以最佳化產生的執行檔。
- 將可執行檔從建置環境複製到
第4 步:私有模組存取
- 透過與GitLab 建立信任伺服器(ToS) 關係來準備私有模組儲存庫。
- 為 Docker 提供對模組具有唯讀存取權的個人存取權杖建置。
- 使用 go get 將模組新增至 Go 工作區並執行建置。
故障排除:SSH 連線問題
- 確保用於驗證的SSH 金鑰名為id_rsa 或Docker 提供的其他預設金鑰名稱之一
- 如果使用自訂金鑰名稱,請設定SSH 配置以將自訂金鑰對應到GitLab 儲存庫。
其他注意事項
- 避免使用 .netrc 文件,因為它們將憑證嵌入 Docker 映像中,可能會造成危害安全性。
- 如果遇到 AppArmor 問題,請透過修改適當的 AppArmor 設定檔來授予 Docker 存取 SSH 金鑰套接字的權限。
以上是如何使用私有 GitLab 模組建置 Dockerized Go 應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!