Виртуальная машина LAMP для WordPress

В предыдущей статье о среде исполнения WordPress на Windows мы рассматривали запуск приложений в среде WAMP (Windows+Apache+MySQL+PHP).

Здесь мы пойдем немного дальше и рассмотрим создание полноценной LAMP (Linux+Apache+MySQL+PHP) среды под Windows.

Записывайте создаваемые регистрационные имена и пароли по ходу установки виртуальной машины — 1) для пользователя root в системе, 2) root в базе данных и 3) администратора — в WordPress.

Установка виртуализатора

Из всех вариантов для запуска виртуальной машины Linux под Windows выберем VirtualBox. Тут же отметим, что данное решение актуально также под MacOS, Solaris, и под самим Linux.

Загрузите и установите последнюю доступную версию VirtualBox для Windows. На момент написания статьи актуальной является версия 4.2.18.

Процесс установки предельно прост и, как правило, не требует изменения параметров по умолчанию.

Загрузка дистрибутива Linux

Нам потребуется один из серверных дистрибутивов Linux. В данной статье рассмотрим установку CentOS. Также отметим, что устанавливать будем 32-разрядную версию исходя из того, что виртуальной машине будет предоставлено менее 4ГиБ оперативной памяти. CentOS 6 является актуальной версией на момент написания.

Выберите зеркало CentOS 6 из расположенных поблизости серверов (как правило, в начале списка зеркал указаны расположенные с вами в одной стране). Из доступных образов установочного диска скачайте файл с суффиксом netinstall. На данный момент актуальным является CentOS-6.4-i386-netinstall.iso.

ВАЖНО! Сохраните адрес, откуда загружаете образ диска — он нам понадобится позже.

Настройка виртуальной машины

2013-09-29_0003Запустите VirtualBox и создайте новую виртуальную машину (например, нажатием Ctrl+N).

В данном примере дадим имя виртуальной машине CentOS, Выберем тип системы Linux, версию — RedHat. Этот выбор приведет к заданию объема оперативной памяти 512МиБ и образа диска 8Гиб.

Примите все настройки по умолчанию, нажимая кнопку Next (Далее), пока не закроется диалог создания виртуальной машины.

После завершения диалога проверьте настройки получившегося образа:

2013-09-29_0018

Перед запуском виртуальной машины необходимо смонтировать загруженный ранее образ установочного диска. Для этого щелкнем на заголовке секции Storage.

2013-09-29_0023В открывшемся диалоге увидим виртуальный CD-ROM, присоединенный к контроллеру IDE, который в данное время пуст (Empty).

Щелкните Empty и затем — на значке компакт-диска в разделе атрибутов (справа). Из выпадающего меню выберите Choose a virtual CD/DVD disk file:

VirtualBox_ChooseCDimage

 

В появившемся диалоге выберите загруженный ранее образ установочного диска.

Нажмите OK для подтверждения и закрытия диалога настроек.

Инсталляция системы

Убедитесь, что выбрана виртуальная машина CentOS и нажмите Start (или Alt+M T). После непродолжительного времени появится заставка загрузчика

Выберите второй пункт меню (Install system with basic video driver) и нажмите Enter. Таким образом мы выберем текстовый вариант инсталляции.

Спустя некоторое время появится запрос на проверку установочного образа. Если при загрузке образа не было сбоев, можно пропустить проверку, выбрав Skip:

2013-09-29_0054

На следующем шаге потребуется выбрать язык. Оставим значение по умолчанию English:

2013-09-29_0058Далее требуется выбор клавиатуры — оставим значение us:

2013-09-29_0103

При выборе установочного образа укажите пункт URL:

2013-09-29_0105Оставьте настройки сети по умолчанию:

2013-09-29_0109На следующем этапе потребуется ввести адрес, откуда загружен образ диска. Замените в адресе isos на os — так вы укажете копию «развернутого» образа, из которого наш дистрибутив выберет только нужные пакеты. В нашем случае это http://ftp.colocall.net/pub/centos/6.4/os/i386/:

2013-09-29_0129Если адрес указан правильно, после загрузки появится подтверждение:

