docker 学习-- 04 实践2 (lnpmr环境)

docker 学习 系列文章目录

docker 学习-- 01 基础知识

docker 学习-- 02 常用命令

docker 学习-- 03 环境安装

docker 学习-- 04 实践 1(宝塔)

docker 学习-- 04 实践 2 (lnpmr环境)


``

文章目录

  • [docker 学习 系列文章目录](#docker 学习 系列文章目录)
  • [1. 配置docker-compose 文件](#1. 配置docker-compose 文件)

1. 配置docker-compose 文件

1.2.先介绍一下这个环境

通过上边的我们可以很轻易的搭建起来一个宝塔 但这种方式没法在一个项目中使用 我想把一个项目放到一个文件件下 直接使用编排文件运行起来项目
于是我在码云 寻找了一个基础模版 在此基础上去做修改

git 地址如下 git clone https://gitee.com/buwangyun_bw/ldnmp

这是他的目录结构

bash 复制代码
/
├── conf                    配置文件目录
│   ├── conf.d              Nginx用户站点配置目录
│   ├── nginx.conf          Nginx默认配置文件
│   ├── mysql.cnf           MySQL用户配置文件
│   ├── php-fpm.conf        PHP-FPM配置文件(部分会覆盖php.ini配置)
│   └── php.ini             PHP默认配置文件
├── Dockerfile              PHP镜像构建文件
├── extensions              PHP扩展源码包
├── log                     Nginx日志目录
├── mysql                   MySQL数据目录
├── www                     PHP代码目录
├── docker-compose.yml      编排文件
└── source.list             Debian源文件

我在Dockerfile 文件 和 docker-compose.yml 做了修改 具体不在此展示 文章结尾我会放一个修改后的链接

bash 复制代码
php7.2 php5.6 php5.4 三个版本
mysql8 和mysql5.7 
redis5.0.3 
nginx 1.15.7  
phpMyAdmin
redisMyAdmin

这里环境 我们没必要全部跑起来只需要跑自己需要的

推荐命令

这里就直接跑了 php72 mysql8 redis 和nginx 常规项目已经够用了

如果需要安装其他扩展 请看文章最后

bash 复制代码
docker-compose up -d php72  mysql8 redis nginx 

1.2. 运行这个环境

下载完我们直接 进入 目录

复制两份文件

bash 复制代码
cp env.sample .env   # Windows系统请用copy命令,或者用编辑器打开后另存为.env
# copy env.sample .env

这里我们要注意一下 映射的端口 把这些我们需要的端口 都修改一下 线上的记得开对应的防火墙 或 安全组

修改完 之后执行

bash 复制代码
docker-compose up -d php72  mysql redis nginx 

执行完就是这个样子 后边 running 这个样子才是运行起来的

1.接着我们修改一下nginx 访问路径 win系统 下可以自己点击后边三个点 选择 view details 选择 files 找到 /etc/nginx/conf.d/localhost.conf


  1. 修改第五行 root /var/www/html/html/public/ 这里是模拟放了一个tp项目
  1. 也可以通过命令行去修改
bash 复制代码
#查看 运行的容器 如图3.1
docker ps  
#进入容器 运行的容器 
//exec 是在容器中打开新的终端,并且可以启动新的进程。用exit退出,不会导致容器的停止。
//attach 直接进入容器启动命令的终端,不会启动新的进程。用exit退出,会导致容器的停止。
docker exec -it 容器ID/容器名称 bashShell
docker attach 容器ID
 
ls -a 查看目录
cd  /etc/nginx/conf.d/
vim localhost.conf

3.1图

修改完记得重启 nginx

bash 复制代码
docker exec -it dnmp_nginx_1 nginx -s reload
相关推荐
xiaoyaolangwj12 分钟前
高翔【自动驾驶与机器人中的SLAM技术】学习笔记(十三)图优化SLAM的本质
学习·机器人·自动驾驶
静止了所有花开1 小时前
SpringMVC学习笔记(二)
笔记·学习
爱吃生蚝的于勒1 小时前
C语言内存函数
c语言·开发语言·数据结构·c++·学习·算法
L_cl3 小时前
Python学习从0到1 day26 第三阶段 Spark ④ 数据输出
学习
Mephisto.java4 小时前
【大数据学习 | HBASE】hbase的读数据流程与hbase读取数据
大数据·学习·hbase
红中马喽4 小时前
JS学习日记(webAPI—DOM)
开发语言·前端·javascript·笔记·vscode·学习
尘浮生6 小时前
Java项目实战II基于微信小程序的移动学习平台的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·学习·微信小程序·小程序
南猿北者6 小时前
docker Network(网络)
网络·docker·容器
Young_202202026 小时前
学习笔记——KMP
笔记·学习
行然梦实7 小时前
学习日记_20241110_聚类方法(K-Means)
学习·kmeans·聚类