Mac Docker部署lamp

4 篇文章 0 订阅
4 篇文章 0 订阅

安装7.4.27-apache

docker pull php:7.4.27-apache

在本地新建几个文件夹

mkdir -p ~/lamp/www ~/lamp/apache2 ~/lamp/mysql

进入容器把apache2的配置文件都拷贝出来

docker run --name php-apache-74 -d php:7.4.27-apache
docker cp php-apache-74:/etc/apache2 ~/lamp

现在~/lamp/apache2目录下有各种apache2的配置文件了.

在~/lamp/www新建index.php

<?php
    phpinfo();
?>

重新新建一个容器挂载对应配置

docker rm -f php-apache-74
 
docker run --name php-apache-74 -p 80:80 -d \
    -v ~/lamp/www:/var/www/html:rw \
    -v ~/lamp/apache2:/etc/apache2:ro \
    php:7.4.27-apache

浏览器打开http://localhost

进入php:7.4.27-apache进行各种常用软件与扩展安装

docker exec -it php-apache-74 /bin/bash

安装常用组件与工具

cd /
更新下源
apt-get update
安装常用组件与工具
apt-get -y install wget libc-client-dev libkrb5-dev libzip-dev libzstd-dev vim zip unzip
=====安装git=====
apt-get install git
git config --global user.name "zhanglei"
git config --global user.email "jiayouzl@vip.qq.com"
git config --list
git --version
=================

安装常用php扩展

我们分别先安装:mysqli,exif,pod_mysql

先用php -m看下目前已加载的模块

root@ca7f28c4bf43:/# php -m
[PHP Modules]
Core
ctype
curl
date
dom
fileinfo
filter
ftp
hash
iconv
json
libxml
mbstring
mysqlnd
openssl
pcre
PDO
pdo_sqlite
Phar
posix
readline
Reflection
session
SimpleXML
sodium
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zlib

[Zend Modules]


开始通过docker-php-ext-install安装扩展:
docker-php-ext-install mysqli
docker-php-ext-install exif
docker-php-ext-install pdo_mysql

安装后在用php -m看下已经加载的扩展会发现上面通过docker-php-ext-install安装的扩展都被加载了.

通过pecl安装redis扩展

pecl search redis
先装依赖
pecl install igbinary
在装redis
pecl install redis
提示全部y,y,y回车
 
cd /usr/local/etc/php/conf.d
vim upload.ini

按i后加入:
#加载模块
extension=igbinary.so
extension=redis.so
#上传最大M
upload_max_filesize=20M
#POST最大M
post_max_size=20M
#设置错误级别
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
#设置时区
date.timezone = Asia/Shanghai

安装PHP composer

curl -sS https://getcomposer.org/installer | php
 
mv composer.phar /usr/local/bin/composer
 
#换阿里云源(可选)
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer

外部调用composer

docker exec -it php-apache-74 /bin/bash -c 'composer -V'

重启容器让其生效

退出容器:
exit
重启容器:
docker restart php-apache-74

保存修改过的容器为新镜像,不然删除容器后全没了.

docker ps
docker commit ca7f28c4bf43 jiayouzltest/my-apache-php74:v1

直接上传到docker hub
docker push jiayouzltest/my-apache-php74:v1

到时候直接通过pull就能把刚才二次修改的镜像下来再来直接用

docker pull jiayouzltest/my-apache-php74:v1

运行容器

docker run --name php-apache-74 -p 80:80 -d \
    -v ~/lamp/www:/var/www/html:rw \
    -v ~/lamp/apache2:/etc/apache2:ro \
    jiayouzltest/my-apache-php74:v1

 MySQL安装参考

https://blog.csdn.net/bz0446/article/details/122493352

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

福星M高照

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值