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

在Docker中構建并運行Nginx容器的完整教程

 更新時間:2024年09月14日 09:13:42   作者:神秘泣男子  
Docker 作為一種強大的容器化平臺,使得開發(fā)、測試和部署變得更加高效和靈活,Nginx 是一款廣泛使用的高性能 Web 服務器和反向代理服務器,適用于各種場景,在本教程中,我們將詳細介紹如何在 Docker 中構建并運行一個 Nginx 容器,需要的朋友可以參考下

前言

在現代應用程序開發(fā)中,容器化技術已成為一種流行的解決方案。Docker 作為一種強大的容器化平臺,使得開發(fā)、測試和部署變得更加高效和靈活。Nginx 是一款廣泛使用的高性能 Web 服務器和反向代理服務器,適用于各種場景,如靜態(tài)文件服務、負載均衡和 API 網關等。在本教程中,我們將詳細介紹如何在 Docker 中構建并運行一個 Nginx 容器,幫助開發(fā)者快速搭建和管理 Nginx 服務。

1.下載基礎鏡像

下載一個Nginx鏡像的鏡像基礎centos鏡像

docker pull centos

2.建立工作目錄

mkdir nginx
cd nginx

3.編寫Dockerfile文件

可以根據nginx安裝到編譯的過程來寫Dockerfile文件

在nginx目錄下執(zhí)行

vim Dockerfile
 
