在 Nginx 反向代理后面運行 Docker

jopen 9年前發布 | 32K 次閱讀 Nginx Docker

想讓 Docker 擁有公共網關,能支持多租戶,以及我們期望的安全認證等等功能?請看作者通過重新編譯 Nginx 讓其像支持 websockets 一樣支持 Docker 自帶協議來實現上述需求。

幾周以前,我想做些試驗看看 Docker 怎樣運行在云共享宿主環境。同時,Docker 1.4 發行版帶來了額外的安全和身份認證特性以及 Docker machine 自動化創建和運行一個遠程 Docker 實例。

共享主機群組通常圍繞某種流入流出流量的公共網關建立,而且包括管理流量,包括 FTP 和 SSH。群組最大的部分 - 與冰山沒有什么不同 - 被隱藏在這些網關后面的私有網絡中。

因此,我的問題是,大家可以想象下,有沒有一種方式可以使得 Docker 擁有類似行為的網關,包含多租戶支持和你所期望的所有功能?

事實證明,有。

Docker 二進制文件扮演著 3 種角色:

  • Docker 命令行 -> 使得 Docker 好用以及非常簡單
  • Docker Daemon -> 在幕后默默做著苦差事
  • Docker init -> 做幕后的早期容器設置
  • </ul>
    命令行和 Docker Daemon 主要使用基于HTTP協議來相互通信。我說“主要”是因為有幾個 API 會“攔截”連接,尤其是container/attach,又稱“forward my container’s console。”

    要知道,常見的設置,已經被網絡上的博客文章很好的覆蓋了,推薦設置一個 nginx 反向代理和為了安全添加一個基本身份認證。

    不幸地是,這種方法有兩個缺點:

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!