docker部署前端,配置域名和ssl

? ? ? ?之前使用80端口部署前端項目后,可以使用IP+端口號在公網訪問到部署的項目。

? ? ? ?進行ICP域名備案后,可以通過域名解析將IP套殼,訪問域名直接訪問到部署的項目~

? ? ? ?如果使用http協議可以很容易實現這個需求,對nginx.conf文件進行修改,具體看docker在服務器中部署多個前端_docker部署一個項目有兩個前端怎么辦-CSDN博客

  server_name  localhost;#這里localhost改成域名即可

? ? ? ?但是這樣通過http協議訪問的網站會提示網站不安全。我們需要使用https協議改用443端口訪問我們的項目。

? ? ? ?所以我們需要在服務器的官網上給域名去申請一個ssl證書,在申請成功后,直接下載ssl文件到本地。可以得到這兩個域名.crt和.key的文件。

? ? ? ?首先進到服務器的 /etc/ssl/certs/ 目錄下放入這兩個文件,后續啟動容器會把當前目錄的文件掛載到nginx內部的 /etc/ssl/certs/ 目錄中,不然會ssl文件讀取失敗

? ? ? ?然后按照之前前端部署的方式,首先在前端打包項目,得到dist文件夾。

? ? ? ?來到服務器,在任意位置創建一個項目文件夾。再放入dist文件夾,然后開始創建其他文件

1.?Dockerfile 文件

# 使用NGINX作為基礎鏡像
FROM nginx# 復制解壓后的網站文件到NGINX默認路徑下
COPY rme/ /usr/share/nginx/html/
# 將你的 NGINX 配置文件復制到容器中的 NGINX 配置目錄
COPY default.conf /etc/nginx/conf.d/default.conf

2.?default.conf

