• 跳到主要內容
  • 跳到二級菜單
  • 跳至主側邊欄
  • 跳轉到頁腳
WebSetNet

WebSetNet

科技新聞

  • 科技新聞
    • 移動
    • 遊戲
  • 網絡營銷
  • 系統管理員
    • Windows
    • Linux的
    • Mac和Apple
    • 網站腳本
      • WordPress的

Docker指南:安裝Traefik - 一種用於微服務的現代反向代理

二零二一年八月十日 by Martin6

 

Traefik是一種用於微服務的現代HTTP反向代理和負載均衡器。 Traefik使所有微服務部署變得簡單,與現有的基礎架構組件集成,如Docker,Swarm Mode,Kubernetes,Amazon ECS,Rancher,Etcd,Consul等。

Traefik充當所有微服務應用程序的路由器,將所有客戶端請求路由到正確的微服務目的地。

在本教程中,我將逐步向您展示如何在Ubuntu 18.04 LTS(Bionic Beaver)上安裝和配置Traefik現代反向代理作為Docker容器。

條件:

  • Ubuntu的18.04
  • 根特權

我們將要做什麼?

  1. 在Ubuntu 18.04上安裝Docker
  2. 安裝Docker Compose
  3. 創建自定義Docker網絡
  4. 安裝和配置Traefik
  5. 測試

步驟1 - 在Ubuntu 18.04上安裝Docker

對於本指南,我們將使用可從官方docker存儲庫安裝的最新docker版本。

使用以下命令添加docker密鑰和存儲庫。

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key添加–
sudo的附加APT-資源庫
“ deb [arch = amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs)
穩定的”

“ add-apt-repository”命令將自動更新所有存儲庫。

在Ubuntu上安裝Docker

現在安裝最新的docker-ce。

sudo apt安裝docker-ce

安裝完成後,啟動docker服務並使其在系統引導時每次啟動。

systemctl啟動泊塢窗
systemctl啟用docker

docker社區版已安裝在Ubuntu 18.04系統上,檢查已安裝的docker版本。

碼頭版本

檢查docker版本

附加:為非root用戶運行Docker

Docker容器可以在非root用戶下運行。 我們只需要將用戶添加到docker組。

添加“ mohammad”用戶。

useradd -m -s / bin / bash mohammad

現在將“ mohammad”用戶添加到docker組,然後重新啟動docker服務。

usermod -a -G docker mohammad
systemctl重啟docker

通過運行docker hello-world進行測試。

docker run -it hello-world

以下是結果。

為非root用戶運行Docker

步驟2 –安裝Docker Compose

Docker-Compose是一個命令行工具,用於定義和管理多容器docker應用程序。

Docker Compose是一個python腳本,它可以使用python pip命令安裝,也可以通過Ubuntu存儲庫中的apt命令輕鬆安裝。 使用compose,我們可以使用單個命令運行多個Docker容器。

使用下面的apt命令從存儲庫安裝docker compose。

sudo apt安裝docker-compose

安裝完成後,請檢查docker compose版本。

docker-compose版本

docker compose 1.17已安裝在Ubuntu 18.04上。

安裝Docker Compose

步驟3 –創建自定義Docker網絡

在本教程中,traefik容器將在docker自定義網絡上運行。 所以我們需要在服務器上創建一個新的docker自定義網絡。

檢查系統上可用的docker網絡。

碼頭網絡ls

現在,為traefik容器創建一個名為“ proxy”的新自定義網絡。

docker network創建代理

並且您將獲得網絡容器名稱的隨機字符串。 再次檢查可用的網絡。

碼頭網絡ls

結果如下所示。

創建自定義Docker網絡

已創建名為traefik的自定義docker網絡“ proxy”。

步驟4 –安裝和配置Traefik反向代理

