Docker快速極簡配置nginx實現不同域名訪問分流

文章目錄

  • 前言
  • 安裝配置使用
    • 鏡像拉取及環境配置
    • 修改代理文件
    • 編寫docker-compose文件
    • 啟動nginx代理
  • 總結

前言

本文主要記錄如何使用docker安裝配置Nginx,如何使用Nginx把通過80、443端口訪問的請求根據域名分發到不同端口。那么什么是Nginx呢,下邊做個簡單介紹:

Nginx是一款開源的高性能、穩定、靈活的Web服務器和反向代理服務器,以其高效的數據傳輸能力和廣泛的部署場景而聞名全球。它最初由俄羅斯程序員Igor Sysoev于2002年創建,其名字“Nginx”來源于日語單詞“Ninginx”,意思是“強大的、快速的”,這恰好體現了其設計哲學。

Nginx的核心優勢在于輕量級架構,即使在高并發環境下也能提供卓越的性能,使得它在處理靜態內容和作為負載均衡器方面表現出色。它支持HTTP、HTTPS、SMTP等多種協議,并且易于擴展,能夠與許多現代Web技術棧如Node.js、PHP-FPM等無縫集成。此外,Nginx還以其模塊化設計、低資源占用和高效的請求處理機制著稱。

在當前的互聯網架構中,Nginx常被用于網站前端,作為第一道防火墻保護服務器,緩存靜態資源,或者是大型分布式系統中的關鍵組件,比如作為CDN(內容分發網絡)的一部分。許多大型網站,包括許多知名社交媒體平臺和新聞網站,都在背后依賴Nginx來保障服務的穩定和高效。

安裝配置使用

鏡像拉取及環境配置

拉取Nginx最新鏡像

docker pull nginx

配置本地參數文件掛載目錄

mkdir -p ~/nginx/conf
mkdir -p ~/nginx/log

臨時運行一個容器將參數文件拷貝到掛載目錄

docker run --rm --name nginx -d nginxdocker cp nginx:/etc/nginx/nginx.conf ~/nginx/conf/
docker cp nginx:/etc/nginx/conf.d ~/nginx/conf/
docker cp nginx:/usr/share/nginx/html ~/nginx/# 拷貝完成后停止容器
docker stop nginx

修改代理文件

# ~/nginx/conf/conf.d/git.confserver{listen 80;# 此域名是提供給最終用戶的訪問地址server_name gitlab.example.com;location / {client_max_body_size 50m;proxy_redirect off;proxy_pass http://192.168.1.88:8080;}
}server{listen 80;# 此域名是提供給最終用戶的訪問地址server_name registry.gitlab.example.com;location / {client_max_body_size 50m;proxy_redirect off;proxy_pass http://192.168.1.88:5050;}
}

編寫docker-compose文件

文件地址: ~/nginx/docker-compose.yml

networks: {}
services:core:depends_on: {}restart: alwayscontainer_name: nginxenvironment:TERM: xterm-256colorimage: nginxlogging:driver: json-fileoptions:max-file: '5'max-size: 10mnetwork_mode: hostprivileged: trueshm_size: 2gstdin_open: truetty: true# 下邊的"~"最好修改為絕對路徑volumes:- ~/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:rw- ~/nginx/conf/conf.d:/etc/nginx/conf.d:rw- ~/nginx/log:/var/log/nginx:rw- ~/nginx/html:/usr/share/nginx/html:rwworking_dir: /
version: '2.3'
volumes: {}

啟動nginx代理

cd ~/nginx/
docker-compose up -d

修改配置后重啟使用命令如下

docker restart nginx

總結

本文簡單記錄使用docker配置nginx的過程,方便后續參考。1234


  1. nginx配置詳解-CSDN博客 ??

  2. Docker 安裝 Nginx 容器 (完整詳細版)_docker nginx-CSDN博客 ??

  3. Nginx配置詳解_nginx配置域名-CSDN博客 ??

  4. nginx安裝及(域名、端口、ip)配置_nginx配置域名-CSDN博客 ??

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

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

相關文章

將產品制作成3D模型在網站上展示需要多少費用?

將產品制作成3D模型并在網站上展示的費用會因多種因素而異,包括模型的復雜度、所需的細節程度、制作3D模型的軟件和工具、以及是否需要專業設計師的服務等。此外,不同的3D模型制作服務提供商可能會有不同的定價標準。 如果能自己制作3D模型,…

友力科技IDC機房搬遷方案流程分享

機房搬遷流程 系統搬遷實施流程包括:準備、拆卸、裝運、安裝、調試等五個流程,具體如下: 準備:包括相關人員和設備準備、新機房環境準備、網絡環境、備份、現場所有設備打標簽、模塊、設備準備等準備工作。拆卸:主要只核心設備下…

iptables(2)安裝及規則查詢

安裝iptables 我是用的系統是debian 12,目前沒有安裝iptables。 防火墻已經安裝完成了 iptables 的配置語法 iptables (選項) (參數) # 通用匹配:源地址目標地址的匹配 -p:指定要匹配的數據包協議類型 -s, --source [!] address[/mask] :把指定的一個/一組地址作為源地…

防坑知識:如果要查自己的大數據信用報告,這幾種平臺一定不要選!

很多小伙伴在候遇到申貸碰壁,特別是被告知原因是大數據不良之后,都急著去了解自己的大數據信用情況,常見的方式就是在百度搜索大數據信用,大數據報告查詢,哪里能查大數據信用等關鍵詞,隨便找一個地方就去查…

Python 中處理大量用戶閱讀歷史數據的策略

