ansible安装php

环境:Centos 7.x

独立php-fpm.conf配置文件

[root@master playbook]# tree php
php
├── php-fpm.conf
└── php.yml

php.yml文件如下:

- hosts: localhost
  vars:
    - php_version: 7.1.16
    - php_user: www
  tasks:
    - name: add php run user
      user: name={{ php_user }}
    - name: install wget
      yum: name=wget state=latest
    - name: download php-{{ php_version }}.tar.gz
      get_url:
        url: http://cn2.php.net/distributions/php-{{ php_version }}.tar.gz
        dest: "{{ lookup('env','HOME') }}/php-{{ php_version }}.tar.gz"
    - name: download epel
      get_url:
        url: https://mirrors.aliyun.com/repo/epel-7.repo
        dest: /etc/yum.repos.d/epel-7.repo
    - name: php dependence
      yum: name={{ item }} state=latest
      with_items:
        - make
        - curl-devel
        - libjpeg-devel
        - libpng-devel
        - freetype-devel
        - libxml2-devel
        - libcurl-devel
        - openssl-devel
        - libmcrypt-devel
        - bison
        - file
        - re2c
        - autoconf
        - ImageMagick-devel
        - gcc-c++
    - name: install php
      shell: cd {{ lookup('env','HOME') }};tar -xf php-{{ php_version }}.tar.gz;cd php-{{ php_version }};./configure --prefix=/usr/local/php7 \
        --with-config-file-path=/usr/local/php7/etc \
        --enable-fpm \
        --with-fpm-user=www \
        --with-fpm-group=www \
        --with-mysqli=mysqlnd \
        --with-pdo-mysql=mysqlnd \
        --with-iconv-dir \
        --with-freetype-dir \
        --with-jpeg-dir \
        --with-png-dir \
        --with-zlib \
        --with-libxml-dir \
        --enable-xml \
        --disable-rpath \
        --enable-bcmath \
        --enable-shmop \
        --enable-sysvsem \
        --enable-inline-optimization \
        --enable-exif \
        --with-curl \
        --enable-mbregex \
        --enable-mbstring \
        --with-mcrypt \
        --with-gd \
        --enable-gd-native-ttf \
        --with-openssl \
        --with-mhash \
        --enable-pcntl \
        --enable-sockets \
        --with-xmlrpc \
        --enable-zip \
        --enable-soap \
        --with-gettext \
        --enable-opcache;make -j`grep processor /proc/cpuinfo |wc -l`&& make install
    - name: copy conf file php.ini
      shell: cp {{ lookup('env','HOME') }}/php-{{ php_version }}/php.ini-production /usr/local/php7/etc/php.ini
    - name: copy php-fpm init
      shell: cp {{ lookup('env','HOME') }}/php-{{ php_version }}/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm;chmod +x /etc/init.d/php-fpm;chkconfig --add php-fpm;chkconfig php-fpm on
    - name: copy php-fpm.conf
      template: src=php-fpm.conf dest=/usr/local/php7/etc/php-fpm.conf
    - name: start php services
      shell: /etc/init.d/php-fpm restart

  

转载于:https://www.cnblogs.com/shansongxian/p/9989610.html

你可能感兴趣的:(ansible安装php)