全球领先的IT技术网站 |首页 |Tags |网站地图

您现在正在浏览:首页 » 开发频道 » 语言&工具 » Web » PHP » 如何开发一个 PHP 的 Docker 化应用(二)

RSS订阅

如何开发一个 PHP 的 Docker 化应用(二)

暂无Tags标签
摘要:

 目标:基于 PHP 的 Docker 基础镜像,开发一个 Docker 化的示例 PHP 应用 。

本项目代码维护在 DaoCloud/php-sample 项目中。

Docker 化应用的关键元素

  • 镜像是 Docker 应用的静态表示,是应用的交付件,镜像中包含了应用运行所需的所有依赖:包括应用代码、应用依赖库、应用运行时和操作系统。
  • Dockerfile 是一个描述文件,描述了产生 Docker 镜像的过程。详细文档请参见Dockerfile文档
  • 容器是镜像运行时的动态表示,如果把镜像想象为一个 Class 那么容器就是这个 Class 的 instance 实例。

一个应用 Docker 化的第一步就是通过 Dockerfile 产生应用镜像。

编写 Dockerfile

本次基础镜像使用 PHP 官方镜像,也可以根据自己的项目需求与环境依赖使用 定制的 PHP 基础镜像

因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。

官方镜像维护了自 5.4 版本起的所有 PHP 基础镜像,所有镜像均采用 debian:jessie 作为系统镜像。

首先,选择官方的 php:5.6-cli 镜像作为项目的基础镜像。

FROM daocloud.io/php:5.6-cli   

由于该示例代码较为简单,我们采用仅安装 PHP CLI 的 Docker 镜像来运行。

接着,将代码复制到目标目录。

COPY . /app   WORKDIR /app   CMD [ "php", "./hello.php" ]   

ADD 与 COPY 的区别,总体来说 ADD 和 COPY 都是添加文件的操作,其中 ADD 比 COPY 功能更多,ADD 允许后面的参数为 URL,还有 ADD 添加的文件为压缩包的话,它将自动解压。

CMD 为本次构建出来的镜像运行起来时候默认执行的命令,我们可以通过 docker run 的启动命令修改默认运行命令。

Dockerfile 具体语法请参考:Dockerfile

有了 Dockerfile 以后,我们可以运行下面的命令构建 PHP 应用镜像并命名为 my-php-app

docker build -t my-php-app .

最后,让我们从镜像启动容器:

docker run my-php-app

Welcome the world of Docker !  

0 »

开发专题

JavaScript成为网络霸主的“绯闻”
JavaScript成为网络霸主的“绯闻”

JavaScript正凭借新型工具与功能提升以极度夸张的速度吞噬整个世界。我们是否应该接受这一无法逆转的趋势? 还记得那些旧日往事吗?很多用户因为担心安全问题而在浏览器中禁用JavaScript。如...

C++是垃圾语言?!
C++是垃圾语言?!

Linux之父对C++进行了炮轰,说它是糟糕程序员的垃圾语言,可谓是一石激起千层浪,引起众多程序员朋友的关注和讨论。本专题给出正反方的讨论观点,供大家评说!另外,给出了编程语言的发展状况...

MySQL数据库入门与精通
MySQL数据库入门与精通

MySQL是一个跨平台的开源关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低...

最新资讯

热点文章

  • 24小时
  • 一周
  • 本月

相关热门文章

  • 本文暂无Tags标签