Docker之nginx+php通过redis实现session共享(镜像)

安装连接redis的功能模块,实现redis共享session

基础镜像为私有镜像仓库的192.168.1.200:5000/nginx_php:1.12.2,以安装好nginx和php
Dockerfile

FROM 192.168.1.200:5000/nginx_php:1.12.2
#定义软件版本及编译工具变量
ENV Redis_Version 2.2.4
ENV Build_Tools  autoconf automake   pcre-devel  php-devel
ADD php-redis-${Redis_Version}.tar.gz  /opt/
RUN  yum -y install ${Build_Tools}  \
         && cd /opt/phpredis-${Redis_Version} && phpize && ./configure  --with-php-config=/usr/bin/php-config \
         && make && make install && yum clean all

配置文件:/etc/php-fpm.d/www.conf

修改最后两行为:
php_value[session.save_handler] = redis
php_value[session.save_path] = "tcp://10.10.10.31:6379"

配置文件:/etc/php.ini

728   extension_dir = "/usr/lib64/php/modules/"
730   extension = "redis.so"

运行容器:

docker run -itd --net docker01 --ip 10.10.10.51 --name web1 -h web1 \
--restart=always --restart=on-failure:5 -v /docker_data/nginx/webroot:/usr/local/nginx \
-v /docker_data/php/www.conf:/etc/php-fpm.d/www.conf  -v/docker_data/php/php.ini:/etc/php.ini \
-v /etc/localtime:/etc/localtime  192.168.1.200:5000/nginx_php_redis:1.12.2

你可能感兴趣的:(Docker)