在此步驟中,我們將創建啟用HTTPS letsencrypt的traefik容器(使用域名'traefik.hakase-labs.io),並在traefik上自動將HTTP重定向到HTTPS。

Traefik預安裝

在創建所有traefik配置之前,我們需要安裝“ apache2-utils”以生成加密的htpasswd密碼並創建新的traefik目錄。

使用下面的apt命令安裝“ apache2-utils”。

sudo apt install apache2-utils -y

現在運行下面的htpasswd命令為traefik儀表板身份驗證生成新密碼。

htpasswd -nb穆罕默德密碼

將結果保留在筆記中。

mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi.

安裝和配置Traefik反向代理

接下來,登錄'mohammad'用戶。

蘇 - 穆罕默德

為所有traefik配置創建一個名為“ traefik”的新目錄。

mkdir -p traefik /
cd traefik /

創建Traefik配置

轉到“ traefik”目錄並使用創建一個新的配置文件“ traefik.toml” VIM 編輯器。

cd traefik /
vim traefik.toml

粘貼下面的配置。

#Traefik全局配置debug = false checkNewVersion = true logLevel =“ ERROR”#定義HTTP和HTTPS defaultEntryPoints = [“ https”,“ http”]的EntryPoint#在端口8080上啟用Traefik儀表板#使用基本身份驗證方法#mohammad和密碼[web]地址=“:8080” [web.auth.basic]用戶= [“ mohammad:$ apr1 $ hEgpZUN2 $ OYG3KwpzI3T1FqIg9LIbi。”]#定義HTTP端口80和HTTPHTTPS端口443 EntryPoint#啟用自動重定向[entryPoints] [entryPoints.http]地址=“:80” [entryPoints.http.redirect] entryPoint =“ https” [entryPoints.https] address =“:443” [entryPoints.https.tls]#啟用重試發送請求如果網絡錯誤[重試]#定義Docker後端配置[docker]端點=“ unix:///var/run/docker.sock”域=“ traefik.hakase-labs.io”監視= true true bybydefault = false #Letsencrypt註冊#定義Letsencrypt ACME HTTP挑戰[acme] email =“ [受電子郵件保護]” storage =“ acme.j 兒子” entryPoint =“ https” OnHostRule = true [acme.httpChallenge] entryPoint =“ http”

保存並退出。

備註:

有關配置的所有信息都在註釋部分“#...“。

創建Traefik Docker撰寫腳本

現在創建docker-compose yml腳本。

vim docker-compose.yml

粘貼下面的配置。

版本:“ 3”服務:traefik:圖像:traefik:最新命令:--docker --docker.domain = hakase-labs.io端口:-80:80-443:443網絡:-代理卷:-/ var /運行/docker.sock:/var/run/docker.sock-./traefik.toml:/traefik.toml-./acme.json:/acme.json標籤:-“ traefik.frontend.rule = Host:traefik。 hakase-labs.io“-” traefik.port = 8080“ container_name:traefik重新啟動:始終是網絡:代理:外部:true

保存並退出。

備註:

  1. 我們正在基於“ traefik:latest”泊塢窗映像創建一個名為“ traefik”的新容器。
  2. 'traefik'容器將在名為'proxy'的自定義docker網絡上運行,並公開外部端口HTTP 80和HTTPS 443。
  3. 該容器將掛載traefik配置'traefik.toml'和'acme.json',包括docker sock文件。
  4. traefik的標籤配置,前端域名和traefik端口。

Letsencrypt ACME配置

“ traefik.toml”上的acme配置用於自動生成SSL letencrypt。 存儲文件“ acme.json”是必需的。

創建一個新的JSON文件“ acme.json”,並將權限更改為“ 600”。

觸摸acme.json
chmod 600 acme.json

有關SSL letsencrypt信息的所有日誌都將保存在文件中。

建立Traefik集裝箱

現在,我們準備使用上述配置文件來構建自己的traefik容器。

cd traefik /
ls -lah

所有配置“ traefik.toml”,“ docker-compose.yml”和“ acme.json”文件。

建立Traefik集裝箱

使用下面的docker compose命令構建容器。

docker-compose up -d

使用docker compose構建容器

完成後,檢查正在運行的容器。

docker-compose ps

您將啟動並運行Traefik容器,公開外部端口HTTP和HTTPS。

Traefik容器啟動並運行

步驟5 - 測試

打開Web瀏覽器,在地址欄中鍵入traefik域名。 我的是:

http://traefik.hakase-labs.io/

您將被重定向到HTTPS連接,並將被要求輸入用戶名和密碼。

密碼驗證

使用用戶“ mohammad”登錄,密碼為“ password”。

您將獲得如下Traefik儀表板。

Traefik儀表板

Traefik健康狀況頁面。

Traefik健康狀況頁面

Traefik現代HTTP反向代理已作為Docker容器安裝在Ubuntu 18.04上。

參考文獻

  • https://docs.traefik.io/

 

資源

相關文章:

  1. 在Ubuntu上使用Docker-Compose對LEMP堆棧進行Dockerizing
  2. 如何在Debian 10上安裝Docker
  3. 容器:在Ubuntu 16.04上的Docker撰寫
  4. Docker撰寫:如何在CentOS 7上安裝
  5. 如何在CentOS 7上安裝Docker Compose
  6. 碼頭工人 Windows:在上創建Linux容器 Windows 10
  7. 最佳代理站點 - 頂級27代理服務器列表
  8. 在Linux Ubuntu 20.04上安裝Docker
  9. 如何在 Fedora 中安裝 Docker [初學者教程]
  10. 什麼是Docker撰寫,以及如何使用它?

提起下: 配置traefik docker

主要側邊欄

推薦

  • 怎麼修 Windows 更新錯誤80244019
  • Windows 10 更新因錯誤0x8007001f - 0x20006而失敗
  • 如何更改Netflix下載位置 Windows 10
  • 解決Outlook“未實現”無法發送電子郵件錯誤
  • 如何啟用或禁用Alt Gr鍵 Windows 10 鍵盤
  • 如何在Samsung Tizen OS設備上安裝Android應用APK
  • 3如何在沒有Office Outlook的情況下打開PST文件 Windows 10
  • 固定: Windows 更新錯誤0x800f0986
  • 如何在Snapchat上檢索已刪除的郵件
  • 最新的三星Galaxy Note 20洩漏是一個規格轉儲,揭示了關鍵功能
  • 在Galaxy Core 7.0 SM-G2H上安裝Android 355 Nougat ROM
  • 192.168.1.1登錄,管理頁面,用戶名,密碼| 無線路由器設置
  • 網站在線觀看電影 - 10 +沒有SignUp / Downloading的最佳網站
  • 如何在Android智能手機上備份短信
  • 如何刪除Microsoft Word文檔末尾的空白頁
  • 修復:光盤映像文件損壞的錯誤 Windows 10
  • Android 11自定義ROM列表–非官方更新您的Android手機!
  • 三星Galaxy Z Fold 3計劃於2021年XNUMX月在S Pen的支持下

頁腳

標籤

Amazon 亞馬遜素 亞馬遜主要視頻 蘋果 應用軟件 史詩遊戲 Galaxy Note的20 銀河S22加 銀河 S22 超 Google表格 頭戴耳機 華為 icloud的 Instagram 即時遊戲 IP地址 iPhone iPhone 12 iPhone 13 iPhone 13 pro max MacOS Microsoft微軟 微軟邊緣 移動應用 辦公室365 外表 像素6 Samsung Galaxy 三星 Galaxy Book 2 Pro 360 三星Galaxy Tab S8 智能手機 SPEEDTEST 速度測試 隊 的TikTok Twitter VPN WhatsApp whatsapp網頁 Windows 10 Windows 11更改 Windows 11發行 Windows 11更新 Windows 安卓子系統 Windows 11 小蜜

資料庫

  • 六月2022
  • 五月 2022
  • 四月2022
  • 三月十一日
  • 二月2022
  • 2022年一月
  • 2021年九月
  • 2021年八月
  • 七月2021
  • 六月2021
  • 五月 2021
  • 四月2021
  • 三月十一日
  • 二月2021
  • 2021年一月
  • 十二月2020
  • 2020年十一月
  • 2020年XNUMX月
  • 2020年九月
  • 2020年八月
  • 七月2020

Meta

  • 登入
  • 條目提要
  • 評論提要
  • WordPress.org