Python 中處理大量用戶閱讀歷史數據的策略 處理大量數據時,效率和性能成為關鍵考慮因素。Python 提供了一系列工具和技術,可以幫助我們高效地處理大數據集。以下是一些處理大量用戶閱讀歷史數據的策略。 1. 使用合適的數據存儲解決方案 對于大規模數據…

【深度C++】之“目錄”

0. 關于【深度C】 2023年5月,看了一個月《C Primer(第5版)》的我,感覺很“頭疼”。 雖然看了很多,但是并沒有組織在一起。仿佛一個有很多線頭的毛線團,無從整理。 比如一口氣讓你說出const的用法&#x…

不常見的邏輯漏洞

文章目錄 1. 邏輯漏洞2. 理賠類邏輯漏洞3. 支付類漏洞3.1 超時未發貨商品賠付漏洞3.2 騙取某寶運費險漏洞 4. 批量注冊場景5. 享受特權用戶功能6. 社交類型場景7. 購物類型場景8. 簽約漏洞場景 1. 邏輯漏洞 邏輯漏洞不可以用掃描器去掃,漏洞,就是由于開發…

MVCC多版本并發控制機制、事務的隔離級別

目錄 一、MVCC多版本并發控制機制 二、事務的隔離級別 一、MVCC多版本并發控制機制 1、定義: MVCC(Multi-Version Concurrency Control,多版本并發控制)一種并發控制機制,在數據庫中用來控制并發執行的事務&#xf…

好消息!終于解決了!Coze工作流錯誤中斷問題終于得到解決!

文章目錄 ?? 介紹 ???? 演示環境 ???? 解決方案 ???? 常見的工作流中斷問題?? 好消息來了!?? 相關鏈接 ???? 介紹 ?? 大家是否曾經遇到過這樣的問題:在Coze平臺辛辛苦苦設計的一個工作流,尤其是流程非常復雜和長的情況下,只要中間一個環節出錯,整…

ansible常用模塊詳解

一、Ansible 1.1 簡介 Ansible是自動化運維工具,能實現跨主機對應用編排管理部署。 Ansible能批量配置、部署、管理上千臺主機,是應用級別的跨主機編排工具。 比如以前需要切換到每個主機上執行的一或多個操作,使用Ansible只需在固定的一…

程序員必會英文語句 – 前后端交流篇

很多程序員日常用不到說英語的場景,或者遇到不會的英文單詞直接一查就可以了。但也有很多程序員面試的時候要求來一場英文的表述,最近的工作呢,需要和外國人的后端開發交流,所以我整理了一下我日常用到的英文語句,也許…

Mybatis-Plus的筆記

Mybatis-Plus其實是Mybatis的升級版,他簡化了原先mybatis需要手動寫CURD語句轉而繼承BaseMapper來實現。具體變化如下: 1,MyBatis-Plus簡介:MP,是mybatis的增強工具,是基于mybatis上開發的。 特點&#xf…

智駕未來,一觸即達——探索全新加油App的無限可能

一、引言 隨著科技的飛速發展,智能出行已成為現代生活的重要組成部分。為了滿足廣大駕駛者的需求,我們傾力打造了一款全新的加油App,旨在為您的駕駛旅程提供前所未有的便捷與智能體驗。 二、產品概述 我們的加油App不僅是一款導航工具&…

windows如何看是否支持多核并行

在Windows中查看是否支持多核并行處理,可以通過以下幾種方法: 使用任務管理器: 右鍵點擊任務欄空白處選擇“任務管理器”。 切換到“性能”標簽頁。 查看“處理器”一欄,如果看到多個處理器核心,并且每個核心旁邊顯…

每日一道算法題 有效括號序列

題目 有效括號序列_牛客題霸_牛客網 (nowcoder.com) Python 1長度必須為偶數 2就像開心消消樂一樣,一左一右就消掉。 class Solution:def isValid(self , s: str) -> bool:# write code here# flag[(),{},[]]# for _ in range(len(s)//2):# for i in fl…

以HMO模式為核心,平安健康穩健前行

自2014年成立以來,平安健康始終聚焦解決“看病難、看病貴、看病遠”的痛點,通過科技手段優化醫療服務流程,降低用戶就醫成本。經過數年的耕耘,平安健康已成功轉型為一站式健康管理平臺,打通了醫療、藥品、康復等多個環…

力扣每日一題 6/27 字符串 貪心

博客主頁:誓則盟約系列專欄:IT競賽 專欄關注博主,后期持續更新系列文章如果有錯誤感謝請大家批評指出,及時修改感謝大家點贊👍收藏?評論? 2734.執行子串操作后的字典序最小字符串【中等】 題目: 給你一…

Java中的異常處理:Checked與Unchecked的區別

Java中的異常處理:Checked與Unchecked的區別 大家好,我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編,也是冬天不穿秋褲,天冷也要風度的程序猿! 異常處理概述 在Java編程中,異常處理是一…

MySQL定位CPU利用率過高的SQL方法

前言 當mysql CPU告警利用率過高的時候,我們應該怎么定位是哪些SQL導致的呢,本文將介紹一下定位的方法。 本文所使用的方法,前提是你可以登錄到Mysql所在的服務器,執行命令查看進程,當然讓數據庫管理員登錄執行也可以…

科研所文件數據很關鍵,外發圖紙如何控制?

圖紙是科研所整個科研周期中最重要的資料類型之一。這些圖紙主要用于描述和記錄研究過程中的各種設計、實驗裝置、設備或產品原型等。 首先,科研所在進行新技術、新產品或新方法的研發時,通常需要進行詳細的設計和規劃。在這個過程中,科研人員…