---
- hosts: 192.168.26.21
gather_facts: True
tasks:
# common tasks
- name: Install epel-release
yum:
name: epel-release
state: present
- name: Temporary Disable SELinux
command: setenforce 0
- name: Disable SELinux
shell: sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
# Install apache server
- name: Install httpd
yum:
name: httpd
state: present
- name: Start httpd
service:
name: httpd
state: started
enabled: True
- name: Permit 80/tcp port
firewalld:
service: http
permanent: True
immediate: True
state: enabled
#Install php82
- name: Install epel-release-latest-7
yum:
name: https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
state: present
- name: Install remirepo
yum:
name: https://rpms.remirepo.net/enterprise/remi-release-7.rpm
state: present
- name: Enable remi-php82 repo
shell: yum-config-manager --enable remi-php82
- name: Install php82
yum:
name:
- php82-php
- php82-php-mbstring
- php82-php-mysqlnd
- php82-php-gd
- php82-php-xml
state: present
- name: Install mariadb-server
yum:
name: mariadb-server
state: present
- name: Start mariadb-server
service:
name: mariadb
state: started
enabled: True
- name: Install pip
yum:
name: python2-pip
state: present
- name: Install Python Library
pip:
name: PyMySQL==0.10.0
state: present
- name: Create Database
mysql_db:
name: wordpressdb
state: present
- name: Create database user
mysql_user:
name: wordpress
password: wordpress
priv: 'wordpressdb.*:ALL'
state: present
# Install wordpress
- name: Install wordpress
get_url:
url: https://wordpress.org/wordpress-6.2.tar.gz
dest: /tmp/wordpress-6.2.tar.gz
checksum: md5:34f279efe623025641bc11a69e3c02fa
- name: Extract wordpress-6.X.tar.gz into /var/www/wordpress
unarchive:
src: /tmp/wordpress-6.2.tar.gz
dest: /var/www/
remote_src: True
- name: Recursive Modify file permission
file:
path: /var/www/wordpress
owner: apache
group: apache
mode: '0766'
recurse: True
state: directory
- name: Add apache virtual host config
copy:
src: wordpress.conf
dest: /etc/httpd/conf.d/wordpress.conf
- name: Restart httpd
service:
name: httpd
state: restarted
- name: Add wordpress config
copy:
src: wp-config.php
dest: /var/www/wordpress/wp-config.php
owner: apache
group: apache
mode: '0744'