记录linux使用dnmp环境

1,docker安装 安装最新的版本

https://cloud.tencent.com/developer/article/1701451

2,docker-composer安装 安装最新版本 (迅雷下载很快)

https://github.com/docker/compose/releases
----下载linux版 :docker-compose-linux-x86_64 (其实是一个可执行文件)

3,使用WinSCP或ftp上传

1重命名= mv docker-compose-linux-x86_64 docker-compose
2添加可执行权限= chmod +x docker-compose
3移动= mv docker-compose /usr/local/bin/
4安装成功= docker-compose -v

4,安装dnmp
4.1安装git

yum install git
文档:https://gitee.com/yeszao/dnmp/tree/master

目录:
在这里插入图片描述
5,安装php8.1以及php8.2

从 \dnmp\services\php80 中复制一份目录到 \dnmp\services 中改名为 php82,extensions目录只保留 install.sh 和 install-php-extensions 这两个文件
然后分别修改以下文件:
\dnmp.env:

#
# PHP82
#
# Available PHP_EXTENSIONS:
#
# pdo_mysql,zip,pcntl,mysqli,mbstring,exif,bcmath,calendar,
# sockets,gettext,shmop,sysvmsg,sysvsem,sysvshm,pdo_rebird,
# pdo_dblib,pdo_oci,pdo_odbc,pdo_pgsql,pgsql,oci8,odbc,dba,
# gd,intl,bz2,soap,xsl,xmlrpc,wddx,curl,readline,snmp,pspell,
# recode,tidy,gmp,imap,ldap,imagick,sqlsrv,mcrypt,opcache,
# redis,memcached,xdebug,swoole,pdo_sqlsrv,sodium,yaf,mysql,
# amqp,mongodb,event,rar,ast,yac,yar,yaconf,msgpack,igbinary,
# seaslog,varnish,xhprof,xlswriter,memcache,rdkafka,zookeeper,
# psr,phalcon,sdebug,ssh2,yaml,protobuf,hprose
#
# You can let it empty to avoid installing any extensions,
# or install multi plugins as:
# PHP_EXTENSIONS=pdo_mysql,mysqli,gd,curl,opcache
PHP82_VERSION=8.2.6
PHP82_PHP_CONF_FILE=./services/php82/php.ini
PHP82_FPM_CONF_FILE=./services/php82/php-fpm.conf
PHP82_LOG_DIR=./logs/php82
PHP82_EXTENSIONS=pdo_mysql,mysqli,mbstring,gd,curl,opcache,redis,mongodb,bcmath,soap

docker-compose.yml:

  php82:
    build:
      context: ./services/php82
      args:
        PHP_VERSION: php:${PHP82_VERSION}-fpm-alpine
        CONTAINER_PACKAGE_URL: ${CONTAINER_PACKAGE_URL}
        PHP_EXTENSIONS: ${PHP82_EXTENSIONS}
        TZ: "$TZ"
    container_name: php82
    expose:
      - 9501
    volumes:
      - ${SOURCE_DIR}:/www/:rw
      - ${PHP82_PHP_CONF_FILE}:/usr/local/etc/php/php.ini:ro
      - ${PHP82_FPM_CONF_FILE}:/usr/local/etc/php-fpm.d/www.conf:rw
      - ${PHP82_LOG_DIR}:/var/log/php
      - ${DATA_DIR}/composer:/tmp/composer
    restart: always
    cap_add:
      - SYS_PTRACE
    networks:
      - default

如果还是像 8.0 的配置一样写 php:${PHP80_VERSION}-fpm-alpine3.13,那么会提示 ERROR [internal] load metadata for docker.io/library/php:8.2.6-fpm-alpine3.13,即使更改最新的 alpine 版本也会报错,因此改为 php:8.2.6-fpm-alpine。
复制过来的 \dnmp\services\php80\extensions,如果已经安装了扩展需要删除已经安装的扩展,保留 install.sh 和 install-php-extensions

nginx配置文件:改成php82
在这里插入图片描述

最后:

docker-compose build php82
docker-compose up

在这里插入图片描述
5,安装php8.1以及php8.2 扩展

在对应版本的extensions修改install.sh

5.1安装包方式
在这里插入图片描述
在这里插入图片描述

5.1pecl方式
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值