在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在Docker容器中運行Nginx

jf_ZqFkd6Up ? 來源:linux迷 ? 2023-02-17 09:30 ? 次閱讀

在本教程中,您將學習如何將 Nginx 作為 Docker 容器運行,并將其公開給您的本地網絡。此外,您將學習如何創建 Docker 數據卷以在容器和主機文件系統之間共享信息。

Nginx 是一種流行的開源軟件,用于 Web 服務、反向代理、緩存、負載平衡等。它非常流行并在當今許多高流量網站上使用。Docker 最常見的工作負載之一是使用它來容器化 Web 服務器。我們將向您展示如何使用 Nginx 進行設置。因此,讓我們帶您完成整個過程。

Docker 是一個容器化平臺,用于將您的應用程序打包成一個易于管理的容器映像。

先決條件

您必須滿足以下要求才能完成本教程:

Docker 應該已安裝并在您的系統上本地運行。

您需要一個 root 帳戶,或者用戶可以運行 sudo 命令。

在 Docker 中設置 Nginx

拉取鏡像

首先,我們將拉取官方的 Nginx 鏡像。在您的 docker 主機上,在終端上運行以下 Docker pull 命令以從 Docker hub下載 Nginx最新鏡像。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo docker pull nginx

ffa76b2a-ae16-11ed-bfe3-dac502259ad0.png

輸出如下:

Using default tag: latest
latest: Pulling from library/nginx
e1acddbe380c: Pull complete
e21006f71c6f: Pull complete
f3341cc17e58: Pull complete
2a53fa598ee2: Pull complete
12455f71a9b5: Pull complete
b86f2ba62d17: Pull complete
Digest: sha256:4d4d96ac750af48c6a551d757c1cbfc071692309b491b70b2b8976e102dd3fef
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest

運行 Nginx Docker 容器

現在,我們已準備好運行 Nginx Docker 容器并將其端口公開給您的本地網絡。為此,我們使用以下命令運行鏡像:

linuxmi@linuxmi:~/www.linuxmi.com$ docker run -d -p 80:80 --name my-nginx-server nginx

ffd9a5c2-ae16-11ed-bfe3-dac502259ad0.png

輸出如下:

f204ea685629dbc1d09b4a2d5f6fb64f5ef84be7d58a1b7449cc144c65c90c92
docker: Error response from daemon: driver failed programming external connectivity on endpoint my-nginx-server (27d91a249b151ea87841c46775647d7af43d12c3e753061531173f05016e485b): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use.

-d– 以分離模式啟動容器(容器在后臺運行)。

-p– 將一個端口從容器綁定到主機(將主機流量端口 80 路由到容器端口 80)。

-name– 我們的 Docker 容器的名稱。

最后一個參數“nginx”告訴 Docker 容器使用哪個鏡像。

現在打開瀏覽器訪問http://localhost,您應該會看到一個 Nginx Web 服務器提供其默認網頁。

00137a54-ae17-11ed-bfe3-dac502259ad0.png

就是這樣。你有一個 NGINX 的工作實例,通過 Docker 容器。

列出 Docker 容器

要列出所有正在運行的Docker 容器,請執行以下命令:

linuxmi@linuxmi:~/www.linuxmi.com$ sudo docker container ls -all

00727d2e-ae17-11ed-bfe3-dac502259ad0.png

根據上面的輸出,我們可以使用以下兩種方法的其中一種停止我們的 Nginx Docker 容器:

linuxmi@linuxmi:~/www.linuxmi.com$ docker stop f204ea685629
f204ea685629
linuxmi@linuxmi:~/www.linuxmi.com$ docker stop my-nginx-server
my-nginx-server

00bf491a-ae17-11ed-bfe3-dac502259ad0.png

要查看所有容器,甚至那些未運行的容器,您需要添加-a標志。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo docker container ls -a

00dfdc66-ae17-11ed-bfe3-dac502259ad0.png

在 Nginx Docker 容器和主機之間共享數據

Docker 容器是短暫的。默認情況下,在容器內創建的任何數據僅在容器內且僅在容器運行時可用。

