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

Docker部署nginx+php環(huán)境的全過程(簡單可用!)

 更新時間:2023年02月04日 14:32:34   作者:scosun  
最近在學(xué)docker,順便配置了一下docker中的nginx與php,發(fā)現(xiàn)網(wǎng)上的關(guān)于docker中配置nginx與php的資料很少,而且有的也很舊,沒有太多的參考性,下面這篇文章主要給大家介紹了關(guān)于Docker部署nginx+php環(huán)境的相關(guān)資料,需要的朋友可以參考下

第一步:安裝Docker

訪問下面地址,根據(jù)你的需要下載安裝docker運行環(huán)境。

下載docker desktop:https://www.docker.com/

如果你是Windows、macOS(Intel/M1)、Linux桌面OS,都可以下載到對應(yīng)版本進(jìn)行安裝,相對命令行方式,更加簡單方便。

安裝完成后,運行docker desktop,顯示如下界面:

在任務(wù)欄中會顯示docker的logo,這里以windows為例。

使用Windows系統(tǒng)下PowerShell或MacOS下終端.app,在命令行輸入

$ docker -v

如果docker運行環(huán)境安裝成功,將顯示當(dāng)前Docker的版本號。

第二步:安裝Nginx

使用docker pull命令,在線拉取nginx鏡像,如果沒有特殊版本需求,可直接輸入nginx:latest

$ docker pull nginx:latest

在docker desktop上,可以點擊images選項進(jìn)行查看,鏡像是否拉取成功。

 也可以通過命令行進(jìn)行查看:

$ docker images

第三步:安裝PHP

這里我們選擇7.4版本的php,如果沒有版本需求,也可以輸入php:latest

$ docker pull php:7.4-fpm

第四步:啟動PHP容器

$ docker run --name myphp-fpm -v /docker/nginx/www:/www -d ef0ed3bc573e

其中,myphp-fpm是我給php容器起的名字,/docker/nginx/www是我在本地創(chuàng)建的一個文件目錄,用來對應(yīng)docker的www,ef0ed3bc573e是php的鏡像ID。

容器啟動正常,在docker desktop的Containers選項中可以看到如下記錄,Status顯示running,代表容器啟動成功。

也可以使用命令行來查看

$ docker ps

第五步:啟動Nginx容器并關(guān)聯(lián)PHP,這一步很重要。

網(wǎng)上關(guān)于這一方面的介紹很多,但是很多描述的不清晰,對最新版本的兼容也不是很好。

$ docker run --name nginx -p 8080:80 -d -v /docker/nginx/www:/usr/share/nginx/html -v /docker/nginx/conf/conf.d:/etc/nginx/conf.d --link myphp-fpm:php nginx:latest

$ docker run --name nginx -p 8080:80 -d -v /docker/nginx/www:/usr/share/nginx/html -v /docker/nginx/conf/conf.d:/etc/nginx/conf.d --link myphp-fpm:php nginx:latest

這里要說明一下,筆者也是試過很多次才正常運行的,如果這一步操作不對,那么PHP就無法真長使用。

其中nginx是我起的nginx容器的名字

8080:80代表,通過瀏覽器訪問8080端口,在docker中對應(yīng)的是80端口

/docker/nginx/www是本地的掛載目錄,windows下也可以c:/docker/...加上盤符,/usr/share/nginx/html是nginx默認(rèn)的網(wǎng)頁root路徑

/docker/nginx/conf/conf.d是本地的掛載目錄,對應(yīng)的nginx路徑是/etc/nginx/conf.d,這個文件夾主要用于存放default.conf配置文件。

--link myphp-fpm:php 這個參數(shù)很重要,代表運行nginx的時候要關(guān)聯(lián)php容器。

很多朋友在嘗試該步操作的時候,會出現(xiàn)很多各種各樣的錯誤,例如缺少參數(shù),容器運行失敗等等。以上示例,請大家參考。

執(zhí)行結(jié)果:

容器運行狀態(tài):

第六部:復(fù)制配置文件和網(wǎng)頁文件到nginx容器中。

執(zhí)行到這一步,雖然nginx和php容器都已經(jīng)運行正常了,但是你通過瀏覽器訪問還是404。

原因在于nginx容器中沒有default.conf和index.php文件。所以,最后一步就是cp這兩個文件到nginx容器的制定目錄下,然后再重啟nginx容器。

$ docker cp /docker/nginx/www/index.php nginx:/usr/share/nginx/html
$ docker cp /docker/nginx/conf/conf.d/default.conf nginx:/etc/nginx/conf.d

這里給出index.php的內(nèi)容:

<?php
    echo phpinfo();
