1. 首页
  2. 技术知识

教你在docker 中搭建 PHP8 + Apache 环境的过程

目录

    镜像介绍具体操作步骤PHP 安装扩展

      以安装 pdo-mysql 扩展为例

    搭建 PHP 站点

镜像介绍

    PHP8 + Apache 的官方仓库: https://hub.docker.com/_/php?tab=tags在该仓库如下位置搜索 Apache 相关的镜像

我下载的是下面这个, PHP 版本是 8.0.6

具体操作步骤

    下载镜像: docker pull php:apache-buster, 下载下来后使用 docker images 可以查看到如下信息:

    创建容器: docker run -itd –name php -p 80:80 -v /Users/xiaosheng/docker:/var/www/html -v /Users/xiaosheng/docker/etc:/usr/local/etc -v /Users/xiaosheng/docker/conf:/etc/apache2/sites-enabled php:apache-buster

命令详解:

    –name php: php 表示创建出来的镜像名称-p 80:80: 表示本机的 80 端口映X容器内的 80 端口, 其中第一个 80 是本机的-v /Users/xiaosheng/docker:/var/www/html: 数据卷挂载, 将本机的代码文件夹映X容器内的代码文件夹, 冒号前面的是本机的文件夹地址-v /Users/xiaosheng/docker/etc:/usr/local/etc: 将容器内 PHP 的配置文件映X本机, 这样方便修改配置文件, 冒号前面的是本地的文件夹地址-v /Users/xiaosheng/docker/conf:/etc/apache2/sites-enabled: 将容器内 Apache 站点的配置文件映X本地, 方便添加和修改站点配置文件, 冒号前面的是本地的文件夹地址php:apache-buster: 表示的是使用哪个镜像来创建容器, 即 镜像名称:tag名称

以上步骤就可以创建出来一个容器, 使用 docker ps -a 来查看容器

PHP 安装扩展


以安装 pdo-mysql 扩展为例

    容器中 PHP 没有 MySQL 的扩展, 所以需要自己手动下载, 下载步骤可以参考该链接 https://www.yoyoask.com/?p=122docker-php-source : 在 /usr/src 目录下创建出来 php 文件夹进入 /usr/src/php/ext 文件夹, 使用 docker-php-ext-install 安装所需要的扩展, 如安装 pdo-mysql 扩展, 可以使用 docker-php-ext-install pdo_mysql 来安装修改 PHP 的配置文件去掉 ;extension=pdo_mysql 前面的 ;使用 docker restart 容器ID 来重启容器


搭建 PHP 站点

在从 Apache 中映X来的文件夹中添加站点配置文件, 我这里添加了一个 ceshi.conf的文件

文件内容如下:

<VirtualHost *:80>

        ServerName www.xiaoming.test

        DocumentRoot /var/www/html/api.ceshi.test/public

    <Directory “/var/www/html/api.ceshi.test/public”>

        SetOutputFilter DEFLATE

        AllowOverride All

        Require all granted

        DirectoryIndex index.php index.html index.htm default.php default.html default.htm

    </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

    重启容器: docker restart 容器ID在本机 host 文件中添加站点信息127.0.0.1 www.xiaoming.test如果想要在容器内部使用 vim 的话, 可以使用如下命令

apt-get update apt-get -y install vim到此这篇关于docker 中搭建 PHP8 + Apache 环境的文章就介绍到这了,更多相关docker 搭建Apache 环境内容请搜索共生网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持共生网络!

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/105909.html

联系我们