2013-09-29_0130Теперь инициализируем диск (выберите пункт Re-initialize):

2013-09-29_0133Выберите часовой пояс (в нашем случае выбор будет Europe/Kiev — сделайте свой выбор на основании географического положения):

2013-09-29_0137Пришло время ввести пароль администратора. Как правило, это достаточно сложная комбинация букв в верхнем и нижнем регистре, цифр и символов. В нашем случае можно упростить пароль до одной цифры, повторенной 6 раз (система требует минимальный пароль пользователя root длиной 6 символов) поскольку эта виртуальная машина не будет доступна из интернет:

2013-09-29_0138При использовании такого тривиального пароля потребуется дополнительное подтверждение (Use Anyway):

2013-09-29_0144На следующем шаге укажите системе использовать весь диск (Use entire drive):

2013-09-29_0145И подтвердите выбор нажатием на Write changes to disk:

2013-09-29_0147По окончании подготовки диска будут загружены обязательные пакеты, включающие ядро системы, минимальный набор утилит и общие библиотеки. Затем будет установлен загрузчик системы.

Появление поздравлений скажет о том, что установка системы завершена:

2013-09-29_0203

Прежде чем нажать Reboot, нам потребуется «извлечь» инсталляционный диск, который пока занят программой установки системы. Чтобы подготовить систему к запуску, отключите виртуальную машину, закрыв окно и подтвердив отключение:

2013-09-29_0210

Извлекаем диск:

VirtualBox_EjectCDimage

Теперь снова запустите виртуальную машину и дождитесь окончания загрузки:

2013-09-29_0236В качестве логина введите root, а пароль — укажите тот же, что задали во время инсталляции. Обратите внимание: пароль при вводе никак не отображается.

После ввода регистрационных данных появится приглашение ко вводу команд:

2013-09-29_0237Последовательно введите:

yum -y update

— эта команда проверит наличие обновлений системы, загрузит и установит их (это может быть длительный процесс):

2013-10-02_0122

yum -y install apache mysql php mysql-server php-mysql

— этой командой к установленному и обновленному Linux добавим AMP…

Доступ к виртуальной машине

Здесь также множество вариантов настройки. Сделаем возможным доступ к виртуальной машине из локальной сети. Для этого переведем сетевой адаптер VirtualBox в режим Bridged Adapter:

  1. Щелкните правой кнопкой на значок «Сетевые адаптеры»
    2013-10-02_0156и запустите диалог настройки.
  2. Выберите режим Bridged Adapter
    NetworkModeи в поле Name выберите используемый сетевой адаптер (если их несколько).
  3. Закройте диалог, подтвердив изменения — нажмите ОК.

Теперь виртуальная машина делит с хостом (вашей основной операционной системой) сетевой интерфейс. Обновите сетевые настройки:

/etc/init.d/network restart

При этом виртуальный Linux получит по DHCP адрес в вашей локальной сети и будет доступен с любого компьютера в этой же сети, что удобно, например, для тестирования.

Чтобы узнать полученный адрес, введите команду:

ifconfig eth0

Вывод команды довольно многословен. Нам понадобится только inet addr:

2013-10-02_0318

В приведенном примере виртуальной машине присвоен IP-адрес 192.168.1.36 — его мы и будем использовать в дальнейшем.

Закрепите за виртуальной машиной полученный IP-адрес на вашем маршрутизаторе.

Для удобства дальнейшей настройки воспользуемся программой Putty.

Putty

Запустите Putty и сделайте следующие настройки:

  • Раздел Translation — поле Remote character set — выберите UTF-8
  • Раздел Session — поле Host name (or IP address) — укажите полученный виртуальной машиной IP-адрес
  • Поле Saved sessions — введите название сессии, например, VirtualBox
  • Нажмите кнопку Save — сессия сохранится под указанным именем для дальнейшего пользования
  • Нажмите кнопку Open

В результате запустится безопасный терминал. При первом запуске он запросит подтверждение на сохранение ключа шифрования сессии.

На запрос login — как и прежде введите root, а после — пароль.

Если при запуске выдается ошибка, сеть была настроена неверно. Проверьте предыдущие шаги настройки.

