[关闭]
@dooy 2023-02-27T05:17:03.000000Z 字数 1918 阅读 446

Docker 服务器学习

PHP Nginx

一、Docker 基本命令

参考 php的安装

https://www.runoob.com/docker/docker-install-php.html

1.1 查找镜像

docker search php

1.2 拉取镜像

docker pull php:5.6-fpm

拉取php 5.6 fpm版本

1.3 创建并启动容器

docker run --name myphp-fpm -v ~/nginx/www:/www -itd php:5.6-fpm

1.4 容器使用命令

  1. #当前使用容器 -a曾经使用过的容器
  2. docker ps
  3. #进入容器
  4. docker exec -it 容器名称或者ID /bin/bash
  5. #重启容器
  6. docker restart 容器名称或者ID
  7. #容器配置
  8. docker inspect penly-nginx-80 |grep Mounts -A 30 #查找挂载
  9. docker inspect penly-nginx-80 |grep IPD -A 30 #查找ID

二、php 两种插件安装

2.1 使用 docker-php-ext-install 源码安装Redis 插件

进入到容器内

  1. #初始化 只需要执行一次
  2. docker-php-source extract
  3. #执行了上面的命令 在 /usr/src/php/ext/ 目录下就能看到mysql mysqli了
  4. ##------
  5. #安装 mysql
  6. docker-php-ext-install mysql
  7. docker-php-ext-install mysqli
  8. #下载 Redis
  9. curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/refs/tags/5.3.7.tar.gz
  10. tar xfz /tmp/redis.tar.gz
  11. rm -r /tmp/redis.tar.gz
  12. #复制扩展到容器中:
  13. mv phpredis-5.3.7 /usr/src/php/ext/redis
  14. #安装
  15. docker-php-ext-install redis
  16. #查看是否安装成功
  17. php -m|grep redis

2.2 使用 pecl 和 docker-php-ext-enable 安装 amqp 插件

进入到容器内

  1. #安装先前插件
  2. apt-get install librabbitmq-dev
  3. #查找
  4. pecl search amqp
  5. #安装
  6. pecl install amqp
  7. #使用
  8. docker-php-ext-enable amqp.so
  9. #查看是否安装成功
  10. php -m|grep amqp

2.3 支持gd

  1. apt-get install -y
  2. libfreetype6-dev \
  3. libjpeg62-turbo-dev \
  4. libpng-dev \
  5. libwebp-dev \
  6. zlib1g-dev
  7. docker-php-ext-configure gd \
  8. --enable-gd \
  9. --with-freetype \
  10. --with-jpeg \
  11. --with-webp
  12. docker-php-ext-install -j$(nproc) gd

三、使用心得

  1. docker exec -it php5.6fpm php -m
  2. docker exec -it php5.6fpm php -f file.php #容器内部文件 又可以通过挂载目录到宿主目录里面

类似

  1. docker run -itd -v /data/webRoot:/data/webRoot:rw --name php56fpmRedisMQ dooy/php56fpm:redisAMQP
  2. docker run -itd -v /data/webRoot:/data/webRoot:rw --name openresty -p 6080:80 -p 6043:443 openresty/openresty
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注