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

docker部署nginx服務(wù)的實(shí)現(xiàn)步驟

 更新時(shí)間:2023年08月25日 14:47:35   作者:lws_163  
本文主要介紹了docker部署nginx服務(wù)的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

我的一點(diǎn)點(diǎn)docker部署服務(wù)習(xí)慣,就是喜歡使用官方的鏡像,如果沒有官方的鏡像或者官方的鏡像不好用,我會(huì)找第三方使用量比較多的鏡像。這個(gè)習(xí)慣是基于安全的考慮,畢竟官方做得稍微安全點(diǎn),有漏洞也更新最快。

一、nginx的image準(zhǔn)備

1、docker search 搜索nginx

如如圖所示,STARS 第一為17705是官方的mysql鏡像。第三方bitnami/mysql的STARS為79。

2、https://hub.docker.com鏡像站搜索nginx

如圖所示,第一個(gè)是nginx的官方鏡像。

二、nginx官方部署nginx方法

1、docker 啟動(dòng)一個(gè)簡單的nginx 實(shí)例

docker run  \
--name some-nginx \
-v /data/nginx/html:/usr/share/nginx/html:ro \
-d \
nginx
  • docker run:是啟動(dòng)一個(gè)docker 容器的命令。完整書寫方法應(yīng)該是docker container run。
  • --name some-nginx: 給nginx容器起個(gè)名字,為some-nginx。
  • -v /data/nginx/html:/usr/share/nginx/html:ro:v是volume的首字母,是卷的意思。就是把容器的目錄綁到宿主機(jī)上的目錄,好方便我們查看文件,修改文件?,F(xiàn)在這個(gè)/data/nginx/html是宿主機(jī)上存放web文件的目錄,/usr/share/nginx/html是nginx容器里的目錄,ro是容器內(nèi)不能修改,會(huì)提示read-only。
  • -d: d是detach的首字母,可以理解為后臺(tái)運(yùn)行這個(gè)nginx容器。
  • nginx:指的nginx的鏡像名。tag是給一個(gè)版本nginx打個(gè)標(biāo)簽,如果不加:tag默認(rèn)為nginx:latest。nginx最新鏡像。

官方還有一個(gè)加載靜態(tài)文件的方法,就是以nginx官方鏡像為基礎(chǔ)鏡像,把靜態(tài)文件目錄復(fù)制 到新的鏡像里,這樣就不用綁定nginx需要內(nèi)容目錄。這個(gè)方法應(yīng)該不常用。除了你特別需求,不建議使用。

官方用生成一個(gè)加載靜態(tài)文件的鏡像啟動(dòng)nginx服務(wù)的方法

2、docker 啟動(dòng)一個(gè)暴露外網(wǎng)端口nginx 實(shí)例

#官方nginx鏡像暴露端口是80

 dockerfile暴露的端口是80

#啟動(dòng)一個(gè)綁定外網(wǎng)端口是8080的nginx容器

docker run \
--name some-nginx \
-v /data/nginx/html:/usr/share/nginx/html:ro \
-p 8080:80 \
-d \
nginx

如果宿主機(jī)的ip是192.168.1.10,向nginx發(fā)起請(qǐng)求地址是http://192.168.1.10:8080

3.docker 啟動(dòng)一個(gè)暴露外網(wǎng)端口和nginx配置文件路徑的nginx 實(shí)例

假設(shè)宿主機(jī)的nginx配置文件存放目錄/data/nginx/nginxconf,如果手頭沒有nginx配置文件,可以把容器的nginx配置文件復(fù)制到/data/nginx/nginxconf,不過先要啟動(dòng)一下沒有綁配置的nginx容器,復(fù)制配置文件,刪除這個(gè)nginx容器,最后就可以啟動(dòng)綁定nginx配置文件路徑的nginx 實(shí)例。整個(gè)操作步驟如下:

第一步啟動(dòng)一個(gè)不綁定nginx配置文件的容器

docker run \
--name some-nginx \
-v /data/nginx/html:/usr/share/nginx/html:ro \
-p 8080:80 \
-d \
nginx

第二步復(fù)制some-nginx里nginx配置文件到宿主機(jī)的/data/nginxconf下

docker cp nginx:/etc/nginx  /data/nginx/nginxconf
mv /data/nginx/nginxconf/nginx/*  /data/nginx/nginxconf/
rm -rf /data/nginx/nginxconf/nginx

第三步刪除nginx容器

docker rm -f some-nginx

第四步啟動(dòng)綁定nginx配置文件的nginx容器

docker run \
--name some-nginx \
-v /data/nginx/html:/usr/share/nginx/html:ro \
-v /data/nginx/nginxconf:/etc/nginx:ro \
-p 8080:80 \
-d \
nginx

-v /data/nginx/nginxconf:/etc/nginx:ro:/data/nginxconf宿主機(jī)上存儲(chǔ)nginx的配置文件路徑。/etc/nginx是容器里nginx配置文件路徑。

三、nginx容器里運(yùn)行nginx用戶

 上圖是截至nginx官方說明,意思如下:

從1.17.0開始,基于alpine和debian的鏡像變體都使用相同的用戶和組id來刪除工作進(jìn)程的特權(quán)(容器nginx運(yùn)行用戶是nginx ,uid和gid都是101)

id nginx
uid=101(nginx) gid=101(nginx) groups=101(nginx)

可以將映像作為特權(quán)較低的任意UID/GID運(yùn)行。然而,這需要修改nginx配置,以使用特定UID/GID對(duì)可寫的目錄??梢圆挥胣ginx用戶運(yùn)行nginx,我覺得沒有必要修改運(yùn)行用戶。

四、docker-compose啟動(dòng)nginx服務(wù)

#nginx的docker-compose.yml文件,存放在/data/nginx/下

version: '3.7'
services:
  nginx:
    image: nginx
    restart: always
    hostname: nginx
    container_name: nginx
    privileged: true
    ports:
      - 8080:80
    volumes:
      - /data/nginx/nginxconf:/etc/nginx
      - /data/nginx/html:/usr/share/nginx/html
      - /data/nginx/logs/:/var/log/nginx/

/data/nginx/logs/:/var/log/nginx/ 加了一個(gè)日志映射到宿主機(jī)目錄。好查看日志文件。

#docker-compose啟動(dòng)nginx

docker-compose -f  /data/nginx/docker-compose.yml up -d

 到此這篇關(guān)于docker部署nginx服務(wù)的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)docker部署nginx服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Centos7 安裝部署Kubernetes(k8s)集群實(shí)現(xiàn)過程

    Centos7 安裝部署Kubernetes(k8s)集群實(shí)現(xiàn)過程

    這篇文章主要為大家介紹了Centos7 安裝部署Kubernetes(k8s)集群實(shí)現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • docker部署數(shù)據(jù)可視化平臺(tái)Metabase

    docker部署數(shù)據(jù)可視化平臺(tái)Metabase

    Metabase 把數(shù)據(jù)分析常用的查詢通過一個(gè)個(gè)易于操作的界面呈現(xiàn),本文主要介紹了docker部署數(shù)據(jù)可視化平臺(tái)Metabase,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-04-04
  • Mac上使用Docker如何快速啟動(dòng)MySQL測(cè)試

    Mac上使用Docker如何快速啟動(dòng)MySQL測(cè)試

    本文主要討論如何使用Docker快速啟動(dòng) MySQL 測(cè)試,包括Mac環(huán)境。非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • Docker MySQL無法被宿主機(jī)訪問的問題解決

    Docker MySQL無法被宿主機(jī)訪問的問題解決

    本文主要介紹了Docker MySQL無法被宿主機(jī)訪問的問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程

    借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程

    這篇文章主要介紹了借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • docker 文件存放路徑, 修改端口映射操作方式

    docker 文件存放路徑, 修改端口映射操作方式

    這篇文章主要介紹了docker 文件存放路徑, 修改端口映射操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • idea鏈接不上虛擬機(jī)的docker里的mongodb問題及解決

    idea鏈接不上虛擬機(jī)的docker里的mongodb問題及解決

    這篇文章主要介紹了idea鏈接不上虛擬機(jī)的docker里的mongodb問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Docker如何實(shí)現(xiàn)離線安裝

    Docker如何實(shí)現(xiàn)離線安裝

    文章介紹了如何在離線環(huán)境中安裝Docker,并將其注冊(cè)為系統(tǒng)服務(wù),主要內(nèi)容包括下載Docker二進(jìn)制文件、上傳到服務(wù)器、解壓安裝包、配置系統(tǒng)服務(wù)以及驗(yàn)證安裝是否成功
    2024-11-11
  • Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    本文主要介紹了Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟,通過將Java應(yīng)用程序打包成一個(gè)Docker鏡像,可以實(shí)現(xiàn)快速部署、資源隔離和靈活擴(kuò)展,感興趣的可以了解一下
    2024-03-03
  • Docker的基本命令使用筆記

    Docker的基本命令使用筆記

    這篇文章主要介紹了Docker的基本命令使用筆記,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06

最新評(píng)論