?>

和default.conf的內(nèi)容:

server {
    listen       80;
    server_name  localhost;
 
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm index.php;
    }
 
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
 
#fastcgi_pass 127.0.0.1:9000
    location ~ \.php$ {
        fastcgi_pass   myphp-fpm:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /www/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

最后通過瀏覽器訪問:

http://localhost:8080或者h(yuǎn)ttp://127.0.0.1:8080

至此,大功告成!

總結(jié)

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

相關(guān)文章

  • Docker安裝配置RabbitMQ的實現(xiàn)步驟

    Docker安裝配置RabbitMQ的實現(xiàn)步驟

    RabbitMQ是基于AMQP的一款消息管理系統(tǒng)。AMQP(Advanced?Message?Queuing?Protocol),是一個提供消息服務(wù)的應(yīng)用層標(biāo)準(zhǔn)高級消息隊列協(xié)議,其中RabbitMQ就是基于這種協(xié)議的一種實現(xiàn)
    2021-11-11
  • docker安裝使用系列之交叉編譯詳解

    docker安裝使用系列之交叉編譯詳解

    在x86平臺上使用Docker實現(xiàn)跨平臺編譯ARM端程序,需要安裝Docker,拉取包含ARM工具鏈的鏡像,啟動QEMU支持,并使用相應(yīng)的Dockerfile進(jìn)行構(gòu)建,構(gòu)建完成后,可以運行并測試ARM程序,導(dǎo)出所需文件,若在ARM平臺運行x86鏡像,需使用Rosetta2等工具
    2024-10-10
  • docker中nginx的默認(rèn)路徑位置和映射目錄啟動方式

    docker中nginx的默認(rèn)路徑位置和映射目錄啟動方式

    這篇文章主要介紹了docker中nginx的默認(rèn)路徑位置和映射目錄啟動方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Docker Namespace容器隔離的實現(xiàn)

    Docker Namespace容器隔離的實現(xiàn)

    Namespace是Docker容器中的一種隔離機制,通過劃分資源獨立空間,確保容器之間互不干擾,本文主要介紹一下Docker Namespace容器隔離的實現(xiàn),感興趣的可以了解一下
    2024-11-11
  • Dockerfile的CMD指令用法

    Dockerfile的CMD指令用法

    這篇文章主要介紹了Dockerfile的CMD指令用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • docker的harbor倉庫登錄問題小結(jié)

    docker的harbor倉庫登錄問題小結(jié)

    在使用Docker?Harbor時,可能會因為證書信任問題或DNS解析問題導(dǎo)致登錄失敗,解決方法包括將自簽名證書添加到系統(tǒng)的可信證書存儲中,本文給大家介紹docker的harbor倉庫登錄問題,感興趣的朋友一起看看吧
    2024-09-09
  • docker自建GitLab倉庫的實現(xiàn)

    docker自建GitLab倉庫的實現(xiàn)

    Harbor是一個用于存儲和分發(fā)Docker鏡像的企業(yè)級Registry服務(wù)器,本文主要介紹了docker自建GitLab倉庫的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • docker如何動態(tài)查看日志最后100行

    docker如何動態(tài)查看日志最后100行

    這篇文章主要介紹了docker如何動態(tài)查看日志最后100行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教<BR>
    2024-01-01
  • 解決docker pull被復(fù)位出現(xiàn)的問題

    解決docker pull被復(fù)位出現(xiàn)的問題

    這篇文章主要介紹了解決docker pull被復(fù)位出現(xiàn)的問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • Docker部署Mysql8.0.20并配置主從復(fù)制的實現(xiàn)步驟

    Docker部署Mysql8.0.20并配置主從復(fù)制的實現(xiàn)步驟

    主從復(fù)制是指數(shù)據(jù)可以從一個MySQL數(shù)據(jù)庫服務(wù)器主節(jié)點復(fù)制到一個或多個從節(jié)點,本文主要介紹了Docker部署Mysql8.0.20并配置主從復(fù)制的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06

最新評論

盘锦市| 商丘市| 嘉善县| 仙游县| 花莲县| 金乡县| 安福县| 晋宁县| 北安市| 马公市| 凤冈县| 温泉县| 新乡县| 苏尼特右旗| 东山县| 怀化市| 仁化县| 皮山县| 黄梅县| 屏东市| 甘孜| 巴东县| 扎鲁特旗| 新野县| 延川县| 开鲁县| 鄂伦春自治旗| 石家庄市| 湖州市| 新干县| 兰西县| 中卫市| 杂多县| 沁水县| 万载县| 布尔津县| 郧西县| 新野县| 高雄市| 绥阳县| 开平市|