因此,讓我們向您展示如何在主機上訪問容器內部的數據。我們的目標是創建一個簡單的 HTML 文件,將其托管在容器中,并使用 Nginx Docker 容器將其提供給外部。此設置允許我們擁有在容器外部托管的持久網站內容。

為了實現這個功能,我們將使用Docker 中的綁定掛載功能。使用綁定掛載時,主機上的文件或目錄會掛載到容器中。

因此,讓我們首先在主目錄中為您的網站內容創建一個新目錄。

linuxmi@linuxmi:~/www.linuxmi.com$ mkdir ~/www

現在讓我們創建一個簡單的 HTML 文件并在您的索引頁面上放置一些文本。

linuxmi@linuxmi:~/www.linuxmi.com$ vim ~/www/index.html

01098994-ae17-11ed-bfe3-dac502259ad0.png

編寫HTML代碼片段到里面。保存文件并退出 Vim。

接下來,我們將在容器上運行帶有附加卷的 Nginx Docker 容器/usr/share/nginx/html到當前保存文件的主機www目錄上index.html。

linuxmi@linuxmi:~/www.linuxmi.com$ docker run -d -p 80:80 -v ~/www:/usr/share/nginx/html/ --name my-nginx-server nginx

Nginx 容器默認設置為在/usr/share/nginx/html/.在上面的命令中,該-v選項設置了一個綁定掛載卷,它將 Nginx Docker 容器內部的目錄鏈接到主機上的目錄。/usr/share/nginx/html/~/www

Docker 使用 a:將主機路徑與容器路徑分開。主機路徑始終排在第一位。

現在,如果您瀏覽http://localhost,您將在顯示窗口上看到下面給出的輸出。

01329ca8-ae17-11ed-bfe3-dac502259ad0.png

就這樣。您現在有一個正在運行的 Nginx Docker 容器,它為自定義網頁提供服務。

結論

Nginx 和 Docker 可以很好地協同工作。在本教程中,我們演示了如何設置和使用 Nginx Docker 容器。現在,您還知道如何在容器和主機文件系統之間共享信息。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11380

    瀏覽量

    211353
  • 服務器
    +關注

    關注

    12

    文章

    9437

    瀏覽量

    86511
  • 容器
    +關注

    關注

    0

    文章

    502

    瀏覽量

    22199
  • nginx
    +關注

    關注

    0

    文章

    158

    瀏覽量

    12305
  • Docker
    +關注

    關注

    0

    文章

    496

    瀏覽量

    12193

原文標題:如何在 Docker 容器中運行 Nginx

