Установка LAMP
Первым шагом на пути к созданию сервера приложений, зависящего от стека LAMP, является построение фактической части LAMP. Этот процесс требует небольшой дополнительной работы. Мы хотим установить Apache, MySQL и PHP, но нам также понадобится пара других зависимостей, и нам нужна версия PHP (5,5), которая доступна только в extra apt репозитории.
tasks:
- name: Get software for apt repository management.
apt: name={{ item }} state=present
with_items:
- python-apt
- python-pycurl
- name: Add ondrej repository for later versions of PHP.
apt_repository: repo='ppa:ondrej/php5' update_cache=yes
- name: "Install Apache, MySQL, PHP, and other dependencies."
apt: name={{ item }} state=present
with_items:
- git
- curl
- sendmail
- apache2
- php5
- php5-common
- php5-mysql
- php5-cli
- php5-curl
- php5-gd
- php5-dev
- php5-mcrypt
- php-apc
- php-pear
- python-mysqldb
- mysql-server
- name: Disable the firewall (since this is for local dev only).
service: name=ufw state=stopped
- name: "Start Apache, MySQL, and PHP."
service: "name={{ item }} state=started enabled=yes"
with_items:
- apache2
- mysql
Давайте разберем ближе этот playbook:
- Устанавливаем две вспомогательные библиотеки, позволяющие Python управлять apt (python-apt и python-pycurl необходимы для работы модуля apt_repository).
- Поскольку стандартные репозитории для Ubuntu 12.04 не включают PHP 5.4. x (или более поздние версии), устанавливаем репозиторий ppa:ondrej/php5, содержащий PHP 5.4.25.
- Устанавливаем все необходимые пакеты для нашего сервера LAMP (включая все расширения php5, которые необходимы для запуска Drupal).
- Отключаем брандмауэр полностью в целях тестирования приложений.
- Запускаем все необходимые службы и проверяем, что они стартуют вместе с запуском системы.