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

        解析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號
        主站蜘蛛池模板: 精品无码一区二区三区爱欲九九| 精品久久一区二区三区| 国产亚洲精品美女久久久 | 国产AⅤ精品一区二区三区久久| 亚洲精品成人无限看| 久久精品18| 日本精品卡一卡2卡3卡四卡| 精品人妻中文字幕有码在线| 正在播放酒店精品少妇约| 久久国产精品偷99| 国产精品福利电影一区二区三区四区欧美白嫩精品 | 99久久精品国产免看国产一区| 亚洲国产成人久久精品99 | 99精品伊人久久久大香线蕉| 国产精品大白天新婚身材| 国内精品久久久久影院日本| 亚洲精品无码乱码成人| 四虎国产精品成人| 精品国产黑色丝袜高跟鞋| 国产AV国片精品一区二区| 亚洲精品人成在线观看| 久久国产精品国产自线拍免费| 国产99视频精品免视看7| 欧美jizzhd精品欧美| 自拍偷在线精品自拍偷| 亚洲欧洲久久久精品| 亚洲精品动漫免费二区| 无码精品第一页| 午夜三级国产精品理论三级 | 国产91久久精品一区二区| 97精品久久天干天天天按摩| 精品成在人线AV无码免费看| 精品久久久久久无码专区不卡| 精品一区二区三区免费毛片爱 | 2021国产成人精品国产| 8AV国产精品爽爽ⅴa在线观看| 精品无码日韩一区二区三区不卡| 国精品无码一区二区三区在线| 2022国内精品免费福利视频 | 91精品美女在线| 久久国产精品国产自线拍免费|