站長資訊網
        最全最豐富的資訊網站

        解析docker怎么搭建lnmp環境(php7.4 + nginx )

        本篇文章給大家介紹一下linux 下docker的安裝方法,并詳細了解一下 docker 搭建 lnmp環境(php7.4 + nginx )的步驟,希望對大家有所幫助!

        解析docker怎么搭建lnmp環境(php7.4 + nginx )

        1. docker基礎

        1.1 docker的安裝

        docker的安裝非常簡單,我們可以直接使用centos系統中的yum命令進行安裝:

        yum install -y docker

        完成后查看docker的版本信息:

        [root@localhost docker]# docker version Client:  Version:         1.13.1  API version:     1.26  Package version: docker-1.13.1-204.git0be3e21.el7.x86_64  Go version:      go1.10.3  Git commit:      0be3e21/1.13.1  Built:           Fri Mar 19 13:57:09 2021  OS/Arch:         linux/amd64  Server:  Version:         1.13.1  API version:     1.26 (minimum version 1.12)  Package version: docker-1.13.1-204.git0be3e21.el7.x86_64  Go version:      go1.10.3  Git commit:      0be3e21/1.13.1  Built:           Fri Mar 19 13:57:09 2021  OS/Arch:         linux/amd64  Experimental:    false [root@localhost docker]#

        證明安裝完成,docker的命令如下:

        systemctl start docker   # 啟動docker systemctl stop docker    # 停止docker systemctl status docker  # 查看docker狀態 systemctl restart docker # 重新啟動docker

        sudo systemctl enable docker #設置docker 開機自啟

        在啟動之前我們需要修改docker的鏡像源:

        [root@localhost docker]# vim /etc/docker/daemon.json  {   "registry-mirrors": ["https://ftnejmh3.mirror.aliyuncs.com"] }

        完成后運行systemctl start docker,啟動docker服務。

        2. docker搭建lnmp環境

        環境軟件介紹:

        1. docker

        2. nginx

        3. mysql

        4. php7.4 【推薦學習:《PHP視頻教程》】

        docker搭建的lnmp目錄結構:

        docker │   └── nginx │   │   └── default.conf #nginx配置文件 │   └── www │       └── ...  #項目代碼

        2.1 docker搭建nginx

        我們可以使用docker search nginx命令查找 Docker Hub 上的 nginx 鏡像,這里直接拉取官方的鏡像

        [root@localhost ~]# docker pull nginx

        等待下載完成后,我們就可以在本地鏡像列表里查到 REPOSITORY 為 nginx 的鏡像。

        [root@localhost www]# docker images REPOSITORY       TAG       IMAGE ID        CREATED        SIZE docker.io/nginx  latest    62d49f9bab67    12 days ago    133 MB

        創建nginx配置

        [root@localhost ~]# cd /docker/nginx [root@localhost ~]# touch default.conf [root@localhost ~]# vim default.conf  server {     listen       80;     listen  [::]:80;     server_name  localhost;     root /docker/www/lmrs-2008/public;     index index.php index.html;      location / {         try_files $uri $uri/ /index.php?$query_string;     }      error_page   500 502 503 504  /50x.html;     location = /50x.html {         root   /docker/www/lmrs-2008/public;     }      location ~ .php$ {         root /docker/www/lmrs-2008/public;         fastcgi_pass   172.17.0.3:9000;    //容器的ip地址         fastcgi_index  index.php;         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;         include        fastcgi_params;     } }
        fastcgi_pass   172.17.0.3:9000;

        查看ip信息

        [root@localhost docker]# docker inspect php | grep "IPAddress"             "SecondaryIPAddresses": null,             "IPAddress": "172.17.0.3",                     "IPAddress": "172.17.0.3",

        使用nginx鏡像開啟nginx應用容器

        [root@localhost ~]# docker run -p 80:80 -d --name nginx -v /docker/nginx/default.conf:/etc/nginx/conf.d/default.conf -v /docker/www:/docker/www  --privileged=true nginx  -p 80:80:將容器的80端口映射到主機的80端口 -d 后臺運行(守護進程) --name nginx:將容器命名為nginx -v 將主機中當前目錄下的www掛載到容器的www目錄  #查看docker目前的容器 [root@localhost ~]# docker ps CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES 8781afd1bf13        nginx               "/docker-entrypoin..."   About an hour ago   Up 17 minutes       0.0.0.0:80->80/tcp                  nginx

        2.2 docker安裝php

        和nginx一樣,我們可以先通過docker search php查找鏡像,這里直接拉取官方的鏡像,標簽為7.4-fpm,其他版本的可自行選擇

        [root@localhost ~]# docker pull php:7.4-fpm

        等待下載完成后,我們就可以在本地鏡像列表里查到REPOSITORY為php,標簽為7.4-fpm的鏡像。

        [root@localhost docker]# docker images REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE docker.io/nginx     latest              62d49f9bab67        12 days ago         133 MB docker.io/php       7.4-fpm             41b17b0f90e6        2 weeks ago         405 MB

        使用php鏡像開啟php-frm應用容器

        [root@localhost docker]# docker run -p 9000:9000 -d --name php -v /docker/www:/docker/www --privileged=true php:7.4-fpm -p 9000:9000 :將容器的9000端口映射到主機的9000端口 -d 后臺運行(守護進程) --name php:將容器命名為php -v 將主機中當前目錄下的www掛載到容器的www目錄

        查看容器啟動情況

        [root@localhost docker]# docker ps -a CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES cbf73ca0f17c        php:7.4-fpm         "docker-php-entryp..."   About an hour ago   Up About an hour    0.0.0.0:9000->9000/tcp              php 8781afd1bf13        nginx               "/docker-entrypoin..."   About an hour ago   Up 23 minutes       0.0.0.0:80->80/tcp                  nginx

        到這里,可以看到nginx和php都運行成功(STATUS為up說明正在運行)

        查看nginx配置的php-fpm服務ip是否一致:

        location ~ .php$ {     root /docker/www/lmrs-2008/public;     fastcgi_pass   172.17.0.3:9000;     fastcgi_index  index.php;     fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;     include        fastcgi_params; }

        以上配置中fastcgi_pass 172.17.0.3:9000;需要與我們查看的php容器的ip一致。

        完成以上配置并且確定容器啟動沒有問題,可以進行測試:

        解析docker怎么搭建lnmp環境(php7.4 + nginx )

        訪問laravel可能出現目錄權限問題,以下是解決方式:

        [root@localhost docker]# cd /docker/www [root@localhost www]# chmod -R 777  文件名

        推薦學習:《docker視頻教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产精品污WWW一区二区三区| 亚洲一区二区三区国产精品| 久久久精品无码专区不卡| 2022国内精品免费福利视频| 亚洲欧美日韩精品久久亚洲区| 国产欧美在线观看精品一区二区| 国产精品99久久精品| 无码精品人妻一区二区三区免费看 | 欧美日韩精品系列一区二区三区| 女人香蕉久久**毛片精品| 国产精品无码久久久久久| 亚洲精品无码午夜福利中文字幕| 国语自产精品视频| 国产精品99久久精品爆乳| 欧美日韩精品在线| 久久国产乱子伦精品免费强| 国产精品成人观看视频国产奇米| 午夜精品乱人伦小说区 | 精品久久久久香蕉网| 亚洲欧美精品AAAAAA片| 日韩精品在线播放| 乱人伦人妻精品一区二区| 国产精品午夜免费观看网站| 国产成人毛片亚洲精品| 国产精品V亚洲精品V日韩精品 | 久久国产乱子伦免费精品| 无码精品A∨在线观看中文| 中文字幕精品一区| 亚洲AV无码久久精品蜜桃| 日本aⅴ精品中文字幕| 久久99精品久久久久久久久久| 久久精品一本到99热免费| 久久99国产综合精品| 国产精品污WWW在线观看| 国产精品视频白浆免费视频| 国产欧美精品一区二区三区| 99精品国产一区二区三区2021| 97精品久久天干天天天按摩| 成人精品综合免费视频| 久久成人精品视频| 99热精品毛片全部国产无缓冲|