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
相关推荐
春水碧于天,画船听雨眠11 分钟前
LangChain学习笔记(一)
笔记·学习·langchain
cuiyaonan200013 分钟前
some weird issues regarding docker
运维·docker·容器
zerwave16 分钟前
Docker 学习:多容器网络互通——从 host 模式到自定义 bridge 网络
网络·学习·docker
Zzj_tju18 分钟前
Instruction Tuning 论文精读路线:从 Supervised Fine-Tuning 到 Instruction Following
人工智能·笔记·学习·语言模型·自然语言处理
j7~1 小时前
【Linux】二十八.线程篇五《Linux多线程编程:线程同步之条件变量》---详解
linux·运维·c++·学习·条件变量·线程同步
程序喵大人1 小时前
【C++进阶】STL容器与迭代器 - 10 把容器、迭代器和数据流串成一个小程序
开发语言·c++·容器·小程序·迭代器·stl
min(a,b)2 小时前
学习第10天:日志、测试、配置与容器化部署
学习
xqqxqxxq2 小时前
AI Agent学习:用户记忆系统(李博杰《深入理解 AI Agent》3.1观后总结)
人工智能·学习
wangyue_msn_862 小时前
Agent知识学习笔记——01 Prompt/Function call/记忆/上下文
笔记·学习·prompt
呱呱巨基2 小时前
CMake基础
linux·c++·笔记·学习