docker centos6 + nginx + php5.6 + yaf + xdebug

一个专注于项目管理的Java程序员被迫php,内心抗拒,却无力反抗。。。

docker就是一个让一个人痛苦,整个团队受益的东西,而我就是那个苦孩子

说到底就是环境,版本
centos 不要到7
php不能到7
紧接着yaf和xdebug要跟着php

废话已经很多,干货就是Dockerfile

# 版本 1.00
# 请执行 docker build -t centos6_nginx_php56:版本号 .

From centos:6

MAINTAINER 告诉你你也不会给我

# 安装 wget
RUN yum install -y wget && yum install -y bzip2

# 替换 yum 源
RUN mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
RUN wget http://mirrors.163.com/.help/CentOS6-Base-163.repo && cp CentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo

# nginx 源
RUN rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

# php 源
RUN rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
RUN rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

# 重建 yum 缓存
RUN yum clean all && yum makecache

# 安装 nginx
RUN yum -y install nginx

# 安装 php5.6
RUN yum -y install php56w.x86_64
RUN yum -y --enablerepo=webtatic install php56w-devel
RUN yum -y install php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-opcache.x86_64 php56w-pear php56w-pecl-xdebug
RUN yum -y install php56w-fpm

# 安装 yaf-2.3.5
RUN yum -y install gcc
RUN pecl install channel://pecl.php.net/yaf-2.3.5  

COPY xdebug.ini /etc/php.d/xdebug.ini
COPY yaf.ini /etc/php.d/yaf.ini

# 设置时区
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 

# 创建 docker 目录
RUN mkdir /docker && chmod -R 777 /docker
RUN mkdir /docker/apps
RUN mkdir /docker/logs

# 拷贝自己的nginx conf文件
COPY zz.conf /etc/nginx/conf.d/zz.conf

# 开放多个端口
EXPOSE 80 
EXPOSE 8000 
EXPOSE 443

CMD service nginx start && service php-fpm start && nohup sh -c "while true; do sleep 1; done"

yaf.ini和xdebug.ini不放了,这个网上还是一堆的,也都可以用,毕竟就那俩配置

那么哪天有人再遇到这么过时倒霉的组合的时候,希望我也尽了一份绵薄之力。

你可能感兴趣的:(docker centos6 + nginx + php5.6 + yaf + xdebug)