歡迎光臨
每天分享高質量文章

創建一個簡易 APT 倉庫 | Linux 中國

Debian 倉庫本質上可以看作是一個靜態的網站,而且內容是經過 GPG 簽名的,所以它不一定需要托管在某個可信任的地方(除非可用性對你的程式來說是至關重要的)。
— Iain R. Learmonth


編譯自 | https://iain.learmonth.me/blog/2017/2017w383/ 
 作者 | Iain R. Learmonth
 譯者 | geekpi

作為我工作的一部分,我所維護的 PATHspider[1] 依賴於 cURL[2] 和 PycURL[3]中的一些剛剛[4][5]合併或仍在等待[6]被合併的功能。我需要構建一個包含這些 Debian 包的 Docker 容器,所以我需要快速構建一個 APT 倉庫。

Debian 倉庫本質上可以看作是一個靜態的網站,而且內容是經過 GPG 簽名的,所以它不一定需要托管在某個可信任的地方(除非可用性對你的程式來說是至關重要的)。我在 Netlify[7](一個靜態的網站主機)上托管我的博客,我認為它很合適這種情況。他們也支持開源專案[8]

你可以用下麵的命令安裝 netlify 的 CLI 工具:

  1. sudo apt install npm

  2. sudo npm install -g netlify-cli

設置倉庫的基本步驟是:

  1. mkdir repository

  2. cp /path/to/*.deb repository/

  3. cd repository

  4. apt-ftparchive packages . > Packages

  5. apt-ftparchive release . > Release

  6. gpg --clearsign -o InRelease Release

  7. netlify deploy

當你完成這些步驟後,併在 Netlify 上創建了一個新的網站,你也可以通過 Web 界面來管理這個網站。你可能想要做的一些事情是為你的倉庫設置自定義域名,或者使用 Let’s Encrypt 啟用 HTTPS。(如果你打算啟用 HTTPS,請確保命令中有 apt-transport-https。)

要將這個倉庫添加到你的 apt 源:

  1. gpg --export -a YOURKEYID | sudo apt-key add -

  2. echo "deb https://SUBDOMAIN.netlify.com/ /" | sudo tee -a /etc/apt/sources.list

  3. sudo apt update

你會發現這些軟體包是可以安裝的。註意下 APT pinnng[9],因為你可能會發現,根據你的策略,倉庫上的較新版本實際上並不是首選版本。

更新:如果你想要一個更適合平時使用的解決方案,請參考 repropro[10]。如果你想讓最終用戶將你的 apt 倉庫作為第三方倉庫添加到他們的系統中,請查看 Debian wiki 上的這個頁面[11],其中包含關於如何指導用戶使用你的倉庫。

更新 2:有一位評論者指出用 aptly[12],它提供了更多的功能,並消除了 repropro 的一些限制。我從來沒有用過 aptly,所以不能評論具體細節,但從網站看來,這是一個很好的工具。


via: https://iain.learmonth.me/blog/2017/2017w383/

作者:Iain R. Learmonth[14] 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

LCTT 譯者

geekpi ? ?
共計翻譯:643 篇
貢獻時間:1554 天


推薦文章

< 左右滑動查看相關文章 >

點擊圖片、輸入文章 ID 或識別二維碼直達

赞(0)

分享創造快樂