@dooy
2023-02-27T05:17:03.000000Z
字数 1918
阅读 446
PHP
Nginx
参考 php的安装
docker search php
docker pull php:5.6-fpm
拉取php 5.6 fpm版本
docker run --name myphp-fpm -v ~/nginx/www:/www -itd php:5.6-fpm
#当前使用容器 -a曾经使用过的容器
docker ps
#进入容器
docker exec -it 容器名称或者ID /bin/bash
#重启容器
docker restart 容器名称或者ID
#容器配置
docker inspect penly-nginx-80 |grep Mounts -A 30 #查找挂载
docker inspect penly-nginx-80 |grep IPD -A 30 #查找ID
进入到容器内
#初始化 只需要执行一次
docker-php-source extract
#执行了上面的命令 在 /usr/src/php/ext/ 目录下就能看到mysql mysqli了
##------
#安装 mysql
docker-php-ext-install mysql
docker-php-ext-install mysqli
#下载 Redis
curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/refs/tags/5.3.7.tar.gz
tar xfz /tmp/redis.tar.gz
rm -r /tmp/redis.tar.gz
#复制扩展到容器中:
mv phpredis-5.3.7 /usr/src/php/ext/redis
#安装
docker-php-ext-install redis
#查看是否安装成功
php -m|grep redis
进入到容器内
#安装先前插件
apt-get install librabbitmq-dev
#查找
pecl search amqp
#安装
pecl install amqp
#使用
docker-php-ext-enable amqp.so
#查看是否安装成功
php -m|grep amqp
apt-get install -y
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libwebp-dev \
zlib1g-dev
docker-php-ext-configure gd \
--enable-gd \
--with-freetype \
--with-jpeg \
--with-webp
docker-php-ext-install -j$(nproc) gd
B.尽量使用端口 提供服务 。与其他使用服务的时候 用 --link 并网络
--link myphp-fpm:php: 把 myphp-fpm 的网络并入 nginx,并通过修改 nginx 的 /etc/hosts,把域名 php 映射成 127.0.0.1,让 nginx 通过 php:9000 访问 php-fpm。
C.如果提供不了端口服务 需要执行容器内部命令
docker exec -it php5.6fpm php -m
docker exec -it php5.6fpm php -f file.php #容器内部文件 又可以通过挂载目录到宿主目录里面
类似
docker run -itd -v /data/webRoot:/data/webRoot:rw --name php56fpmRedisMQ dooy/php56fpm:redisAMQP
docker run -itd -v /data/webRoot:/data/webRoot:rw --name openresty -p 6080:80 -p 6043:443 openresty/openresty