Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Практические руководства
    • Все руководства
        • Обзор
        • Консоль управления
        • Terraform
      • Перенос WordPress сайта с хостинга в Yandex Cloud
      • Организация виртуального хостинга
      • Создание веб-приложения на Python с использованием фреймворка Flask
      • Хостинг статического сайта на фреймворке Gatsby
      • Миграция в Cloud CDN из стороннего CDN-провайдера
      • Получение статистики посещения сайта с использованием S3 Select

В этой статье:

  • Подготовьте облако к работе
  • Необходимые платные ресурсы
  • Создайте инфраструктуру
  • Настройте WordPress
  • Как удалить созданные ресурсы
  1. Прикладные решения
  2. Создание сайта
  3. Создание сайта на WordPress
  4. Terraform

Создание сайта на WordPress с помощью Terraform

Статья создана
Yandex Cloud
Улучшена
kvendingoldo
Обновлена 19 мая 2025 г.
  • Подготовьте облако к работе
    • Необходимые платные ресурсы
  • Создайте инфраструктуру
  • Настройте WordPress
  • Как удалить созданные ресурсы

Чтобы создать и настроить сайт на WordPress с помощью Terraform:

  1. Подготовьте облако к работе.
  2. Создайте инфраструктуру.
  3. Настройте WordPress

Если созданные ресурсы вам больше не нужны, удалите их.

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

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

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

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Убедитесь, что в выбранном каталоге есть облачная сеть с подсетью хотя бы в одной зоне доступности. Для этого на странице каталога выберите сервис VPC. Если в списке есть сеть — нажмите на нее, чтобы увидеть список подсетей. Если нужных подсетей или сети нет, создайте их.

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

В стоимость поддержки сайта на WordPress входит:

  • плата за постоянно запущенную ВМ (см. тарифы Yandex Compute Cloud);
  • плата за использование динамического или статического публичного IP-адреса (см. тарифы Yandex Virtual Private Cloud);
  • плата за публичные DNS-запросы и зоны DNS, если вы используете Yandex Cloud DNS (см. тарифы Cloud DNS).

