docker 分布式 lnmp 镜像制作

Posted 小白的成功进阶之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 分布式 lnmp 镜像制作相关的知识,希望对你有一定的参考价值。

docker 分布式 lnmp 镜像制作

一、docker 分布式 lnmp 镜像制作

1、运行nginxmysqlphp容器

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

#查看3306809000端口是否被占用
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部署LNMP完整教程

Docker部署LNMP完整教程

Docker Dockerfile

简单几步就教会你如何使用 dockerfile 制作 LNMP 镜像,还不赶紧学起来

简单几步就教会你如何使用 dockerfile 制作 LNMP 镜像,还不赶紧学起来