Magento Cloud Docker 项目教程
1. 项目的目录结构及介绍
Magento Cloud Docker 项目的目录结构如下:
magento-cloud-docker/
├── .github/
├── .docker/
├── .magento/
├── .magento.docker/
├── .magento.app.yaml
├── .magento.env.yaml
├── .magento.cloud.yaml
├── .docker-compose.yml
├── .README.md
├── .LICENSE.txt
├── .COPYING.txt
├── .LICENSE_AFL.txt
├── .LICENSE_MIT.txt
目录介绍
.github/
: 包含 GitHub 相关的配置文件,如 issue 模板、PR 模板等。.docker/
: 包含 Docker 相关的配置文件和脚本。.magento/
: 包含 Magento 相关的配置文件和脚本。.magento.docker/
: 包含 Magento Docker 相关的配置文件和脚本。.magento.app.yaml
: Magento 应用的配置文件。.magento.env.yaml
: Magento 环境的配置文件。.magento.cloud.yaml
: Magento Cloud 的配置文件。.docker-compose.yml
: Docker Compose 的配置文件。.README.md
: 项目的说明文档。.LICENSE.txt
: 项目的许可证文件。.COPYING.txt
: 项目的版权声明文件。.LICENSE_AFL.txt
: AFL 许可证文件。.LICENSE_MIT.txt
: MIT 许可证文件。
2. 项目的启动文件介绍
Magento Cloud Docker 项目的启动文件主要是 .docker-compose.yml
文件。该文件定义了 Docker 容器的配置和启动方式。
.docker-compose.yml
文件介绍
version: '3.5'
services:
web:
image: magento/magento-cloud-docker-php:7.4-fpm-1.2
volumes:
- .:/var/www/html
ports:
- "80:80"
depends_on:
- db
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: magento
MYSQL_USER: magento
MYSQL_PASSWORD: magento
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
启动文件介绍
version: '3.5'
: 指定 Docker Compose 文件的版本。services
: 定义服务,包括web
和db
两个服务。web
: 定义 Web 服务,使用magento/magento-cloud-docker-php:7.4-fpm-1.2
镜像,挂载当前目录到/var/www/html
,映射端口80
,依赖db
服务。db
: 定义数据库服务,使用mysql:5.7
镜像,设置环境变量,挂载数据卷db_data
。
volumes
: 定义数据卷db_data
。
3. 项目的配置文件介绍
Magento Cloud Docker 项目的配置文件主要包括 .magento.app.yaml
、.magento.env.yaml
和 .magento.cloud.yaml
。
.magento.app.yaml
文件介绍
name: magento
type: php:7.4
build:
flavor: composer
disk: 2048
mounts:
"var":
path: "var"
"app/etc":
path: "app/etc"
"pub/media":
path: "pub/media"
"pub/static":
path: "pub/static"
relationships:
database: "db:mysql"
web:
locations:
"/":
root: "pub"
index:
- "index.php"
scripts: true
.magento.env.yaml
文件介绍
stage:
global:
MAGE_MODE: developer
MAGE_ROOT: /app
.magento.cloud.yaml
文件介绍
variables: