本篇文章给大家分享的内容是关于如何通过Docker搭建一个swoft开发环境 ,内容很详细,有需要的朋友可以参考一下,希望可以帮助到你们。
Swoft
首个基于 Swoole 原生协程的新时代 PHP 高性能协程全栈组件化框架,内置协程网络服务器及常用的协程客户端,常驻内存,不依赖传统的 PHP-FPM,全异步非阻塞 IO 实现,以类似于同步客户端的写法实现异步客户端的使用,没有复杂的异步回调,没有繁琐的 yield,有类似 Go 语言的协程、灵活的注解、强大的全局依赖注入容器、完善的服务治理、灵活强大的 AOP、标准的 PSR 规范实现等等,可以用于构建高性能的Web系统、API、中间件、基础服务等等。
前言
Swoft
是一个在 Swoole
之上构建的一个高性能协程 PHP 全栈框架
,而 Swoole
在 PHPer
里面是一个高级技能,所以在相关的环境安装上也给许多人造成了很大的困扰,Swoft
更是如此,本文将通过 Docker
以一种极其简单的方式解决运行环境和开发环境的部署。
Docker
从百科上可以看到,Docker
是一个开源的的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux
机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口,也可以理解为我们可以将我们的代码和运行环境打包到一个容器中,打包好的容器可以发布本¥文来源gaodai$ma#com搞$代*码*网(搞代gaodaima码到任何流行的Linux
机器上,这里指的Linux机器其实并不准确,得益于Docker for Windows
项目和Hyper-V
的发展,Docker
也可以以不错的状态运行在Windows 10系统上,但笔者不建议将 Docker for Windows
用于生产环境上。
Docker 名词概念
这里对 Docker
常用的的一些名词进行简单的阐述和解释,以便新手对于下文的理解
Dockerfile
,Dockerfile
是Docker镜像
的描述文件,通过docker build
命令来构建成为镜像
镜像(
Image
),通过Dockerfile
构建得到,包含操作系统及运行环境容器(
Container
),容器是运行起来的镜像,可理解为镜像是Docker
生命周期中的构建和打包阶段,而容器则是启动和执行阶段镜像仓库(
Repository
),用于储存构建好的Docker镜像
的仓库,可理解为类似于Git
的仓库
安装 Docker
Docker
的安装流程并不复杂,本节将介绍 Linux
及 Windows 10
系统下的安装流程,而 Mac
系统上并不建议
采用 Docker
环境来运行或开发 Swoft
项目,因为在 Mac for Docker
上共享磁盘的性能极其的差,会导致 Swoft
在启动阶段耗时极长。
在 Linux
上安装 Docker
与 docker-compose
在 Linux
上通过 yum
和 apt-get
来 安装 Docker
的流程可谓是相当简单
CentOS:yum install docker -y
Ubuntu:apt-get install docker-engine -y
只需要根据系统的区别,在终端执行上面的一行命令即可完成 Docker
的安装,在安装完成之后我们需要执行一下 service docker start
命令来启动一下 Docker
服务。