文章出處:【微信號:Linux迷,微信公眾號:Linux迷】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何使用 Docker容器化技術

    一起打包,形成一個獨立的、可移植的容器。這些容器可以在任何支持 Docker 的平臺上運行,無論是開發環境、測試環境,還是生產環境,都能保持一致的
    的頭像 發表于 09-30 11:24 ?1.6w次閱讀

    Nginx在Windows/docker的使用

    nginx 是一個高性能的開源反向代理服務器和 web 服務器,一般用來搭建靜態資源服務器、負載均衡器、反向代理,本文將分享其在 Windows/docker 的使用,使用 nssm 部署成服務的方案腳本,局域網
    的頭像 發表于 01-03 10:20 ?2023次閱讀
    <b class='flag-5'>Nginx</b>在Windows/<b class='flag-5'>docker</b><b class='flag-5'>中</b>的使用

    使用WindowsDocker容器運行DL Streamer出現報錯怎么解決?

    使用 Windows* Docker 容器運行 DL Streamer。 遇到錯誤: gi.repository.GLib.GError: gst_parse_error: 無
    發表于 03-05 07:04

    何在Docker創建容器

    、OpenStack 集群和其他的基礎應用平臺。為了方便用戶使用和管理Docker容器,鐵威馬在TOS 4.0系統Docker 設計了一套友好的用戶界面,請參照相關幫助文件的指引
    發表于 01-03 15:58

    docker安裝nginx的詳細過程

    Centos7安裝nginx(二)之docker安裝nginx
    發表于 10-23 17:10

    Docker的端口映射和nginx安裝流程

    Docker的端口映射和nginx安裝
    發表于 04-14 11:44

    Docker端口映射和nginx安裝

    Docker的端口映射和nginx安裝
    發表于 04-17 11:44

    理解Docker容器并暢玩docker

    創建a1_rm容器呢?還是運行之前的命令docker run -it --name a1_rm alpine哈哈,a1_rm又滿血復活了,是不是很棒?-------------此外,如果容器
    發表于 11-05 09:54

    分享比較實用的Docker技巧

    1、docker top該命令是用來查看一個容器里面的進程信息的,比如你想查看一個nginx容器里面有幾個nginx進程的時候,可以執行如下
    發表于 12-13 06:40

    Docker容器管理命令(一)

    1、Docker容器管理命令的使用方法查看當前主機本地docker鏡像:啟動容器必須依賴鏡像,所以要獲取到鏡像的唯一標識docker
    發表于 04-20 17:55

    Docker 教程:如何將Helix QAC作為容器創建并運行

    在此 Docker 教程,你將學習如何創建 Helix QAC 并將其作為容器化鏡像運行Docker 的基本定義是一種開源和流行的操作
    的頭像 發表于 10-31 09:36 ?1079次閱讀
    <b class='flag-5'>Docker</b> 教程:如何將Helix QAC作為<b class='flag-5'>容器</b>創建并<b class='flag-5'>運行</b>

    docker容器容器之間通信

    Docker是一種輕量級容器化技術,能夠將應用程序及其依賴項封裝在一個獨立、可移植的容器。而容器化的應用程序通常是以分布式方式設計的,因此
    的頭像 發表于 11-23 09:36 ?1715次閱讀

    docker進入容器的方法有哪些

    執行命令。其基本用法為: docker exec -it 容器名稱/容器ID 命令 例如,執行以下命令進入正在運行
    的頭像 發表于 11-23 09:45 ?1.1w次閱讀

    docker容器有幾種狀態

    Docker 是一種流行的容器化平臺,它能夠幫助開發人員將應用程序和其依賴打包成一個獨立的容器,并且能夠在不同的環境中進行部署和運行。在 Docke
    的頭像 發表于 11-23 09:50 ?2544次閱讀

    華為 FlexusX 與 Docker+Nginx 的高效整合之路

    前言 華為 FlexusX 攜手 Docker+Nginx,高效整合,云端性能再升級!FlexusX 服務器,依托華為強大的技術實力,為 Docker 容器Nginx 服務器提供了
    的頭像 發表于 01-23 17:55 ?147次閱讀
    華為 FlexusX 與 <b class='flag-5'>Docker+Nginx</b> 的高效整合之路
    主站蜘蛛池模板: 成人黄色在线网站 | 久久精品国产精品亚洲毛片 | 免费深夜视频 | 四虎国产精品永免费 | 免费 的黄色| 色综合天天 | 天堂网www在线观看 天堂网www在线资源中文 | 狠狠干在线观看 | 超h高h文污肉 | 男人操女人视频免费 | 日本四虎影院 | 久久草在线播放 | 色综合天天综合网国产成人 | 视频二区中文字幕 | 在线欧美色 | 国产精品9999久久久久仙踪林 | 国产午夜a理论毛片在线影院 | 午夜免费r级伦理片 | 久久午夜宅男免费网站 | 久久精品国产99精品最新 | 美女久久久 | 九九热免费观看 | 干干干操操操 | 久久精品最新免费国产成人 | 韩日中文字幕 | 在线a人片免费观看不卡 | 久草色在线 | 国产免费福利网站 | 日本黄色影片在线观看 | 久久婷婷一区二区三区 | 激情六月婷婷开心丁香开心 | 亚洲不卡视频在线观看 | 激情五月激情综合 | 欧美一级在线观看播放 | 99热久久精品免费精品 | 四只虎免费永久观看 | 亚洲a在线播放 | 国产一区二区三区夜色 | 男女一进一出抽搐免费视频 | 日日噜噜夜夜狠狠久久丁香 | 四虎最新紧急入口4hu |