upstream my_server{server 你的域名:8080; # 后端server 地址keepalive 2000;
}server {listen 80;#填寫綁定證書的域名server_name  你的域名, localhost;#把http的域名請求轉成https,相當于用戶訪問http也可以自動跳轉到https,避免出現網頁提示不安全return 301 https://$host$request_uri; }    server {listen  443 ssl;server_name  你的域名.cn; #證書文件名稱ssl_certificate_key /etc/ssl/certs/你的域名.key;#私鑰文件名稱 .crt和.pem都可以用ssl_certificate /etc/ssl/certs/你的域名.crt; ssl_session_timeout 1d;ssl_session_cache shared:SSL:50m;ssl_session_tickets off;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;ssl_prefer_server_ciphers on;location / {root   /usr/share/nginx/html;try_files $uri $uri/ /index.html;index  index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

3. set.sh?

#!/bin/bash# 構建名為 test 的 Docker 鏡像
docker build -t test .# 檢查是否存在構建的鏡像
if docker images test | grep -q test ; thenecho "鏡像 test 已存在,繼續執行下一步..."
elseecho "錯誤:鏡像 test 不存在!請先構建鏡像。"exit 1
fi# 運行容器
#docker run -d -p 80:80 --name test test # 創建新nginx容器 配置ssl證書
docker run --name test -p 80:80 -p 443:443    -v /usr/local/nginx/logs:/var/log/nginx -v /etc/ssl/certs:/etc/ssl/certs  --privileged=true -d --restart=always test # 檢查容器是否成功運行
if docker ps -a --filter "name=^test $" --format "{{.Status}}" | grep -q "Up"; thenecho "容器 test 運行成功!"
elseecho "錯誤:容器 test 運行失敗!"
fi

? ? ? ?到這里我們有 dist前端資源文件夾,Dockerfile鏡像構建文件,default.conf nginx配置文件,還有/etc/ssl/certs/目錄下的ssl證書文件和 set.sh運行腳本。

cd到當前目錄,輸入 ./set.sh 運行啟動腳本。

搞定~~~~

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/38004.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38004.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38004.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring Boot集成DeepLearning4j實現圖片數字識別

1.什么是DeepLearning4j? DeepLearning4J(DL4J)是一套基于Java語言的神經網絡工具包,可以構建、定型和部署神經網絡。DL4J與Hadoop和Spark集成,支持分布式CPU和GPU,為商業環境(而非研究工具目的…

《昇思25天學習打卡營第28天 | 昇思MindSporeVision Transformer圖像分類》

第28天 本節學習了Vision Transformer圖像分類 ViT則是自然語言處理和計算機視覺兩個領域的融合結晶。在不依賴卷積操作的情況下,依然可以在圖像分類任務上達到很好的效果。ViT模型的主體結構是基于Transformer模型的Encoder部分(部分結構順序有調整&a…

Mojo: AI開發的革命性編程語言

------------->更多內容&#xff0c;請移步“魯班秘笈”&#xff01;&#xff01;<------------- 剛剛Mojo和HuggingFace一樣發布新版本&#xff0c;此版本編號為24.4&#xff0c;包括幾個核心語言和標準庫增強功能。此版本最大的亮點之一是收到了來自18個社區貢獻者的21…

redis布隆過濾器原理及應用場景

目錄 原理 應用場景 優點 缺點 布隆過濾器&#xff08;Bloom Filter&#xff09;是一種空間效率很高的隨機數據結構&#xff0c;它利用位數組和哈希函數來判斷一個元素是否存在于集合中。 原理 數據結構&#xff1a; 位數組&#xff1a;一個由0和1組成的數組&#xff0c;初始…

【AI應用探討】—膠囊神經網絡(GNN)應用場景

目錄 一、圖像識別與分類 二、目標檢測與跟蹤 三、自然語言處理 四、其他應用場景 一、圖像識別與分類 多層次特征捕捉 膠囊網絡通過其獨特的膠囊結構和動態路由算法&#xff0c;能夠捕捉圖像中的多層次特征。每個膠囊不僅輸出激活強度&#xff0c;還輸出一個多維向量&…

Docker Desktop安裝mysql

安裝 Docker Desktop 1、訪問 Docker Desktop 官方下載地址&#xff1a;https://www.docker.com/products/docker-desktop/ &#xff0c; 選擇對應平臺的 Docker Desktop 安裝包點擊下載&#xff1a; 2、下載成功后&#xff0c;雙擊開始安裝&#xff1a; 3、安裝之前的相關配…

產品經理-對產品經理的認識(1)

今天跟大家聊一下產品經理這個崗位的,產品經理是互聯網崗位當中比較火的一個崗位,也是最接近CEO的崗位 產品經理崗位&#xff0c;技術門檻低&#xff0c;薪水和前景都很不錯&#xff0c;又處于團隊的核心位置 產品經理崗位沒有完全相關的專業設置和清晰的學習路徑&#xff0c;絕…

Spring Boot中實現多數據源配置

Spring Boot中實現多數據源配置 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01;今天我們將探討如何在Spring Boot應用中實現多數據源配置&#xff0c;以應對復雜…

java框架的落地實踐案例:大數據平臺設計與實現

使用 java 框架設計和實現大數據平臺可為企業提供數據處理和分析解決方案&#xff0c;使之能夠做出數據驅動的決策。系統采用微服務架構&#xff0c;分解數據處理任務為松散耦合組件&#xff0c;構建于 spring boot 等 java 框架之上。數據采集通過kafka 進行&#xff0c;數據清…

Rust借助dotenv庫讀取環境變量

這里寫自定義目錄標題 歡迎使用Markdown編輯器新的改變功能快捷鍵合理的創建標題&#xff0c;有助于目錄的生成如何改變文本的樣式插入鏈接與圖片如何插入一段漂亮的代碼片生成一個適合你的列表創建一個表格設定內容居中、居左、居右SmartyPants 創建一個自定義列表如何創建一個…

(親測有效)2024代替電視家的app,電視家停了還有什么軟件可以看電視?

嘿&#xff0c;大家好&#xff0c;我是阿星&#xff0c;今天又來跟大家聊聊那些讓人眼前一亮的電視直播軟件。咱們這回不聊那些老掉牙的&#xff0c;來點新鮮的&#xff0c;讓咱們的電視屏幕也能跟上潮流&#xff0c;享受一下科技帶來的便利和樂趣。 首先&#xff0c;得提一提…

如何評價CSS框架TailwindCSS?

端午三天&#xff0c;你們在放假&#xff0c;而我&#xff0c;一個人躲在家里&#xff0c;苦練 tailwindcss。 我在準備這樣一個學習項目&#xff0c;它與傳統的文章/視頻類學習不同&#xff0c;我會在教程中內置大量的可交互案例&#xff0c;提供沉浸式的學習體驗&#xff0c…

SpringMVC中執行流程

文章目錄 14、SpringMVC執行流程14.1、SpringMVC常用組件14.2、DispatcherServlet初始化過程①初始化WebApplicationContext②創建WebApplicationContext③DispatcherServlet初始化策略 14.3、DispatcherServlet調用組件處理請求①processRequest()②doService()③doDispatch()…

Zynq7000系列FPGA中DMA引擎編程指南

DMA引擎的編程指南通常涉及一系列步驟和API調用&#xff0c;以確保數據在內存之間的高效傳輸&#xff0c;而無需CPU的直接干預。 DMA引擎的編程指南包括以下部分&#xff1a; 一、編寫微代碼為AXI事務編寫CCRx程序 通道微碼用于設置dmac.CCRx寄存器以定義AXI事務的屬性。這是…

TikTok直播限流與網絡的關系及解決方法

TikTok作為一款熱門的社交平臺&#xff0c;其直播功能吸引了大量用戶。然而&#xff0c;一些用戶可能會遇到TikTok直播限流的問題&#xff0c;例如直播過程中出現播放量低、直播畫面質量差等情況。那么&#xff0c;TikTok直播限流與所使用的網絡線路是否有關系&#xff1f;是否…

學習springIOC

第二章 Spring IOC 章節內容 Spring IOC技術實現Spring IOC設值注入Spring IOC構造注入 章節目標 掌握Spring IOC技術實現掌握Spring IOC設置注入掌握Spring IOC構造注入 第一節 Spring簡介 1. Spring 簡介 Spring 是目前主流的 Java 開發框架&#xff0c;是 Java 世界最…

Android實現手寫輸入

android應用開發中有時會有手寫輸入需求&#xff0c;非通過系統鍵盤手寫功能&#xff0c;比如自定義鍵盤&#xff0c;這時就需要自己來實現&#xff0c;一般有兩種場景&#xff1a;一種是類似手寫簽名保存&#xff1b;另一種是真正的手寫輸入&#xff0c;需要將筆跡識別成正確的…

JTracker IDEA 中最好的 MyBatis 日志格式化插件

前言 如果你使用 MyBatis ORM 框架&#xff0c;那么你應該用過 MyBatis Log 格式化插件&#xff0c;它可以讓我們的程序輸出的日志更人性化。 但是有一個問題&#xff0c;通常我們只能看到格式化后的效果&#xff0c;沒辦法知道這個 SQL 是誰執行的以及調用的鏈路。 如下圖所…

文章解讀與仿真程序復現思路——電網技術EI\CSCD\北大核心《考慮復合指標優化模態分解和 Stacking 集成的綜合能源系統多元負荷預測》

本專欄欄目提供文章與程序復現思路&#xff0c;具體已有的論文與論文源程序可翻閱本博主免費的專欄欄目《論文與完整程序》 論文與完整源程序_電網論文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 電網論文源程序-CSDN博客電網論文源…

【stm32】大一上學期筆記復制

砌墻單片機 外設是什么&#xff1f; ipage 8 nx軸 128 X0-127 y0-63 PWM脈沖寬度調制 PWM脈沖寬度調制 2023年10月13日 基本特性&#xff1a;脈沖寬度調制PWM是一種對模擬信號進行數字編碼的方法。廣泛引用于電機控制&#xff0c;燈光的亮度調節&#xff0c;功率控制等領域…