使用 Docker 构建稳定可靠的 PHP 开发环境

云游道人 2024-11-16 924 阅读 0评论

为什么使用 Docker?

Docker 为开发者提供了一种独立且可移植的方式来运行应用程序,彻底解决“它无法在我的计算机上运行”这一开发环境设置的常见难题。

Docker 的优势在于:

  • 可移植性:Docker 容器能够在任何平台上运行,确保应用程序始终保持一致的行为。

  • 易于安装:所有依赖项和配置都包含在容器内,只需一个简单的 Docker 命令即可轻松地将项目分享给其他开发人员。

  • 隔离性:每个项目都拥有独立的运行环境,避免项目之间的冲突,提高开发效率。

对于想要开发应用程序的任何人来说,Docker 都是一个强大的工具,能够提升开发效率,降低部署难度,并促进团队协作。

步骤 1:安装 Docker 和 Docker Compose

安装步骤:

1、访问 Docker 官方网站

2、下载适合您操作系统的 Docker 版本: 网站上提供了 Windows、macOS 和 Linux 的安装包。

3、按照安装向导完成安装: 安装过程通常比较简单,只需按照提示进行操作即可。

安装完成后,打开终端或命令行窗口,输入以下命令检查 Docker 是否安装成功:

docker --version

步骤 2:创建 PHP 环境的 Dockerfile

为了创建一个独立的 PHP 开发环境,我们需要创建一个 Dockerfile。

在您的项目目录中创建一个名为 Dockerfile 的文件。不要给文件添加任何扩展名,直接命名为 Dockerfile。

现在,您已经创建了 Dockerfile 文件,接下来我们将在这个文件中定义我们的 PHP 开发环境。

FROM php:8.0-apache

# 指定工作目录
WORKDIR /var/www/html

# 安装必要的PHP扩展
RUN docker-php-ext-install mysqli pdo pdo_mysql

# 打开端口
EXPOSE 80

步骤 3:使用 Docker Compose 定义服务

为了同时使用 PHP 和 MySQL,我们需要使用 Docker Compose 来定义和管理这两个服务。

在项目目录中创建一个名为 docker-compose.yml 的文件。

接下来,我们将在 docker-compose.yml 文件中定义 PHP 和 MySQL 服务,并配置它们之间的连接。

version: '3.8'

services:
  php:
    build:
      context: .
    container_name: php_container
    volumes:
      - ./src:/var/www/html
    ports:
      - "8080:80"
    networks:
      - app-network
  
  mysql:
    image: mysql:5.7
    container_name: mysql_container
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: mydatabase
      MYSQL_USER: user
      MYSQL_PASSWORD: password
    volumes:
      - dbdata:/var/lib/mysql
    ports:
      - "3306:3306"
    networks:
      - app-network

networks:
  app-network:
    driver: bridge

volumes:
  dbdata:

PHP 服务:

  • 使用一个 Docker 镜像构建 PHP 容器。

  • 将项目目录中的源代码(PHP 文件)挂载到容器内的 /var/www/html 目录,方便进行开发和调试。

MySQL 服务:

  • 使用一个 Docker 镜像构建 MySQL 容器。

  • 创建一个外部卷,用于存储数据库文件。这样即使删除容器,数据也不会丢失。

步骤 4:启动项目

完成所有配置后,我们可以启动项目了!

1、在终端中执行以下命令:

docker-compose up -d

这条命令会:

  • 在后台启动 docker-compose.yml 文件中定义的 PHP 和 MySQL 服务。

  • 创建必要的容器并启动它们。

2、访问您的应用程序:

  • 打开浏览器,访问 localhost:8080 即可查看正在运行的 PHP 应用程序。

现在,您已经成功地使用 Docker 和 Docker Compose 创建了一个完整的 PHP 开发环境,并启动了您的应用程序!

喜欢就支持以下吧
点赞 0

发表评论

快捷回复: 表情:
aoman baiyan bishi bizui cahan ciya dabing daku deyi doge fadai fanu fendou ganga guzhang haixiu hanxiao zuohengheng zhuakuang zhouma zhemo zhayanjian zaijian yun youhengheng yiwen yinxian xu xieyanxiao xiaoku xiaojiujie xia wunai wozuimei weixiao weiqu tuosai tu touxiao tiaopi shui se saorao qiudale qinqin qiaoda piezui penxue nanguo liulei liuhan lenghan leiben kun kuaikule ku koubi kelian keai jingya jingxi jingkong jie huaixiao haqian aini OK qiang quantou shengli woshou gouyin baoquan aixin bangbangtang xiaoyanger xigua hexie pijiu lanqiu juhua hecai haobang caidao baojin chi dan kulou shuai shouqiang yangtuo youling
提交
评论列表 (有 0 条评论, 924人围观)

最近发表

热门文章

最新留言

热门推荐

标签列表