欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker掛載資料卷部署Nginx

 更新時間:2022年01月20日 12:01:00   作者:老馬-Max  
這篇文章介紹了Docker掛載資料卷部署Nginx,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

簡介

上一篇總結(jié)了下docker內(nèi)mysql的資料卷設(shè)置方式,走b/s方向怎么能忘記nginx呢?今天來補上這一篇。

Nginx資料卷

nginx的作用有很多,比如正向代理、反向代理、負(fù)載均衡、透明代理等,一般情況下使用較多的是反向代理和負(fù)載均衡。這些操作只需要修改配置文件就可以完成,所以我們只需要將配置文件同步在本地即可。nginx配置文件的路徑是 etc/nginx/nginx.conf ,首先創(chuàng)建對應(yīng)目錄和文件:

 

nginx1目錄下的nginx.conf也要創(chuàng)建,內(nèi)容空著就行。接下來查看鏡像是否正常:

如果還沒有下載鏡像,使用以下命令拉取鏡像(默認(rèn)最新版):

docker pull nginx

接下來運行容器:

docker run -itd -p 80:80 --name nginx001 -v /docker/nginx1/nginx.conf:/etc/nginx/nginx.conf nginx

解釋一下:

  • -itd:開啟交互模式,模擬終端,后臺運行
  • -p 80:80:對應(yīng)端口映射到宿主機
  • --name nginx001:自定義容器名稱
  • -v /docker/nginx1/nginx.conf:/etc/nginx/nginx.conf:將宿主機的對應(yīng)文件映射到nginx的配置文件

nginx:運行的鏡像名稱

運行以上命令以后,會返回隨機字符串代表容器創(chuàng)建成功:

查看運行中的容器:

沒有看到nginx001,肯定是運行的時候出錯了,我們來看一下錯誤信息:

大概意思是配置文件中沒有找到events節(jié)點。因為我們創(chuàng)建的文件內(nèi)容是空的,所以啟動容器的時候直接把對應(yīng)目錄下的nginx.conf給映射到nginx001里面的nginx.conf了,空配置的nginx當(dāng)然無法運行。

現(xiàn)在vi剛才本地創(chuàng)建好的nginx.conf,開始配置:

之前我在docker上部署了一個簡易的 .net core 程序,占用本地端口 1500 ,現(xiàn)在我把程序通過nginx反向代理到一個指定域名,并通過80端口訪問。配置文件寫好以后,重啟容器nginx001:

現(xiàn)在nginx001就成功啟動了,我們訪問一下剛才指定的域名:

nginx的配置已經(jīng)生效。

最后我們來嘗試一下docker重啟會不會導(dǎo)致配置初始化,重啟docker:

啟動兩個容器:

訪問頁面:

數(shù)據(jù)庫并沒有因為docker重啟而被初始化,證明資料卷已經(jīng)生效。以后再也不怕docker宕機而數(shù)據(jù)丟失了。

補充

nginx配置文件中的 proxy_pass 屬性,非docker環(huán)境配置的時候,localhost或127.0.0.1是可以正常生效的,但是在docker下nginx容器配置localhost或127.0.0.1時,有一個小坑導(dǎo)致無法完成實際的反向代理。因為容器運行時,docker會給它分配單獨的ip和端口,然后把docker占用的ip映射到容器ip(比如docker下mysql啟動后,使用localhost可以登陸客戶端)。但nginx啟動時,會先讀取配置文件,配置正確的話才會運行,所以容器運行成功后,docker才把本地ip映射進去。如果配置文件寫的是localhost或127.0.0.1,那么只有直接訪問容器的ip才會觸發(fā)反向代理。所以如果在服務(wù)器使用docker配置nginx,直接輸入服務(wù)器ip即可完成配置。

到此這篇關(guān)于Docker掛載資料卷部署Nginx的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker容器沒有權(quán)限寫入宿主機目錄的解決方案

    Docker容器沒有權(quán)限寫入宿主機目錄的解決方案

    這篇文章主要介紹了Docker容器沒有權(quán)限寫入宿主機目錄的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Docker容器綁定外部IP和端口的方法

    Docker容器綁定外部IP和端口的方法

    Docker允許通過外部訪問容器或者容器之間互聯(lián)的方式來提供網(wǎng)絡(luò)服務(wù)。這篇文章主要介紹了Docker容器綁定外部IP和端口的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • docker容器與centos宿主機時間一致設(shè)置方法

    docker容器與centos宿主機時間一致設(shè)置方法

    這篇文章主要介紹了docker容器與centos宿主機時間一致設(shè)置方法,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • 詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理

    詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理

    這篇文章主要介紹了詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • docker安裝mongoDB及使用方法詳解

    docker安裝mongoDB及使用方法詳解

    這篇文章主要給大家介紹了關(guān)于docker安裝mongoDB及使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-03-03
  • Docker Desktop更改鏡像存儲位置的實現(xiàn)

    Docker Desktop更改鏡像存儲位置的實現(xiàn)

    本文主要主要介紹了Docker Desktop更改鏡像存儲位置的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Docker中namespace隔離的實戰(zhàn)

    Docker中namespace隔離的實戰(zhàn)

    Namespace是Linux內(nèi)核的一個功能,用于隔離和管理系統(tǒng)資源,如進程、網(wǎng)絡(luò)和文件系統(tǒng)等,通過創(chuàng)建隔離的命名空間,系統(tǒng)可以實現(xiàn)容器化和資源隔離,提高系統(tǒng)的安全性和穩(wěn)定性,這種技術(shù)廣泛應(yīng)用于Docker等容器技術(shù)中,本文就來介紹一下Docker中namespace隔離的實戰(zhàn)
    2024-11-11
  • docker容器啟動失敗如何查看日志

    docker容器啟動失敗如何查看日志

    這篇文章主要介紹了docker容器啟動失敗如何查看日志問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • IntelliJ IDEA中Docker使用方式

    IntelliJ IDEA中Docker使用方式

    本文介紹了如何在IntelliJ IDEA中使用Docker插件進行Docker的配置和使用,包括下載插件、啟動Docker守護進程、配置Docker注冊表、構(gòu)建Docker鏡像以及發(fā)布鏡像加載容器配置
    2024-11-11
  • docker 創(chuàng)建RedHat8.5鏡像的命令

    docker 創(chuàng)建RedHat8.5鏡像的命令

    這篇文章主要介紹了docker 創(chuàng)建RedHat8.5鏡像的命令,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-03-03

最新評論