Интернет-магазин на платформе OpenCart

OpenCart — это платформа, предназначенная для создания собственного интернет-магазина. Платформа бесплатна и имеет открытый исходный код. С помощью OpenCart можно создать интернет-магазин любой сложности с помощью большого количества поддерживаемых сообществом дополнений.

В этой инструкции будет создан и настроен интернет-магазин на базе OpenCart. Для этого будет развернута виртуальная машина с предустановленной платформой OpenCart и требуемыми для ее работы программами, в частности, сервером MySQL.

В сценарии описана как настройка локального сервера MySQL, так и развертывание кластера БД Managed Service for MySQL на тот случай, если вам не хватает производительности или функциональности локальной СУБД. Если необходимости в кластере нет, пропустите этот шаг.

Чтобы настроить свой интернет-магазин на OpenCart:

  1. Подготовьте облако к работе
  2. Создайте виртуальную машину с платформой OpenCart
  3. (опционально) Создайте кластер баз данных MySQL
  4. Настройте OpenCart

Подготовьте облако к работе

Перед тем, как разворачивать сервер, нужно войти в Яндекс.Облако и создать платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Облако или зарегистрируйтесь, если вы еще не зарегистрированы.
  2. На странице биллинга убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша виртуальная машина. Перейдите на страницу облака и выберите или создайте каталог, в котором вы хотите создать ВМ для вашего сервера. Подробнее об иерархии ресурсов Облака.

Необходимые платные ресурсы

В стоимость поддержки инфраструктуры для OpenCart входит:

Создайте виртуальную машину с платформой OpenCart

Чтобы создать виртуальную машину:

  1. На странице каталога в консоли управления нажмите кнопку Создать ресурс и выберите пункт Виртуальная машина.

  2. В поле Имя введите имя виртуальной машины, например, opencart.

    • Длина — от 3 до 63 символов.
    • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
    • Первый символ — буква. Последний символ — не дефис.
  3. Выберите зону доступности, в которой должна находиться виртуальная машина.

  4. В блоке Публичные образы нажмите кнопку Выбрать. Выберите публичный образ OpenCart.

    На загрузочном диске будет предустановлена платформа OpenCart и необходимые для ее работы компоненты, включая PHP и MySQL.

  5. В блоке Диски выберите жесткий диск SSD размером 13 ГБ.

  6. В блоке Вычислительные ресурсы укажите следующую конфигурацию:

    • Платформа — Intel Cascade Lake.
    • Гарантированная доля vCPU — 20%.
    • vCPU — 2.
    • RAM — 4 ГБ.
  7. В блоке Сетевые настройки:

    • Выберите сеть и подсеть, к которым нужно подключить виртуальную машину. Если у вас еще нет сети или подсети, вы можете создать их прямо на странице создания ВМ: нажмите кнопку Создать новую сеть или Создать новую подсеть.
    • В поле Публичный адрес оставьте значение Автоматически, чтобы назначить виртуальной машине случайный внешний IP-адрес из пула Яндекс.Облака, или выберите статический адрес из списка, если вы зарезервировали его заранее.
  8. В блоке Доступ укажите данные для доступа к виртуальной машине:

    • В поле Логин введите предпочтительное имя пользователя, который будет создан на виртуальной машине, например, ubuntu.
    • В поле SSH-ключ скопируйте ваш открытый SSH-ключ. Пару ключей для подключения по SSH необходимо создать самостоятельно, см. раздел о подключении к виртуальным машинам по SSH.
  9. Нажмите кнопку Создать ВМ.

Создайте кластер баз данных MySQL

Если вы рассчитываете на существенную нагрузку на базу данных, или хотели бы использовать сервис управляемых СУБД, разверните кластер БД с помощью сервиса Managed Service for MySQL. Сервис берет на себя поддержку и обслуживание СУБД, в том числе мониторинг ее состояния и текущей активности, автоматическое создание резервных копий и легко настраиваемую отказоустойчивость.

