Skip to content

Instantly share code, notes, and snippets.

@ahmed-hachena
Last active May 15, 2017 10:50
Show Gist options
  • Select an option

  • Save ahmed-hachena/050d06479a5e86bc99d8f83ecaac3c41 to your computer and use it in GitHub Desktop.

Select an option

Save ahmed-hachena/050d06479a5e86bc99d8f83ecaac3c41 to your computer and use it in GitHub Desktop.
Ansible playbook
- name: Install MySQL, Nginx, PHP-FPM, Git, Composer and Fail2ban
hosts: all
remote_user: root
roles:
- role: geerlingguy.mysql
become: yes
mysql_root_password: CHANGE_ME
- role: geerlingguy.nginx
- role: nbz4live.php-fpm
php_fpm_version: 5.6
php_fpm_apt_packages: [mcrypt, zip, unzip, php5.6-fpm, php5.6-intl, php5.6-mbstring, php5.6-mcrypt, php5.6-xml, php5.6-cli, php5.6-mysql, php5.6-curl, php5.6-zip, php5.6-gd]
php_fpm_pool_defaults:
pm: dynamic
pm.max_children: 5
pm.start_servers: 2
pm.min_spare_servers: 1
pm.max_spare_servers: 3
php_fpm_pools:
- name: www
user: www-data
group: www-data
listen: 9000
chdir: /
php_fpm_ini:
# PHP section directives
- option: "engine"
section: "PHP"
value: "1"
- option: "error_reporting"
section: "PHP"
value: "E_ALL & ~E_DEPRECATED & ~E_STRICT"
- option: "date.timezone"
section: "PHP"
value: "Europe/Berlin"
- option: "memory_limit"
section: "PHP"
value: "256M"
- option: "upload_max_filesize"
section: "PHP"
value: "64M"
- option: "post_max_size"
section: "PHP"
value: "32M"
- option: "max_execution_time"
section: "PHP"
value: "60"
# Pdo_mysql section directives
- option: "pdo_mysql.cache_size"
section: "Pdo_mysql"
value: "2000"
php_fpm_config:
- option: "log_level"
section: "global"
value: "notice"
- option: "syslog.facility"
section: "global"
value: "daemon"
- role: geerlingguy.git
- role: kosssi.composer
composer_github_oauth: CHANGE_ME
- role: tersmitten.fail2ban
@ahmed-hachena
Copy link
Author

ahmed-hachena commented May 12, 2017

  1. install roles with ansible-galaxy.
  2. create hosts.yml file.
  3. execute ansible-playbook -i hosts server.yml --ask-pass to run the playbook.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment