源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

利用Docker制作Nginx+PHP镜像的步骤详解

  • 时间:2022-12-01 12:00 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:利用Docker制作Nginx+PHP镜像的步骤详解
[b]前言[/b] 这篇文章给大家介绍的是使用Docker制作nginx+php的镜像,本文里的镜像是centos + nginx 1.9.7 + php 5.6.14,下面话不多说,直接看实现的步骤吧。  [b]1、首先下载到nginx和php:[/b] nginx-1.9.5.tar.gz  下载:[url=http://nginx.org/en/download.html]http://nginx.org/en/download.html[/url] php-5.6.14.tar.gz    下载:[url=http://php.net/downloads.php]>http://php.net/downloads.php[/url]  [b]2、以及扩展包so:[/b] memcache-2.2.4.tgz redis的php so包这里下载:[url=https://github.com/nicolasff/phpredis/zipball/master]>https://github.com/nicolasff/phpredis/zipball/master[/url]  [b]3、先安装yum的第三方源:[/b]
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
[b]安装步骤[/b] [b]第一步,使用docker centos镜像为基础[/b] [b]第二步,yum安装一大堆需要的包:[/b]
yum install -y openssh-clients
yum install -y gcc gcc-c++ kernel-devel
yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel
yum install -y php-mcrypt libmcrypt libmcrypt-devel
yum install -y libxml2 libxml2-devel
yum install -y bzip2 bzip2-devel
yum install -y curl-devel
yum install -y libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64
yum install -y libjpeg-turbo libjpeg-turbo-devel libjpeg-turbo-static libjpeg-turbo-utils
yum install -y libc-client.x86_64
yum install -y uw-imap-devel
yum install -y libxslt-devel
yum install -y zip unzip autoconf
[b]第三步,安装nginx:[/b]
./configure --with-http_ssl_module
nginx安装完后,安装目录为:/usr/local/nginx 查看nginx安装哪些模块可以使用命令:
/usr/local/nginx/sbin/nginx -V
[b]第四步,安装php:[/b]
./configure --prefix=/usr/local/php --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr/local/libxml --enable-soap --enable-calendar --with-curl --with-mcrypt --with-zlib --with-gd --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-pdo-mysql --with-mysqli --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr/local/libpng --enable-gd-native-ttf --with-openssl --with-fpm-user=www --with-fpm-group=www --with-libdir=lib64 --enable-ftp --with-imap --with-imap-ssl --with-kerberos --with-gettext --with-xmlrpc --with-xsl --enable-opcache --enable-fpm --enable-xml --enable-shmop --enable-session --enable-ctype --with-iconv-dir --with-iconv
php安装完后,安装目录为:/usr/local/php [b]第五步,安装memcache的php扩展:[/b] 下载地址:[url=https://pecl.php.net/package/memcache]>https://pecl.php.net/package/memcache[/url]
tar -zvxf memcache-2.2.4.tgz
cd memcache-2.2.4
/usr/local/php/bin/phpize
./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
make && make install
[b]第六步,安装redis的php扩展:[/b]
wget https://github.com/nicolasff/phpredis/zipball/master -O php-redis.zip
unzip php-redis.zip
cd php-redis
/usr/local/php/bin/phpize
./configure --enable-redis --with-php-config=/usr/local/php/bin/php-config
make && make install
[b]第七步,安装mongodb的php扩展:[/b] 下载地址:[url=https://pecl.php.net/package/mongo]>https://pecl.php.net/package/mongo[/url]
wget https://pecl.php.net/get/mongo-1.6.11.tgz
tar -zvxf mongo-1.6.11.tgz
cd mongo-1.6.11
/usr/local/php/bin/phpize
./configure --enable-mongo--with-php-config=/usr/local/php/bin/php-config
make && make install
[b]第八步,php加入memcache、redis、mongodb扩展支持:[/b] 打开/usr/local/php/etc/php.ini,加入扩展:
extension = redis.so
extension = memcache.so
extension = mongo.so
完成。 附: [b]为减小镜像包的大小,安装完后,使用命令清除安装包:[/b]
make clean
yum clean all
更多的php扩展包可以到这里下载: [url=https://pecl.php.net/packages.php]>https://pecl.php.net/packages.php[/url] [b]启动php-fpm命令:[/b]
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf
[b]启动nginx命令:[/b]
/usr/local/nginx/sbin/nginx
[b]docker启动命令为:[/b]
docker run -dt --name nginx-php --privileged=true -v /home/www/nginx_logs:/usr/local/nginx/logs -v /home/www/src:/usr/local/nginx/html -p 80:80 -p 443:443 img-nginx-php
[b]总结[/b] 以上就是利用Docker制作Nginx+PHP镜像的全部步骤,希望本文的内容对大家的学习或者工作带来一定的参考借鉴价值,如果有疑问大家可以留言交流。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部