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
相关推荐
进阶小白猿8 小时前
Java技术八股学习Day36
学习
EverydayJoy^v^8 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
java_logo8 小时前
OpenProject Docker 容器化部署指南:从快速启动到生产环境配置
docker·容器·openproject·openproject部署·openproject部署手册·openproject部署方案·openproject部署教程
四维碎片10 小时前
【Qt】UDP跨平台调试工具
qt·学习·udp
曦云沐10 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
好奇龙猫10 小时前
【人工智能学习-AI入试相关题目练习-第十八次】
人工智能·学习
程序员辣条10 小时前
AI产品经理:2024年职场发展的新机遇
人工智能·学习·职场和发展·产品经理·大模型学习·大模型入门·大模型教程
wanping1582599234111 小时前
AI Agent(学习六-FAISS 持久化到磁盘(重启不丢记忆))
人工智能·学习·faiss
知识分享小能手11 小时前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019数据库的操作(2)
数据库·学习·sqlserver
cg_ssh12 小时前
Docker 下启动 Nacos 3.1.1 单机模式
运维·docker·容器