步骤1:编写基础应用
1. 创建名为
helloworld-php
的新目录,并转到此目录中: mkdir helloworld-phpcd helloworld-php
2. 创建名为
index.php
的文件,并将以下代码粘贴到其中:<?phpecho sprintf("Hello World!");
说明:
此代码会对所有请求响应“Hello World”,HTTP 处理由容器中的 Apache Web 服务器进行。
步骤2:将应用容器化
1. 在项目根目录下,创建一个名为
Dockerfile
的文件,内容如下:# 使用官方 PHP 7.3 镜像.# https://hub.docker.com/_/phpFROM php:7.3-apache# 将本地代码复制到容器内COPY index.php /var/www/html/# Apache 配置文件内使用 80 端口RUN sed -i 's/80/80/g' /etc/apache2/sites-available/000-default.conf /etc/apache2/ports.conf# 将 PHP 配置为开发环境# 如果您需要配置为生产环境,可以运行以下命令# RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"# 参考:https://hub.docker.com/_/php#configurationRUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
2. 添加一个
.dockerignore
文件,以从容器映像中排除文件:DockerfileREADME.mdvendor
步骤3(可选):本地构建镜像
1. 如果您本地已经安装了 Docker,可以运行以下命令,在本地构建 Docker 镜像:
docker build -t helloworld-php
2. 构建成功后,运行
docker images
,可以看到构建出的镜像,随后您可以将此镜像上传至您的镜像仓库。REPOSITORY TAG IMAGE ID CREATED SIZEhelloworld-php latest 1c8dfb88c823 8 seconds ago 411MB