>本教程通过使用Docker(当前的最佳实践)来建立PHP开发环境。 我们将介绍PHP开发环境的演变,突出显示Docker的优势,例如手动安装,预配置软件包(XAMPP/WAMP)和Vagrant。
为什么要docker?
Docker提供了几个关键改进:
设置您的docker环境:
> >
>先决条件:下载并安装docker。 在Linux上,您可能需要将用户添加到>组中并启动Docker Service。
docker
1。项目设置:
文件。docker-compose.yml
>(nginx):
docker-compose.yml
>这使用了最新的NGINX映像,并在主机上的映射端口80到容器中的端口80。
version: '3' services: web: image: nginx:latest ports: - "80:80"
>打开终端,导航到项目文件夹,然后运行
。 您应该在>中查看nginx的测试页面
4。添加卷:docker-compose up
要访问您的项目文件,将卷添加到http://127.0.0.1
>:
创建:
docker-compose.yml
version: '3' services: web: image: nginx:latest ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/conf.d/nginx.conf - ./app:/app
>
5。添加php:>将PHP服务添加到docker-compose.yml
>:
version: '3' services: web: image: nginx:latest ports: - "80:80"
处理php文件:nginx.conf
version: '3' services: web: image: nginx:latest ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/conf.d/nginx.conf - ./app:/app
。重新启动docker。app/public/index.php
6。自定义PHP映像(带有扩展):<?php phpinfo(); ?>
为了更好地控制,请创建一个具有扩展名的自定义PHP图像:
创建:
修改PHP.Dockerfile
:
server { listen 80 default_server; root /app/public; }
rundocker-compose.yml
和
version: '3' services: web: # ... (Nginx configuration) php: image: php:fpm volumes: - ./app:/app
7。添加mysql(mariaDB):docker-compose build
>添加MariaDB服务:docker-compose up
> 结论:
server { listen 80 default_server; root /app/public; index index.php index.html index.htm; location ~ \.php$ { fastcgi_pass php:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
常见问题解答:
(提供的FAQ已经结构良好,可以直接包括在内。)>
以上是使用docker' data-gatsby-head =” true”/>