码迷,mamicode.com
首页 > 其他好文 > 详细

docker的LNMP架构实战

时间:2020-07-06 15:55:24      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:inf   efault   配置   ubunt   安装   原理   容器   font   run   

本次操作在Ubuntu18系统下操作,如在Centos系统下安装,命令可能会有区别,但是原理相同

前置条件:已经安装好docker,配置好yum源并且运行。

1.获取Mysql镜像并启动:

root@test:/etc/apt# docker pull mysql:5.7

## -d,--detach=false,指定容器运行在前台或者后台,默认问false

## -p,系统与docker之间做端口映射

## -e,--env=[],指定系统变量,让容器可以使用该环境变量

root@test:/etc/apt# docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name test_mysql mysql:5.7

2.获取php7.2镜像并启动:

root@test:/etc/apt# docker pull php:7.1-fpm

## -v:把系统目录挂载到容器中

##--link=[],指定容器之间的关联,使用其他容器的ip,env等信息

root@test:/etc/apt# docker run -d -v /var/www/html/:/var/www/html -p 9000:9000 --link test_mysql:mysql --name test_php php:7.1-fpm

2.1、测试php:

root@test:~# docker exec -it test_php /bin/bash

## 容器默认不安装vim命令,需自行安装:

root@ed987250e89f:/var/www/html# apt-get update 

root@ed987250e89f:/var/www/html# apt-get install vim

###编辑php测试程序,退出容器到系统目录下查看文件是否同步,同步即为成功:

技术图片

安装扩展模块:

root@ed987250e89f:/var/www/html# docker-php-ext-install pdo_mysql

技术图片

 

 4.获取Nginx:1.12镜像并启动

root@test:~# docker pull nginx:1.12.2

root@test:~# docker run -d -p 80:80 --name test_nginx -v /var/www/html/:/var/www/html --link test_php:phpfpm nginx:1.12.2

更加需求修改配置文件,该项目主要修改两个地方,nginx的默认访问目录和phpfpm的代理解析配置:

root@test:~# docker exec -it test_nginx /bin/bash
root@7c138d972c77:/# cd /etc/nginx/conf.d/

root@7c138d972c77:/etc/nginx/conf.d# vim default.conf 

技术图片

 技术图片

 ##重载nginx

root@7c138d972c77:/etc/nginx/conf.d# nginx -s reload

 4.测试:

技术图片

 

 在系统的/var/www/html下编写好代码文件:

技术图片

 

 

 在浏览器下可成功访问:

技术图片

 技术图片

 

 

注:本章节mysql容器虽然已经启动,但是还未使用到数据库,让php连接到数据库实现管理,在下一篇博客记录

 

docker的LNMP架构实战

标签:inf   efault   配置   ubunt   安装   原理   容器   font   run   

原文地址:https://www.cnblogs.com/liyuanshu/p/13255010.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!