教你在docker?中搭建?PHP8?+?Apache?環(huán)境的過(guò)程
鏡像介紹
PHP8+Apache的官方倉(cāng)庫(kù):https://hub.docker.com/_/php?tab=tags- 在該倉(cāng)庫(kù)如下位置搜索
Apache相關(guān)的鏡像

我下載的是下面這個(gè), PHP 版本是 8.0.6

具體操作步驟
- 下載鏡像:
docker pull php:apache-buster, 下載下來(lái)后使用docker images可以查看到如下信息:

- 創(chuàng)建容器:
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表示創(chuàng)建出來(lái)的鏡像名稱-p 80:80: 表示本機(jī)的 80 端口映射到容器內(nèi)的 80 端口, 其中第一個(gè) 80 是本機(jī)的-v /Users/xiaosheng/docker:/var/www/html: 數(shù)據(jù)卷掛載, 將本機(jī)的代碼文件夾映射到容器內(nèi)的代碼文件夾, 冒號(hào)前面的是本機(jī)的文件夾地址-v /Users/xiaosheng/docker/etc:/usr/local/etc: 將容器內(nèi)PHP的配置文件映射到本機(jī), 這樣方便修改配置文件, 冒號(hào)前面的是本地的文件夾地址-v /Users/xiaosheng/docker/conf:/etc/apache2/sites-enabled: 將容器內(nèi)Apache站點(diǎn)的配置文件映射到本地, 方便添加和修改站點(diǎn)配置文件, 冒號(hào)前面的是本地的文件夾地址php:apache-buster: 表示的是使用哪個(gè)鏡像來(lái)創(chuàng)建容器, 即 鏡像名稱:tag名稱
以上步驟就可以創(chuàng)建出來(lái)一個(gè)容器, 使用 docker ps -a 來(lái)查看容器

PHP 安裝擴(kuò)展
以安裝 pdo-mysql 擴(kuò)展為例
- 容器中 PHP 沒(méi)有 MySQL 的擴(kuò)展, 所以需要自己手動(dòng)下載, 下載步驟可以參考該鏈接
https://www.yoyoask.com/?p=122 docker-php-source: 在/usr/src目錄下創(chuàng)建出來(lái)php文件夾- 進(jìn)入
/usr/src/php/ext文件夾, 使用docker-php-ext-install安裝所需要的擴(kuò)展, 如安裝pdo-mysql擴(kuò)展, 可以使用docker-php-ext-install pdo_mysql來(lái)安裝 - 修改 PHP 的配置文件
- 去掉
;extension=pdo_mysql前面的; - 使用
docker restart 容器ID來(lái)重啟容器
搭建 PHP 站點(diǎn)
在從 Apache 中映射出來(lái)的文件夾中添加站點(diǎn)配置文件, 我這里添加了一個(gè) ceshi.conf的文件

文件內(nèi)容如下:
<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 - 在本機(jī)
host文件中添加站點(diǎn)信息 127.0.0.1 www.xiaoming.test- 如果想要在容器內(nèi)部使用
vim的話, 可以使用如下命令
apt-get update apt-get -y install vim
到此這篇關(guān)于docker 中搭建 PHP8 + Apache 環(huán)境的文章就介紹到這了,更多相關(guān)docker 搭建Apache 環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談docker Dockerfile 指令 VOLUME 介紹
本篇文章主要介紹了淺談docker Dockerfile 指令 VOLUME 介紹 ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
Linux系統(tǒng)安裝docker并用ssh登錄docker容器的操作方法
今天小編就為大家分享一篇Linux系統(tǒng)安裝docker并用ssh登錄docker容器的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
解決docker 容器設(shè)置中文語(yǔ)言包出現(xiàn)的問(wèn)題
這篇文章主要介紹了解決docker 容器設(shè)置中文語(yǔ)言包出現(xiàn)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
Shell腳本構(gòu)建Docker 半自動(dòng)化編譯打包發(fā)布應(yīng)用操作
這篇文章主要介紹了Shell腳本構(gòu)建Docker 半自動(dòng)化編譯打包發(fā)布應(yīng)用操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03

