做了一次分享,主题《使用 Docker 搭建开发环境》,简单介绍了一下 Docker 的概念,演示了使用 Docker-compose 构建全套 PHP 环境。
主要内容
- 镜像、容器、仓库概念
- 容器与虚拟机的区别
- 使⽤ Docker 搭建 PHP 环境
- 介绍 docker-compose
什么是 Docker?
Docker 是⼀个基于 Linux 内核的 cgroup,namespace,以及AUFS 类的 Union FS 等技术,对进程进⾏封装隔离,属于操作系统层⾯的虚拟化技术。
最初实现是基于 LXC,从 0.7 版本以后开始去除 LXC,转⽽使⽤⾃⾏开发的 libcontainer,从 1.11 开始,则进⼀步演进为使⽤ runC 和 containerd。
Docker 在容器的基础上,进⾏了进⼀步的封装,从⽂件系统、⽹络互联到进程隔离等等,极⼤的简化了容器的创建和维护。使得 Docker 技术⽐虚拟机技术更为轻便、快捷。
Docker 应⽤场景
Docker 通常⽤于如下场景:
- web应⽤的⾃动化打包和发布;
- ⾃动化测试和持续集成、发布;
- 在服务型环境中部署和调整数据库或其他的后台应⽤;
- 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建⾃⼰的PaaS环境。
更多场景和优势
• 加速本地开发和构建流程,使其更加⾼效、更加轻量化
• 能够让独⽴服务或应⽤程序在不同的环境中,得到相同的运⾏结果
• ⽤ Docker 创建隔离的环境来进⾏测试
• Docker 可以让开发者先在本机构建⼀个复杂的程序或架构进⾏测试,⽽不是⼀开始就在⽣产环境部署、测试
• 构建⼀个多⽤户的平台即服务(PaaS)基础设施
• 为开发、测试提供⼀个轻量级的独⽴沙盒环境
Docker架构
Docker客户端和服务器
- Docker 是⼀个 C/S 架构的程序。Docker 客户端向服务器或守护进程发出请求,服务器或守护进程将完成所有⼯作并返回结果
- Docker 提供了⼀个命令⾏⼯具以及⼀整套 RESTful API
- 可以在同⼀台宿主机上运⾏ Docker 守护进程,也可以从⼀个本地客户端运⾏另⼀台宿主机上远程 Docker 守护进程
Docker镜像、容器、仓库
- 镜像是⼀个特殊的⽂件系统,提供容器运⾏所需的程序、⽂件、资源、配置,以及为运⾏时准备的配置参数(镜像
不是Dockerfile⽂件)
- 容器是是镜像的⼀个实例,是⼀个动态的概念,是运⾏状态下的镜像,它可以被创建、启动、停⽌、删除。(进程
隔离)
- 仓库是存放镜像的地⽅,如官⽅ Hub 仓库,上⾯有成千上万的镜像可以直接使⽤。
Docker-compose 介绍
Docker-compose 是 Docker 官⽅编排(Orchestration)项⽬之⼀,负责快速的部署分布式应⽤。
- Docker Compose 是⼀个 Python 写的⽤来定义和运⾏复杂应⽤的 Docker ⼯具。
- 使⽤ Compose 可以定义和运⾏多个 Docker 容器的应⽤,使⽤⼀条命令来启动所需应⽤,完成⼀切准备⼯作
使用 laradoc 搭建全套PHP环境步骤
仅需要三个步骤就完成了 PHP 全套环境的搭建,每次开机启动 PHP 环境也只需⼀个命令:
- 克隆 laradock
- 创建环境变量⽂件
- 使⽤ docker-compose 启动所需服务
PPT 下载
点击下载:https://oddyzfr8z.qnssl.com/w...
讲堂报名地址:https://segmentfault.com/l/15...
PHP笔试面试题精选(二)
课程简述
《PHP笔试面试题精选》课程系列分享关于 PHP 笔试面试会问到的一些问题和知识点,围绕 PHP、数据库、计算机网络、计算机操作系统、设计模式、WEB安全等多个方面进行。
课程内容
由于涉及到的问题和知识点比较多,本期主要讲 PHP基础、WEB安全、计算机网络三个方面有关的问题。
PHP基础方面
- PSR规范
- PHP新特性
- PHP_FPM性能调优
- Session垃圾回收机制
WEB安全
- XSS攻击原理和防范
- CSRF攻击原理和防范
- SQL注入攻击防范
- 密码哈希
计算机网络
- HTTP协议
- TCP/IP协议
- WebSocket连接过程
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。