Создайте инфраструктуруСоздайте инфраструктуру

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Для создания инфраструктуры с помощью Terraform:

  1. Установите Terraform, получите данные для аутентификации и укажите источник для установки провайдера Yandex Cloud (раздел Настройте провайдер, шаг 1).

  2. Подготовьте файлы с описанием инфраструктуры.

    Готовый архив
    Вручную
    1. Создайте папку для файлов.
    2. Скачайте архив (1 КБ).
    3. Разархивируйте архив в папку. В результате в ней должен появиться конфигурационный файл wordpress.tf.
    1. Создайте папку для файлов.

    2. Создайте в папке конфигурационный файл wordpress.tf:

      wordpress.tf
      terraform {
        required_providers {
          yandex = {
            source  = "yandex-cloud/yandex"
            version = ">= 0.47.0"
          }
        }
      }
      
      provider "yandex" {
        zone = "ru-central1-a"
      }
      
      resource "yandex_compute_image" "wordpress" {
        source_family = "wordpress"
      }
      
      resource "yandex_compute_disk" "boot-disk" {
        name     = "bootvmdisk"
        type     = "network-hdd"
        zone     = "ru-central1-a"
        size     = "20"
        image_id = yandex_compute_image.wordpress.id
      }
      
      resource "yandex_compute_instance" "vm-wordpress" {
        name        = "wordpress"
        platform_id = "standard-v3"
      
        resources {
          core_fraction = 20
          cores         = 2
          memory        = 1
        }
      
        boot_disk {
          disk_id = yandex_compute_disk.boot-disk.id
        }
      
        network_interface {
          subnet_id          = yandex_vpc_subnet.subnet-1.id
          nat                = true
          security_group_ids = ["${yandex_vpc_security_group.sg-1.id}"]
        }
      
        metadata = {
          ssh-keys = "<имя_пользователя>:<содержимое_SSH-ключа>"
        }
      }
      
      resource "yandex_vpc_security_group" "sg-1" {
        name        = "wordpress"
        description = "Description for security group"
        network_id  = yandex_vpc_network.network-1.id
      
        ingress {
          protocol       = "TCP"
          description    = "ext-http"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 80
        }
      
        ingress {
          protocol       = "TCP"
          description    = "ext-https"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 443
        }
      
        egress {
          protocol       = "ANY"
          description    = "any"
          v4_cidr_blocks = ["0.0.0.0/0"]
        }
      }
      
      resource "yandex_vpc_network" "network-1" {
        name = "network1"
      }
      
      resource "yandex_vpc_subnet" "subnet-1" {
        name           = "subnet1"
        zone           = "ru-central1-a"
        network_id     = yandex_vpc_network.network-1.id
        v4_cidr_blocks = ["192.168.1.0/24"]
      }
      
      resource "yandex_dns_zone" "zone-1" {
        name        = "example-zone-1"
        description = "Public zone"
        zone        = "example.com."
        public      = true
      }
      
      resource "yandex_dns_recordset" "rs-1" {
        zone_id = yandex_dns_zone.zone-1.id
        name    = "example.com."
        ttl     = 600
        type    = "A"
        data    = ["${yandex_compute_instance.vm-wordpress.network_interface.0.nat_ip_address}"]
      }
      
      resource "yandex_dns_recordset" "rs-2" {
        zone_id = yandex_dns_zone.zone-1.id
        name    = "www"
        ttl     = 600
        type    = "CNAME"
        data    = ["example.com"]
      }
      

    Более подробную информацию о параметрах используемых ресурсов в Terraform см. в документации провайдера:

    • Виртуальная машина — yandex_compute_instance
    • Группы безопасности — yandex_vpc_security_group
    • Сеть — yandex_vpc_network
    • Подсети — yandex_vpc_subnet
    • DNS-зона — yandex_dns_zone
    • Ресурсная запись DNS — yandex_dns_recordset
  3. В блоке metadata укажите метаданные для создания ВМ <имя_пользователя>:<содержимое_SSH-ключа>. Указанное имя пользователя не играет роли, ключ будет присвоен пользователю, который задан в конфигурации образа WordPress. В разных образах это разные пользователи. Подробнее см. в разделе Ключи, обрабатываемые в публичных образах Yandex Cloud.

  4. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

Настройте WordPressНастройте WordPress

Чтобы настроить WordPress:

Консоль управления

После того как ВМ wordpress перейдет в статус RUNNING, выполните:

  1. В блоке Сеть на странице ВМ в консоли управления найдите публичный IP-адрес ВМ и внесите в ресурсную запись типа А, созданную ранее.

    add-ssh

  2. Перейдите по доменному имени, которое вы настроили, или по адресу ВМ в браузере.

  3. Выберите язык и нажмите кнопку Продолжить.

    choose-language

  4. Заполните информацию для доступа к сайту:

    1. Укажите любое название сайта, например, yc-wordpress.
    2. Укажите имя пользователя, которое будет использоваться для входа в административную панель, например, yc-user.
    3. Укажите пароль, который будет использоваться для входа в административную панель.
    4. Укажите вашу электронную почту.

    credentials

  5. Нажмите кнопку Установить WordPress.

  6. Если установка прошла успешно, нажмите кнопку Войти.

    login

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

  8. Убедитесь, что сайт доступен, открыв публичный IP-адрес ВМ в браузере.

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

Чтобы перестать платить за созданные ресурсы:

  1. Откройте конфигурационный файл wordpress.tf и удалите описание создаваемой инфраструктуры из файла.

  2. Примените изменения:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

См. такжеСм. также

  • Создание сайта на WordPress с помощью консоли управления.

Была ли статья полезна?

Предыдущая
Консоль управления
Следующая
Обзор
Проект Яндекса
© 2025 ООО «Яндекс.Облако»