Docker PHP 例子

docker可以执行任何应用程序。本章我们将创建一个Php应用,并使用docker运行它。

1. 创建项目目录

我们会把这个项目的相关文件,集中放到一个目录docker-php

[root@qikegu demo]# mkdir docker-php

2. 创建PHP文件

docker-php目录下,创建一个php文件:

qikegu.php


<?php echo "This is php app - qikegu.com" ?>

3. 创建Dockerfile

创建Php文件之后,我们需要创建一个Dockerfile,其中包含了Docker的指令。在docker-php目录下创建Dockerfile,文件名必须是Dockerfile

Dockerfile

FROM php:7.3
COPY . /var/www/php
WORKDIR /var/www/php
CMD ["php", "./qikegu.php"]

所有指令都大写,这是惯例。

现在docker-php目录下有2个文件:

[root@qikegu docker-php]# ls
Dockerfile  qikegu.php

4. 构建 Docker 镜像

切换到docker-php目录,运行docker build -t qikegu-php .命令,构建Docker镜像。Docker镜像可以任意取名,此处命名为qikegu-php


docker build -t qikegu-php . Sending build context to Docker daemon 3.072kB Step 1/4 : FROM php:7.3 7.3: Pulling from library/php 743f2d6c1f65: Already exists 6307e89982cc: Already exists 807218e72ce2: Already exists 5108df1d03f8: Already exists 6379b2ee8208: Pull complete 97904243782e: Pull complete 6f3a7ed1fc19: Pull complete e4924fe2ab64: Pull complete 57a3ef7493d5: Pull complete Digest: sha256:00f053cdb2e46bab5d9ea20c416a007aa84b15883b22a9073a83e1d2f96f0b55 Status: Downloaded newer image for php:7.3 ---> e1dce93645bd Step 2/4 : COPY . /var/www/php ---> d5c47dfa4f38 Step 3/4 : WORKDIR /var/www/php ---> Running in b6f81d4db002 Removing intermediate container b6f81d4db002 ---> 996e3419c48f Step 4/4 : CMD ["php -f", "qikegu.php"] ---> Running in 52957ffeebd4 Removing intermediate container 52957ffeebd4 ---> df09b84b2033 Successfully built df09b84b2033 Successfully tagged qikegu-php:latest [root@qikegu docker-php]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE qikegu-php latest 25c6fdde4da0 4 minutes ago 367MB ...

这里,最后使用docker images查看镜像,可以看到构建镜像成功。接下来就可以运行镜像了。

5. 运行 Docker 镜像

执行docker run qikegu-php命令运行镜像:

[root@qikegu docker-php]# docker run qikegu-php
This is php app - qikegu.com
[root@qikegu docker-php]#

可以看到,qikegu-php镜像成功运行,输出了一条信息。



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载