针对小白写的,大神请略过哈~
搭建前当然需要会Docker一些基础命令啦,这自行找文档学习了。如:菜鸟教程,觉得对小白挺容易入门的。
LANP|LNMP环境搭建主要分两种思路:一种是单容器,另一种是多容器
- 单容器:在一个容器里面,把所需工具(如:数据库、PHP等)全部安装一个容器即可。
- 优点:
学习简单,使用方便
, - 缺点:
则是当容器挂掉后,所有工具当然也就不能用了
。
- 多容器:把所有工具(如:数据库、PHP、NoSql等)分别单独安装各自的容易,通过一般通过映射的IP|名称,以及端口,使得工具之间进行正常交互。
- 优点:
相对独立任一个挂掉不会影响其他正常容器运行
, - 缺点:
管理成本相对高点,学习难度也相对高
。
什么是容器?怎么搭建容器?
- 容器可以理解成Linux 里面的Linux,容器通过映射提供给外部使用。
- 容器创建主要有三种:
- 第一种:通过docker run直接运行已有镜像进行生成容器,操作简单但只能简单的运行起一个容器,配置麻烦。且只配合于单容器。
- 第二种:编写dockerFile,相对前者难些,通过配置dockerFile配置构建镜像文件,使用其生成的镜像创建容器。优点配置一次可无限次使用,同样只适合于单容器的使用。
- 第三种:docker-compose,需要编写yml文件,可直接指定镜像或者dockerFile创建容器,适合用与多容器,即编辑一个文件即可创建多个容器。
* 注:推荐使用第三种,熟悉yml编写后,使用起来会更简单。本文简单举例也是 【第二种】+【第三种】,可前往 https://github.com/paitouge/docker-lnmp-redis下载参考练习
所有文件
- model (放所需工具的相应DockerFile)
- mysql
- DockerFile(定义镜像的文件,即可以构建容器配置也行)
- nginx
- DockerFile(定义镜像的文件,即可以构建容器配置
- php
- DockerFile(定义镜像的文件,即可以构建容器配置
- rdis
- DockerFile(定义镜像的文件,即可以构建容器配置
- …
- www(项目文件)
- docker-compose.yml
所有文件夹,甚至名字都可以自定义,但需要跟docker-compose和dockerFile里面配置所指定对应上。DockerFile不是必要的,可以直接在docker-compose把bind换成image,直接指定您要用的镜像。
就不详细解释很行代码了,致谢!