使用docker制作分布式lnmp 镜像

 更新时间:2021年06月01日 10:13:54   作者:小白的成功进阶之路  
最近在学习docker相关知识,顺便把docker制作分布式lnmp 镜像的过程分享给大家,包括Nginx配置文件和PHP文件的修改代码也一并给出,感兴趣的朋友跟随小编一起看看吧

LNMP 是代表 Linux 系统下的 Nginx、Mariadb、PHP 相结合而构建成的动态网站服务器架构。下面使用docker制作分布式lnmp 镜像。

一、docker 分布式 lnmp 镜像制作

1、运行Nginx、MySQL、PHP容器

#关闭防火墙及核心防护
systemctl disable firewalld
systemctl stop firewalld
setenforce 0

#查看3306、80及9000端口是否被占用
ss -natp | grep 3306
ss -natp | grep 80
ss -natp | grep 9000

#创建自定义网络
docker network create -d bridge --subnet 172.168.184.0/24 --gateway 172.168.184.1 lnmp

#运行Nginx容器
docker run -itd --name nginx --network lnmp -p 80:80 --ip 172.168.184.10 nginx:1.12.0

#运行MySQL容器
docker run -itd --name mysql --network lnmp -p 3306:3306 --ip 172.168.184.20 -e MYSQL_ROOT_PASSWORD=010230 mysql:5.7

#运行PHP容器
docker run -itd --name phpfpm --network lnmp -p 9000:9000 --ip 172.168.184.30 php:7.1-fpm

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2、修改Nginx配置文件和PHP文件

docker exec -it nginx /bin/bash
echo -e "server {
    listen       80;
    server_name  localhost;
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htmi index.php;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   172.168.184.30:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  \$document_root\$fastcgi_script_name;
        include        fastcgi_params;
    }
}" > /etc/nginx/conf.d/default.conf

nginx -s reload

docker exec -it phpfpm /bin/bash
mkdir -p /usr/share/nginx/html
echo "<?php
phpinfo();
?>" > /usr/share/nginx/html/index.php

在这里插入图片描述

在这里插入图片描述

4、进行测试

虚拟机输入localhost/index.php

在这里插入图片描述

本机输入 192.168.184.70/index.php (我虚拟机地址是192.168.184.70)

在这里插入图片描述

以上就是使用docker制作分布式lnmp 镜像的详细内容,更多关于docker分布式lnmp 镜像的资料请关注脚本之家其它相关文章!

相关文章

  • 安装Docker Desktop报错WSL 2 installation is incomplete的问题(解决报错)

    安装Docker Desktop报错WSL 2 installation is incomplete的问题(解决报错)

    这篇文章主要介绍了安装Docker Desktop报错WSL 2 installation is incomplete的问题,解决方法很简单只需我们自己手动更新一下,我们根据提示去微软官网下载最新版的wsl2安装后即可正常打开,需要的朋友可以参考下
    2021-06-06
  • centos6使用docker部署redis主从数据库操作示例

    centos6使用docker部署redis主从数据库操作示例

    这篇文章主要介绍了centos6使用docker部署redis主从数据库操作,结合实例形式分析了centos6环境下docker部署redis主从数据库相关命令与使用技巧,需要的朋友可以参考下
    2020-02-02
  • Docker搭建简单的应用栈与容器Hello World访问详解

    Docker搭建简单的应用栈与容器Hello World访问详解

    这篇文章主要介绍了Docker搭建简单的应用栈与容器Hello World访问,结合实例形式详细分析了Docker应用容器栈的获取、互联、启动、配置以及应用访问测试相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • docker run的--rm选项使用说明

    docker run的--rm选项使用说明

    这篇文章主要介绍了docker run的--rm选项使用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker image tag为什么出现none的原因及解决

    docker image tag为什么出现none的原因及解决

    当我们使用docker加载新的镜像时,有时候会发现Repository和Tag名称都为none的情况,这通常是由于没有指定正确的标签名称或者仓库名称所导致的,本文主要介绍了docker image tag为什么出现none的原因及解决,感兴趣的可以了解一下
    2023-10-10
  • 完美解决docker安装mysql后Navicat连接不上的问题

    完美解决docker安装mysql后Navicat连接不上的问题

    这篇文章主要介绍了完美解决docker安装mysql后Navicat连接不上的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Docker镜像导出与导入与拷贝实例分析

    Docker镜像导出与导入与拷贝实例分析

    在本篇文章里小编给大家整理的是关于Docker镜像导出与导入与拷贝实例分析,有需要的朋友们可以参考下。
    2020-02-02
  • docker run -v 挂载数据卷异常,容器状态一直是restarting的解决

    docker run -v 挂载数据卷异常,容器状态一直是restarting的解决

    这篇文章主要介绍了docker run -v 挂载数据卷异常,容器状态一直是restarting的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 关于docker容器优雅退出的问题详解

    关于docker容器优雅退出的问题详解

    在Docker大火的今天,我们能够非常方便的使用容器打包我们的应用程序,并且将它在我们的服务器上部署并运行起来。而下面这篇文章主要给大家介绍了关于docker容器如何优雅退出的问题,需要的朋友可以参考下。
    2017-09-09
  • docker update 命令及用法详解

    docker update 命令及用法详解

    docker update 命令动态更新容器配置,您可以使用此命令来防止容器消耗 Docker 主机的过多资源,本文给大家介绍docker update 命令及用法,感兴趣的朋友一起看看吧
    2023-08-08

最新评论