Автозапуск серверов

Сервера Apache и MySQL были установлены, но они пока не сконфигурированы и не запущены.

Сделаем это в окне Putty. Обратите внимание: нажатие правой кнопки мыши в окне Putty приводит к копированию текста из буфера обмена. Это позволит вам копировать строки из примеров ниже и вставлять их без необходимости набора с клавиатуры.

Также обратим внимание, что с этого момента вы можете запустить ограниченное только ресурсами вашего компьютера терминалов для работы с виртуальной машиной. Использованный ранее терминал можно оставить как есть или завершить консольную сессию (в окне виртуальной машины) нажатием Ctrl+D.

MySQL

Введите следующие команды:

chkconfig --levels 235 mysqld on
service mysqld start
mysql_secure_installation

Первая обеспечит запуск MySQL при перезагрузке сервера. Вторая — запустит сервер. Третья — в интерактивном режиме поможет установить пароль пользователя root (по-умолчанию пароля нет), удалить тестовую базу и запретить регистрацию администратора извне. Кроме установки пароля, данную команду можно исполнить с настройками по-умолчанию. Для этого нажимайте «Ввод» в ответ на запросы, не связанные с паролем.

Прежде чем двигаться дальше, создадим базу данных для WordPress. Запустите клиент базы данных (в ответ на запрос используйте только что заданный пароль):

mysql -u root -p

Создайте базу с именем wordpress и с кодировкой UTF-8 по умолчанию:

CREATE DATABASE wordpress CHARACTER SET utf8;
EXIT;

 

Apache

Настроим автозапуск и запустим сервер:

chkconfig --levels 235 httpd on
service httpd start

Откроем доступ к серверу в правилах iptables:

vi /etc/sysconfig/iptables

При этом откроется текстовый редактор.

Подведите курсор к строке ‘-A INPUT -m state —state NEW -m tcp -p tcp —dport 22 -j ACCEPT’. Левой кнопкой мыши выделите всю строку. Нажмите клавишу ‘o’ (латинский шрифт, нижний регистр) — при этом появится пустая строка, в которую переместится курсор.

Нажмите правую кнопку мыши. В пустую строку скопируется выделенная строка.

Подведите курсор к числу 22 и замените его на 80. Должно получиться следующее:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

Нажмите клавишу ‘Esc’ и затем ‘ZZ’ (дважды нажмите Z в верхнем регистре).

Редактор пропадет.

Таким образом мы добавили правило, по которому броузеры смогут обращаться к web-серверу виртуальной машины.

Перезапустим iptables:

service iptables restart

При помощи броузера проверьте, что сервер стал доступен. В нашем случае надо открыть URL: http://192.168.1.36/ (замените IP-адрес на полученный виртуальной машиной по DHCP). В броузере должна моментально появиться заставка Apache для CentOS:

2013-10-02_0426WordPress

Нам необходимо скопировать на виртуальную машину дистрибутив WordPress. Для этого удобно использовать утилиту wget. Также нам потребуется разархиватор. Установим их:

yum -y install wget unzip

Теперь перейдем в каталог, куда будет установлен WordPress:

cd /var/www/html/

Загрузим и разархивируем последнюю версию WordPress:

wget http://wordpress.org/latest.zip
unzip latest.zip

Обратите внимание, файлы разархивируются в папку wordpress. Чтобы обеспечить доступ web-сервера к файлам, сменим владельца папки. Кроме этого, удалим дистрибутив:

chown -R apache:apache wordpress
rm -f latest.zip

Все готово! Откройте в броузере сайт по адресу http://192.168.1.36/wordpress/ (как и в примере выше используйте IP-адрес виртуальной машины).

Появится приглашение к установке WordPress:

2013-10-02_0453Следуйте по шагам инсталляции. На третьем шаге укажите пользователя базы данных: root и пароль — который вы задали при установке MySQL.

На пятом шаге — укажите название сайта и регистрационные данные, под которыми вы будете администрировать WordPress, а также свой e-mail.

Пара щелчков мыши и сервер готов к работе!

Добавить комментарий