Mac M1 Monterey 12.0.1架设docker+nginx+php环境(TP6环境)

Mac M1 安装Docker
1、Docker下载
docker官网下载m1版本:https://docs.docker.com/docker-for-mac/apple-silicon/点击Download下载.dmg文件。
2、Docker安装
双击下载的Docker.dmg文件开始安装,拖动Docker到Applications等待安装完成。
3、Docker启动
在启动台找到Docker软件图标点击启动,稍等片刻启动成功,屏幕右上角菜单栏显示了一个鲸鱼图标,点击可看到Docker运行状态。
4、增加国内镜像链接

"registry-mirrors": [
    "https://xxxxxx.mirror.aliyuncs.com",
    "http://hub-mirror.c.163.com"
  ],

Docker 安装 Nginx

$ docker pull nginx:latest

Docker 安装 PHP

$ docker pull php:7.4.25-fpm

docker配置PHP开发环境(m1mac+nginx+php)
1、创建目录

mkdir -p /Users/用户名/docker/nginx/conf.d && mkdir /Users/用户名/WWW &&  cd /Users/用户名/docker/nginx/conf.d && sudo touch default.conf

2、启动php-fpm

docker run --name php -d \
    -v /Users/用户名/WWW:/var/www/html \
    php:7.4.25-fpm

3、编辑 nginx 配置文件
配置文件位置:

/Users/用户名/docker/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;
    root         /usr/share/nginx/html;
    
    location / {
        index index.php index.html;
        if (!-e $request_filename) {
           rewrite  ^(.*)$  /index.php?s=/$1  last;
           break;
        }
    }

    location ~ \.php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/html/$fastcgi_script_name;
        include        fastcgi_params;
    }
}
# 绑定域名
server {
    listen       80;
    server_name  www.tp.com;
    root         /usr/share/nginx/html/tp.com/public;
    
    location / {
        index index.php index.html;
        if (!-e $request_filename) {
           rewrite  ^(.*)$  /index.php?s=/$1  last;
           break;
        }
    }

    location ~ \.php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/html/tp.com/public/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

4、启动 nginx:

docker run --name nginx -p 80:80 -d \
    -v /Users/用户名/WWW:/usr/share/nginx/html \
    -v /Users/用户名/docker/nginx/conf.d:/etc/nginx/conf.d \
    --link php:php \
    nginx

在本地 /Users/用户名/www 下放两个文件:index.php

<?php phpinfo(); ?>

Docker为PHP安装gd扩展

//进入PHP容器
docker exec -it php /bin/bash
//更新软件源
apt update
//安装各种库
apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev
//解压源码
docker-php-source extract
//进入gd源码文件夹
cd /usr/src/php/ext/gd 
//准备编译
docker-php-ext-configure gd --with-webp-dir=/usr/include/webp --with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-freetype-dir=/usr/include/freetype2 
//编译安装
docker-php-ext-install gd 
//查看是否成功安装gd扩展
php -m | grep gd
//重启容器

php容器支持imagettftext函数

//进入PHP容器
docker exec -it php /bin/bash
//准备编译
docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp
重新编译:
docker-php-ext-install gd
安装完成后重启php:
docker restart php;

php容器安装unzip扩展*

//进入PHP容器
docker exec -it php /bin/bash
#先安装zip需要的依赖
apt-get install -y zlib1g-dev && apt-get install -y libzip-dev && apt-get install -y unzip
#安装并启动zip扩展
docker-php-ext-install zip

php容器安装pdo_mysql扩展

//进入PHP容器
docker exec -it php /bin/bash
//安装pdo_mysql扩展
docker-php-ext-install pdo pdo_mysql

php容器安装PHP-bcmath扩展

//进入PHP容器
docker exec -it php /bin/bash
//安装PHP-bcmath扩展
docker-php-ext-install bcmath

php容器安装xdebug扩展

//进入PHP容器
docker exec -it php /bin/bash
# 下载安装xdebug扩展
pecl install xdebug
# 添加到配置文件
docker-php-ext-enable xdebug

php容器安装Redis扩展

//进入PHP容器
docker exec -it php /bin/bash
# 依次执行下列命令
curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz
tar xfz /tmp/redis.tar.gz
rm -r /tmp/redis.tar.gz
mkdir -p /usr/src/php/ext
mv phpredis-3.1.3 /usr/src/php/ext/redis
docker-php-ext-install redis

Docker安装Compoer

//进入PHP容器
docker exec -it php /bin/bash
下载安装脚本 - composer-setup.php - 到当前目录。
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
执行安装过程。
php composer-setup.php
删除安装脚本。
php -r "unlink('composer-setup.php');"
打开命令行窗口并执行如下命令将前面下载的 composer.phar 文件移动到 /usr/local/bin/ 目录下面:
mv composer.phar /usr/local/bin/composer
最后。
composer --version查看是否安装好

Docker部署Redis

# 查看有那些镜像可用
docker search redis 
# 拉取redis镜像
docker pull redis:latest
# 查看本地镜像
docker images
# 创建目录
mkdir -p /Users/jarmin/docker/redis/conf
# 创建文件
touch /Users/jarmin/docker/redis/conf/redis.conf
# Docker 创建 Redis 容器命令
docker run -itd --name redis -p 6379:6379 \
--restart=always \
-v /Users/jarmin/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /Users/jarmin/docker/redis/data:/data \
redis redis-server /etc/redis/redis.conf

Docker安装git

//进入PHP容器
docker exec -it php /bin/bash
apt-get update && \
apt-get upgrade -y && \
apt-get install -y git
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Monterey 是苹果公司发布的最新的 macOS 操作系统版本,它引入了许多新的功能和改进。而在开发过程中,GitHub 在背景中起到了关键的作用。 首先,作为一个面向开发者的社交平台,GitHub 提供了丰富的代码资源和工具,这有助于苹果开发团队更好地进行代码管理和版本控制。开发者可以在 GitHub 上创建自己的仓库,并将代码上传到仓库中,这样团队成员就可以进行协同开发。在 Monterey 的开发过程中,苹果开发团队可以利用 GitHub 提供的版本控制功能,快速地查看和管理代码的变化,从而更好地协同工作。 其次,GitHub 上有许多开源项目,这些项目包含了丰富的代码资源和解决方案,对于 Monterey 的开发来说是非常宝贵的参考资料。苹果开发团队可以通过搜索 GitHub 上相关的项目和代码库,获取相关的代码示例和技术方案,从而加快开发进度和提高开发质量。GitHub 提供了优秀的搜索引擎和标签系统,这使得苹果开发团队能够快速找到他们所需要的资源。 此外,GitHub 还为开发者提供了一个互动交流的平台。苹果开发团队可以在 GitHub 上与其他开发者进行交流,提出问题和解答问题,互相学习和分享经验。这种开放的合作氛围有助于促进技术的创新和进步,对于 Monterey 的开发来说也是非常有益的。 综上所述,GitHub 在 Monterey 的背景中发挥了重要的作用。它为苹果开发团队提供了代码管理、版本控制、资源查找和交流互动等多种功能,这些功能对于开发团队的协同工作和技术进步都是非常有帮助的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值