最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker + Nginx 部署配置指南

 更新時間:2026年04月30日 09:01:06   作者:瘋狂成癮者(Ethan)  
這篇文章給大家介紹Docker + Nginx 部署配置指南,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧

下面這 4 個文件通常是一套 Docker + Nginx 部署配置。它們各司其職:Dockerfile 負(fù)責(zé)“怎么構(gòu)建鏡像”,docker-compose.yml 負(fù)責(zé)“怎么編排和啟動容器”,nginx.conf 負(fù)責(zé)“Nginx 怎么轉(zhuǎn)發(fā)/服務(wù)請求”,.dockerignore 負(fù)責(zé)“構(gòu)建鏡像時哪些文件不要帶進(jìn)去”。

文件主要作用可以理解為
Dockerfile定義 Docker 鏡像如何構(gòu)建應(yīng)用的“鏡像制作說明書”
nginx.conf定義 Nginx 的運(yùn)行配置Web 服務(wù)器 / 反向代理的“路由規(guī)則”
docker-compose.yml定義多個容器如何一起運(yùn)行本地/服務(wù)器部署的“一鍵啟動配置”
.dockerignore排除不需要參與鏡像構(gòu)建的文件Docker 版 .gitignore

1.Dockerfile

Dockerfile 是一個文本文件,里面寫的是構(gòu)建 Docker 鏡像的指令。Docker 官方文檔說,Docker 會讀取 Dockerfile 中的指令來自動構(gòu)建鏡像;它本質(zhì)上包含了你原本可能在命令行里一步步執(zhí)行的構(gòu)建命令。(Docker Documentation)

常見作用包括:

FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
CMD ["npm", "start"]

它通常負(fù)責(zé):

  1. 指定基礎(chǔ)環(huán)境,比如 node、python、nginx。
  2. 拷貝項目代碼到鏡像中。
  3. 安裝依賴。
  4. 執(zhí)行構(gòu)建命令。
  5. 指定容器啟動后運(yùn)行什么命令。

在你的這組文件里,Dockerfile 很可能用于構(gòu)建前端項目、后端項目,或者自定義 Nginx 鏡像。

2.nginx.conf

nginx.conf 是 Nginx 的主配置文件。Nginx 官方文檔說明,Nginx 及其模塊的行為由配置文件中的指令決定;默認(rèn)配置文件通常叫 nginx.conf,可能位于 /usr/local/nginx/conf、/etc/nginx/usr/local/etc/nginx。(Nginx)

它常用于配置:

server {
    listen 80;
    location / {
        root /usr/share/nginx/html;
        index index.html;
    }
    location /api/ {
        proxy_pass http://backend:3000/;
    }
}

常見作用包括:

  1. 配置監(jiān)聽端口,例如 80443。
  2. 配置靜態(tài)資源目錄,例如前端打包后的 dist。
  3. 配置反向代理,例如把 /api 請求轉(zhuǎn)發(fā)給后端服務(wù)。
  4. 配置 HTTPS、緩存、壓縮、日志。
  5. 配置多站點(diǎn)、多域名、多路徑轉(zhuǎn)發(fā)。

Nginx 本身可以作為 HTTP Web 服務(wù)器、反向代理、緩存、負(fù)載均衡器、TCP/UDP 代理等。(Nginx)

在 Docker 項目里,nginx.conf 經(jīng)常配合 Dockerfiledocker-compose.yml 使用,比如把本地的 nginx.conf 掛載到容器里的 /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。

3.docker-compose.yml

docker-compose.yml 是 Docker Compose 的配置文件,用 YAML 格式描述一個應(yīng)用由哪些服務(wù)組成。Docker 官方文檔說明,Compose 文件用于配置 Docker 應(yīng)用的 servicesnetworks、volumes 等內(nèi)容。(Docker Documentation)

一個典型例子:

services:
  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - app
  app:
    build: .
    expose:
      - "3000"

它通常負(fù)責(zé):

  1. 定義有哪些容器服務(wù),比如 nginx、frontend、backend、mysqlredis。
  2. 指定服務(wù)使用哪個鏡像,或者從哪個 Dockerfile 構(gòu)建。
  3. 配置端口映射,比如 80:80、3000:3000。
  4. 配置數(shù)據(jù)卷掛載,比如掛載配置文件、數(shù)據(jù)庫數(shù)據(jù)目錄。
  5. 配置容器之間的依賴關(guān)系。
  6. 配置網(wǎng)絡(luò),使服務(wù)之間可以通過服務(wù)名互相訪問。

官方 Compose 規(guī)范中也提到,Compose 文件是一個 YAML 文件,核心結(jié)構(gòu)通常包括 services,也可以包括 networksvolumes、configs、secrets 等。(GitHub)

在你的這組文件里,docker-compose.yml 很可能是啟動整個項目的入口,例如:

docker compose up -d

4..dockerignore

.dockerignore 用來告訴 Docker:構(gòu)建鏡像時,哪些文件或目錄不要發(fā)送到構(gòu)建上下文里。Docker 官方文檔說明,構(gòu)建上下文中可以使用 .dockerignore 文件排除文件和目錄。(Docker Documentation)

典型內(nèi)容:

node_modules
.git
.env
dist
.DS_Store
*.log

