使用 Docker Compose 可以轻松地打包和部署 PHP 项目。
下面是一个基本的 Docker Compose 配置文件示例:
该配置文件中定义了两个服务:web 和 db。其中,web 服务使用本地的 Dockerfile 构建镜像,并将容器内部的 80 端口映射到主机的 80 端口,同时将主机的 ./app 目录挂载到容器的 /var/www/html 目录下。db 服务则使用官方的 MySQL 镜像,并指定了一些环境变量和数据卷。version: '3'
services:
web:
build: .
ports:
- "80:80"
volumes:
- ./app:/var/www/html
depends_on:
- db
db:
image: mysql:5.7
environment:
MYSQL_DATABASE: mydatabase
MYSQL_USER: myuser
MYSQL_PASSWORD: mypassword
MYSQL_ROOT_PASSWORD: myrootpassword
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
在本地 PHP 项目的根目录下,创建 Dockerfile 文件,如下所示:
FROM php:7.4-apache
RUN docker-php-ext-install mysqli pdo_mysql
COPY ./app/ /var/www/html/
该 Dockerfile 使用官方的 PHP 7.4 镜像作为基础镜像,并安装了 mysqli 和 pdo_mysql 扩展,然后将 ./app 目录下的所有文件复制到容器的 /var/www/html 目录下。 使用命令 docker-compose up 启动容器,使用命令 docker-compose down 关闭容器。 这样就可以使用 Docker Compose 打包和部署 PHP 项目了。如果需要添加其他服务,只需要在 Docker Compose 配置文件中添加相应的服务定义即可。
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。