利用Docker搭建本地https環(huán)境的完整步驟
什么是 HTTPS
我們都知道 Web App 的運(yùn)行都是建立在網(wǎng)絡(luò)應(yīng)用層 HTTP 協(xié)議的,HTTP 協(xié)議能夠進(jìn)行客戶端和服務(wù)器之間的請(qǐng)求和返回。但是這個(gè)過(guò)程是明文傳輸?shù)模?dāng)請(qǐng)求被抓包后傳輸內(nèi)容很容易被篡改,這對(duì)用戶的安全性來(lái)說(shuō)是極其嚴(yán)重的威脅。PWA 應(yīng)用出于安全性的考慮要求項(xiàng)目必須部署在 HTTPS 環(huán)境。
那么 HTTPS 是什么呢?
HTTPS 是將 HTTP 置于 SSL/TLS 之上,其效果是加密 HTTP 流量( traffic ),包括請(qǐng)求的 URL、結(jié)果頁(yè)面、cookies、媒體資源和其他通過(guò) HTTP 傳輸?shù)膬?nèi)容。企圖干擾 HTTPS 連接的人既無(wú)法監(jiān)聽(tīng)流量,也無(wú)法更改其內(nèi)容。除了加密,遠(yuǎn)程服務(wù)器的身份也要進(jìn)行驗(yàn)證:畢竟,如果你無(wú)法確定連接的另一端是誰(shuí),加密連接也就沒(méi)什么意義了。這些措施將使攔截流量變得極其困難。雖然攻擊者仍有可能知道用戶正在訪問(wèn)哪個(gè)網(wǎng)站,但他所能知道的也就僅限于此了。
https請(qǐng)求流程圖
本文將利用Docker & docker-compose 搭建本地 https 環(huán)境,下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。
工具:
- acme#sh (生成免費(fèi)證書(shū))
- Docker & docker-compose
- ihost (可以手動(dòng)修改 hosts 文件)
配置文件:
docker-compose.dev.yml
version: '3' services: proxy: image: nginx:stable-alpine ports: - 443:443 volumes: - /Users/thonatos/.acme.sh/*.implements.io:/etc/nginx/ssl/ - ./default.conf:/etc/nginx/conf.d/default.conf
default.conf
# HTTP server # server { listen 443 ssl; server_name szcu.implements.io; ssl_certificate /etc/nginx/ssl/fullchain.cer; ssl_certificate_key /etc/nginx/ssl/*.implements.io.key; location / { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://192.168.2.51:7001; # IP 請(qǐng)勿使用 127.0.0.1 } }
hosts
127.0.0.1 szcu.implements.io
運(yùn)行
# 啟動(dòng) Egg.js yarn dev # 啟動(dòng) nginx docker-compose -f docker-compose.dev.yml up
打開(kāi) Chrome 可以看到旁邊綠色的鎖了,大功告成。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- 使用 Docker 搭建 Laravel 本地環(huán)境的教程詳解
- docker實(shí)現(xiàn)本地seata分布式環(huán)境搭建詳解
- 使用 kind 和 Docker 啟動(dòng)本地的 Kubernetes環(huán)境
- Docker如何打包本地環(huán)境為tar包給別人使用
- 本地使用Docker搭建go開(kāi)發(fā)環(huán)境的全過(guò)程
- docker/docker desktop for window環(huán)境下創(chuàng)建本地鏡像倉(cāng)庫(kù)方式
- 使用Docker搭建本地開(kāi)發(fā)環(huán)境的詳細(xì)指南
相關(guān)文章
利用Docker?運(yùn)行?python?簡(jiǎn)單程序
這篇文章主要介紹了利用Docker?運(yùn)行?python?簡(jiǎn)單程序,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-04-04修改Docker鏡像默認(rèn)存儲(chǔ)位置的方法(解決方法)
這篇文章主要介紹了修改Docker鏡像默認(rèn)存儲(chǔ)位置的方法,如果上面運(yùn)行 Docker 服務(wù),經(jīng)過(guò)長(zhǎng)時(shí)間的使用,會(huì)使原本就比較大的分區(qū)越來(lái)越不夠用。如何更好地的處理這個(gè)問(wèn)題呢,本文給出解決方案,需要的朋友一起看看吧2021-04-04docker容器間互相訪問(wèn)(docker bridge網(wǎng)絡(luò))
本文主要介紹了docker容器間互相訪問(wèn)(docker bridge網(wǎng)絡(luò)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01docker中運(yùn)行PostgreSQL容器的簡(jiǎn)單步驟
這篇文章主要給大家介紹了關(guān)于docker中運(yùn)行PostgreSQL容器的簡(jiǎn)單步驟,隨著docker的廣泛應(yīng)用,為了提供便利的管理,PostgreSQL數(shù)據(jù)庫(kù)也支持docker的安裝方式,需要的朋友可以參考下2023-08-08Docker NFS volume創(chuàng)建與使用方式
這篇文章主要介紹了Docker NFS volume創(chuàng)建與使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02詳解基于docker-swarm搭建持續(xù)集成集群服務(wù)
這篇文章主要介紹了詳解基于docker-swarm搭建持續(xù)集成集群服務(wù),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10