FROM centos:7
RUN rm -rf /etc/yum.repos.d/*
RUN curl -o /etc/yum.repos.d/aliyun.repo https://mirrors.aliyun.com/repo/Centos-7.repo
RUN yum install -y wget  proc-devel net-tools gcc gcc-c++ zlib zlib-devel make openssl-devel
RUN wget http://nginx.org/download/nginx-1.24.0.tar.gz
RUN tar zvxf nginx-1.24.0.tar.gz
RUN cd nginx-1.24.0 && ./configure --prefix=/usr/local/nginx && make && make install
EXPOSE 80
EXPOSE 443
CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"]

4.便攜執(zhí)行腳本內容

vim run.sh
#!/bin/bash
/usr/local/nginx/sbin/nginx

5.生成鏡像

 docker build -t nginx:mynginx .

1.docker build:這是 Docker 的命令,用于根據指定的 Dockerfile 構建一個新的鏡像。

2.-t nginx:mynginx:這是為生成的鏡像指定一個名稱和標簽。

3.nginx 是鏡像的名稱。4.mynginx 是鏡像的標簽。使用這種方式可以方便管理不同版本的鏡像。

  • .:**表示當前目錄是構建上下文,這個目錄下必須包含 Dockerfile 文件。Docker 會根據這個 Dockerfile 中的指令來構建鏡像。
構建過程

在你提供的輸出中,可以看到構建過程的各個階段:

加載構建定義:Docker 讀取 Dockerfile 的內容。

加載基礎鏡像:從 Docker Hub 獲取 centos:7 的元數據。

執(zhí)行 RUN 指令:

  • 清理默認的 yum 源。
  • 添加阿里云的 yum 源。
  • 安裝必要的包(如 wget, gcc, zlib 等)。
  • 下載 Nginx 的源代碼包。
  • 解壓 Nginx 包。
  • 編譯并安裝 Nginx。
  • 導出鏡像:將構建的內容導出為一個新的鏡像,命名為 nginx:mynginx。

6.啟動容器并測試

[root@localhost nginx]# docker run -d --name nginx01 -P  nginx:mynginx                                                  
f1489d3891a946dd667c11ac73fd588d5dd63021fbc89062cc152b33d24004d7

docker run:這是 Docker 的基本命令,用于創(chuàng)建并啟動一個新容器。

-d:表示以“分離模式”(detached mode)運行容器。容器將在后臺運行,而不是在當前終端中輸出日志。

--name nginx01:為新創(chuàng)建的容器指定一個名稱 nginx01。這樣可以方便后續(xù)管理和引用該容器,例如停止、啟動或刪除容器時使用該名稱。

-P:自動將容器的端口映射到主機上的隨機可用端口。Docker 會將容器內部的端口(例如 Nginx 默認的 80 端口)映射到主機的一個隨機端口上,這樣可以通過主機的這個隨機端口訪問容器內的服務。

nginx:mynginx:指定要使用的鏡像及其標簽。這里的 nginx 是鏡像名稱,mynginx 是鏡像的標簽。它表示你要運行的是名為 nginx 的鏡像的 mynginx 版本。

7. 查看端口狀態(tài)信息

查使用以下命令查看正在運行的容器及其端口狀態(tài):

docker ps

你將看到類似以下的輸出:

[root@localhost nginx]# docker ps
CONTAINER ID   IMAGE           COMMAND                   CREATED         STATUS         PORTS                                                                                NAMES
c99a84f4c5f4   nginx:mynginx   "/usr/local/nginx/sb…"   3 seconds ago   Up 2 seconds   0.0.0.0:32769->80/tcp, :::32769->80/

8. 進行訪問測試

現在,你可以通過主機的隨機端口訪問 Nginx 服務。例如,如果輸出中顯示 32769,則可以在瀏覽器中訪問 http://localhost:32769 來測試 Nginx 是否正常運行。

進行訪問測試

總結

通過以上步驟,我們成功地在 Docker 中構建并運行了一個 Nginx 容器。這一過程涵蓋了從下載基礎鏡像、創(chuàng)建工作目錄,到編寫 Dockerfile 和啟動容器的完整流程。以下是一些關鍵點的總結:

  1. 基礎鏡像的選擇:我們選擇了 CentOS 作為基礎鏡像,確保了與大多數 Linux 系統的兼容性,同時也為后續(xù)安裝 Nginx 提供了一個穩(wěn)定的環(huán)境。
  2. Dockerfile 的編寫:通過精心設計的 Dockerfile,我們能夠自動化安裝 Nginx 及其依賴項,簡化了手動配置的復雜性。這種方法不僅提高了構建的效率,還減少了人為錯誤的可能性。
  3. 容器化的優(yōu)勢:使用 Docker 運行 Nginx 使得服務的部署和管理變得更加靈活。容器可以快速啟動和停止,便于進行版本控制和環(huán)境隔離。
  4. 可擴展性和維護性:通過這種容器化的方式,后續(xù)的擴展和維護變得更加簡單。無論是增加新的功能,還是進行性能優(yōu)化,都可以通過更新 Dockerfile 和重建鏡像來實現,而不影響現有的服務。
  5. 快速訪問和測試:通過映射容器端口到主機的隨機端口,我們能夠方便地訪問 Nginx 服務,快速進行測試和驗證。這一特性使得開發(fā)人員可以在本地環(huán)境中進行高效的調試。

總之,這種方法不僅能夠幫助我們快速部署 Nginx 服務,同時也為后續(xù)的擴展和維護提供了便利。希望本教程對你有所幫助,激勵你在項目中使用 Docker 和 Nginx,提升開發(fā)和運維的效率。

以上就是在Docker中構建并運行Nginx容器的完整教程的詳細內容,更多關于Docker構建Nginx容器的資料請關注腳本之家其它相關文章!

相關文章

  • docker環(huán)境部署Hadoop集群教程

    docker環(huán)境部署Hadoop集群教程

    文章介紹了在Docker環(huán)境下部署Hadoop集群的步驟,包括ocker-compose.yml配置文件創(chuàng)建、Docker容器啟動集群驗證集群狀態(tài)數據持久化測試NamenodeDatanatannode數據持久化測試容器故障場景驗證持久化效果
    2026-05-05
  • docker network create命令的具體使用

    docker network create命令的具體使用

    docker network create命令用于創(chuàng)建一個新的網絡連接,本文就來詳細的介紹一下docker network create命令的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • docker搭建Jenkins以及基本使用圖文教程

    docker搭建Jenkins以及基本使用圖文教程

    Jenkins是一個廣泛使用的開源持續(xù)集成工具,它能夠自動化構建、測試和部署軟件項目,這篇文章主要給大家介紹了關于docker搭建Jenkins以及基本使用的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2024-04-04
  • Docker部署php運行環(huán)境(php-fpm+nginx)

    Docker部署php運行環(huán)境(php-fpm+nginx)

    Docker?是一種流行的容器化平臺,可以幫助開發(fā)人員快速創(chuàng)建、部署和管理容器化應用程序,本文將介紹如何使用?Docker?搭建?PHP?開發(fā)環(huán)境服務器,讓您能夠輕松地開始?PHP?開發(fā)工作,感興趣的可以了解一下
    2023-11-11
  • Docker 命令使用說明及常用組合命令示例

    Docker 命令使用說明及常用組合命令示例

    文章提供了Docker命令的使用說明,涉及容器生命周期管理、容器操作、容器信息查看、容器與主機間的數據操作、鏡像相關命令、網絡相關命令以及數據卷和系統相關命令,本文給大家介紹的很詳細,需要的朋友跟隨小編一起看看吧
    2025-10-10
  • Docker+Nginx+KeepaLived實現Nginx一主一從高可用方式

    Docker+Nginx+KeepaLived實現Nginx一主一從高可用方式

    在CentOS7主從服務器上部署Nginx容器并配置Keepalived實現高可用,通過虛擬IP自動切換,主從均需安裝Keepalived,配置健康檢查腳本監(jiān)控Nginx狀態(tài),故障時自動重啟或切換虛擬IP,需關閉防火墻和SELinux,并確保腳本有執(zhí)行權限
    2025-07-07
  • 淺談Docker 容器數據卷掛載小結

    淺談Docker 容器數據卷掛載小結

    本篇文章主要介紹了淺談Docker 容器數據卷掛載小結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • 如何通過Jenkins定期清理為None的鏡像詳解

    如何通過Jenkins定期清理為None的鏡像詳解

    這篇文章主要給大家介紹了關于如何通過Jenkins定期清理為None的鏡像的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-11-11
  • docker容器無法解析域名的解決方案

    docker容器無法解析域名的解決方案

    這篇文章主要介紹了docker容器無法解析域名的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-10-10
  • Docker Stack 部署web集群的方法步驟

    Docker Stack 部署web集群的方法步驟

    這篇文章主要介紹了Docker Stack 部署web集群的方法步驟,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02

最新評論

黄陵县| 社会| 沂水县| 桑植县| 彰化县| 元朗区| 台北县| 凤城市| 长顺县| 朝阳区| 新绛县| 菏泽市| 江都市| 浑源县| 喀喇沁旗| 沙坪坝区| 屏山县| 沂南县| 庐江县| 宣城市| 彩票| 广元市| 白水县| 南投市| 新邵县| 利辛县| 宜良县| 东丽区| 泰宁县| 晋州市| 铁力市| 郎溪县| 定远县| 仁寿县| 温泉县| 延寿县| 海阳市| 万年县| 长宁区| 东港市| 琼海市|