lamp.yml 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. ---
  2. -
  3. gather_facts: false
  4. hosts: tag_system_wordpress2
  5. become: yes
  6. vars:
  7. mysql_root_password: "mypass"
  8. mysql_root_password: mypass
  9. wordpress_db_name: wordpress
  10. wordpress_db_user: dbuser
  11. wordpress_db_user_pass: dbpass
  12. wordpress_db_prefix: wp_
  13. tasks:
  14. - name: Install LAMP
  15. apt:
  16. pkg: ['apache2', 'mysql-server', 'mysql-client', 'python-mysqldb', 'libmysqlclient-dev','php-fpm', 'php-gd', 'php-curl', 'php-mysql', 'php-xml', 'php', 'libapache2-mod-php', 'php-mysql']
  17. state: installed
  18. update_cache: true
  19. - name: Enable apache2 modules
  20. command: a2enmod rewrite actions alias
  21. - name: Upload apache2 default configuration
  22. copy: src=files/000-default.conf dest=/etc/apache2/sites-enabled/
  23. - name: Remove default apache2 index.html file
  24. ignore_errors: yes
  25. command: rm /var/www/html/index.html
  26. - name: Upload default index.php for host
  27. copy: src=files/index.php dest=/var/www/html/ mode=0644
  28. - name: Restart webserver
  29. service: name=apache2 state=restarted
  30. - name : Ensure mysql started
  31. become: yes
  32. service: name=mysql state=started enabled=yes
  33. - name: Create WordPress database
  34. mysql_db:
  35. name: "{{ wordpress_db_name }}"
  36. state: present
  37. login_user: root
  38. login_password: "{{ mysql_root_password }}"
  39. - name: Create MySQL conf file
  40. copy:
  41. dest: "/home/ubuntu/.my.cnf"
  42. content: |
  43. [client]
  44. user=root
  45. password={{ mysql_root_password }}
  46. - name: Create WordPress DB user and grant permissions to WordPress DB
  47. mysql_user:
  48. name: "{{ wordpress_db_user }}"
  49. password: "{{ wordpress_db_user_pass }}"
  50. priv: "{{ wordpress_db_name }}.*:ALL"
  51. state: present
  52. login_unix_socket: /var/run/mysqld/mysqld.sock
  53. - name: Update MySQL root password for all root accounts
  54. mysql_user: name=root
  55. host={{ item }}
  56. password={{ mysql_root_password }}
  57. login_user=root
  58. login_password=""
  59. state=present
  60. with_items:
  61. - 127.0.0.1
  62. - ::1
  63. - localhost
  64. - name: Configure php-fom with apache2
  65. become: true
  66. copy: src=files/www.conf dest=/etc/php/7.0/fpm/pool.d/