Чтобы создать кластер баз данных:

  1. На странице каталога в консоли управления нажмите кнопку Создать ресурс и выберите пункт Кластер MySQL.

  2. Укажите имя кластера, например, opencart.

  3. В блоке Класс хоста выберите s2.micro. Данных характеристик хватит для работы системы без особых нагрузок.

  4. В блоке База данных укажите:

    • Имя БД — оставьте значение по умолчанию, db1.
    • Имя пользователя для подключения к базе данных — оставьте значение по умолчанию, user1.
    • Пароль, который OpenCart будет использовать для доступа к базе данных MySQL.
  5. В блоке Хосты, при необходимости, поменяйте Зону доступности, в которой должна находиться база данных. Для этого нажмите значок pencil справа от текущей выбранной зоны доступности и выберите из выпадающего списка нужную.

    Совет

    Рекомендуется выбрать ту же зону доступности, которую вы выбрали при создании виртуальной машины. Это позволит уменьшить задержку (latency) между виртуальной машиной и базой данных.

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

  7. Остальные поля оставьте без изменений.

  8. Нажмите кнопку Создать кластер.

Создание кластера БД может занять несколько минут.

Настройте OpenCart

  1. Откройте веб-интерфейс интернет-магазина OpenCart. Для этого откройте в браузере адрес http://<публичный-IP-адрес-ВМ>/. Откроется страница настройки OpenCart.

  2. Ознакомьтесь с лицензией и нажмите Continue.

    Шаг 1

  3. Убедитесь, что все строки с требованиями к системе отмечены с зелеными галочками, и нажмите кнопку Continue.

    Шаг 2

  4. Настройте доступ к базе данных:

    1. Зайдите по SSH на созданную виртуальную машину.
    2. Перейдите в режим администратора sudo -i.
    3. Откройте файл default_passwords.txt в домашней директории администратора:
      root@opencart:~# cat default_passwords.txt
      MYSQL_USER=opencart
      MYSQL_PASS=qDbvN1R6tA6ET
      MYSQL_ROOT_PASS=5DiVb80l1kXVz
      MYSQL_DB=opencart
      
    4. На странице настройки OpenCart в секции базы данных, введите соответствующие данные:
      • Username — значение переменной MYSQL_USER.
      • Database — значение переменной MYSQL_DB.
      • Password — значение переменной MYSQL_PASS. Остальные поля оставьте без изменения.
    • Кластер Managed Service for MySQL

      Если вы используете кластер Managed Service for MySQL, введите нужные атрибуты кластера:

      • Hostname — укажите полное доменное имя (FQDN) созданной базы данных. Чтобы его узнать:
        1. Перейдите в новой вкладке браузера на страницу каталога в консоли управления.
        2. Выберите раздел Managed Service for MySQL.
        3. В таблице выберите созданный вами кластер.
        4. В меню слева выберите вкладку Хосты.
        5. Подведите курсор к полю Имя хоста (например, rc1c-vok617m35g3dj23i) и скопируйте полное доменное имя базы данных, нажав на значок copy.
      • Username — имя пользователя (в примере user1).
      • Database — имя БД (в примере db1).
      • Password — указанный вами пароль пользователя. Остальные поля оставьте без изменения.
  5. Задайте имя администратора, его пароль и актуальный электронный адрес. После этого нажмите кнопку Continue.

    Шаг 3

  6. Откроется страница с уведомлением о том, что система настроена. Чтобы настроить интернет-магазин, нажмите кнопку Login to your administration и введите логин и пароль администратора.

    Шаг 4

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

    user@opencart:~$ sudo -i
    root@opencart:~# rm -rf /var/www/opencart/install/
    
  8. Чтобы проверить главную страницу сайта, перейдите по адресу http://<публичный-IP-адрес-ВМ>/. Вы увидите главную страницу сайта глазами пользователя, посетившего ваш интернет-магазин.

    Шаг 5

Как удалить созданные ресурсы

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

Если вы зарезервировали статический публичный IP-адрес специально для этой ВМ:

  1. Откройте сервис Virtual Private Cloud в вашем каталоге.
  2. Перейдите на вкладку IP-адреса.
  3. Найдите нужный адрес, нажмите значок ellipsis и выберите пункт Удалить.