它的作用主要是:

  1. 減小 Docker 構(gòu)建上下文。
  2. 加快鏡像構(gòu)建速度。
  3. 避免把無關(guān)文件復(fù)制進(jìn)鏡像。
  4. 避免泄露敏感文件,比如 .env、私鑰、日志。
  5. 避免把本地依賴目錄,如 node_modules,帶進(jìn)鏡像。

它和 .gitignore 很像,但作用對象不同:

文件作用對象
.gitignoreGit 提交時忽略哪些文件
.dockerignoreDocker 構(gòu)建鏡像時忽略哪些文件

這四個文件之間的關(guān)系

可以按部署流程這樣理解:

.dockerignore
   ↓
過濾不需要參與構(gòu)建的文件
Dockerfile
   ↓
根據(jù)項目代碼構(gòu)建 Docker 鏡像
nginx.conf
   ↓
配置 Nginx 如何訪問靜態(tài)文件、轉(zhuǎn)發(fā) API、監(jiān)聽端口
docker-compose.yml
   ↓
把 Nginx、應(yīng)用、數(shù)據(jù)庫等服務(wù)組合起來,一鍵啟動

一個常見前端項目部署流程可能是:

  1. .dockerignore 排除 node_modules、.git、日志等文件。
  2. Dockerfile 構(gòu)建前端項目,生成 dist。
  3. nginx.conf 配置 Nginx,把 dist 作為靜態(tài)網(wǎng)站目錄,并把 /api 轉(zhuǎn)發(fā)給后端。
  4. docker-compose.yml 啟動 Nginx 容器、后端容器、數(shù)據(jù)庫容器。

簡單說:

Dockerfile:做鏡像
docker-compose.yml:跑容器
nginx.conf:管請求
.dockerignore:減負(fù)和防泄露

到此這篇關(guān)于Docker + Nginx 部署配置指南的文章就介紹到這了,更多相關(guān)Docker Nginx 部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker安裝目錄遷移的兩種常用方法

    docker安裝目錄遷移的兩種常用方法

    docker目錄的遷移其實(shí)非常簡單,今天小編給大家分享兩種方法幫助大家解決docker安裝目錄遷移問題,感興趣的朋友跟隨小編一起看看吧
    2023-05-05
  • Docker安裝Redis容器的實(shí)現(xiàn)步驟

    Docker安裝Redis容器的實(shí)現(xiàn)步驟

    本文主要介紹了Docker安裝Redis容器的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 綁定Dokcer容器到主機(jī)指定網(wǎng)卡的方法

    綁定Dokcer容器到主機(jī)指定網(wǎng)卡的方法

    這篇文章主要介紹了綁定 Dokcer 容器到主機(jī)指定網(wǎng)卡的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Docker部署Django的詳細(xì)指南

    Docker部署Django的詳細(xì)指南

    部署Django應(yīng)用到Docker中的詳細(xì)步驟是一個較為復(fù)雜的過程,涉及到許多技術(shù)和工具的結(jié)合使用,本文將詳細(xì)介紹如何從零開始使用Docker部署Django應(yīng)用,感興趣的小伙伴跟著小編一起來看看吧
    2024-12-12
  • docker啟動elasticsearch時內(nèi)存不足問題及解決方法

    docker啟動elasticsearch時內(nèi)存不足問題及解決方法

    這篇文章主要介紹了docker啟動elasticsearch時內(nèi)存不足問題,本文給大家分享安裝過程及解決方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • docker鏡像的導(dǎo)入和導(dǎo)出的實(shí)現(xiàn)

    docker鏡像的導(dǎo)入和導(dǎo)出的實(shí)現(xiàn)

    這篇文章主要介紹了docker鏡像的導(dǎo)入和導(dǎo)出的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 徹底搞懂Docker鏡像分層的實(shí)現(xiàn)

    徹底搞懂Docker鏡像分層的實(shí)現(xiàn)

    本文我們會深入的學(xué)習(xí)Docker的鏡像分層的原理和實(shí)現(xiàn),通過實(shí)例和與git的類比,幫助我們加深對鏡像的理解,對Docker鏡像分層相關(guān)知識感興趣的朋友一起看看吧
    2022-02-02
  • Docker搭建MySQ主從復(fù)制原理

    Docker搭建MySQ主從復(fù)制原理

    這篇文章主要介紹了Docker搭建MySQ主從復(fù)制原理,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • CentOS 8.4安裝Docker的詳細(xì)教程

    CentOS 8.4安裝Docker的詳細(xì)教程

    這篇文章主要介紹了CentOS 8.4安裝Docker的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-11-11
  • Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫的方法

    Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫的方法

    這篇文章主要介紹了Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論

郯城县| 马公市| 济南市| 漳州市| 区。| 锦屏县| 文化| 沈阳市| 大石桥市| 沧州市| 南投市| 邮箱| 延安市| 新巴尔虎左旗| 吴忠市| 大方县| 铁岭市| 扬中市| 汶川县| 宁南县| 沐川县| 德保县| 昌宁县| 盐源县| 镇平县| 安吉县| 永修县| 休宁县| 哈尔滨市| 古交市| 日土县| 小金县| 邢台县| 尉氏县| 庄浪县| 桑植县| 商洛市| 孟津县| 德阳市| 邢台县| 霍林郭勒市|