Руководство для начинающих по созданию веб-сервера с использованием vagrant и Nginx
Руководство для начинающих по созданию веб-сервера с использованием vagrant и Nginx
Этот файл ознакомительных сведений содержит основную информацию о том, как создать веб-сервер с помощью vagrant, управляя виртуальными машинами с помощью виртуального ящика. Я также покажу вам, как вы можете синхронизировать файлы с вашего хост-компьютера на вашу виртуальную машину (гостевые машины).
Бродячий сервер Nginx
Шаги по настройке веб-сервера, такого как Nginx, на вашей гостевой машине довольно просты.
Предпосылки
Virtual Box — это менеджер виртуальных машин, который позволяет вам эмулировать операционную систему на вашем компьютере и использовать ее так, как будто она работает на реальном оборудовании устройства. Вы можете скачать это здесь
Vagrant — это инструмент для управления средами виртуальных машин, он ориентирован на автоматизацию и сокращает время настройки среды разработки. Узнай больше об этом здесь
Теперь предположим, что у вас установлена виртуальная коробка.
Создайте каталог, например, vagrant_enginx_demo
Откройте терминал и перейдите в vagrant_enginx_demo
Запустите vagrant init, это должно инициализировать каталог бродячим файлом, ваше шоу файлов выглядит так, как показано на рисунке ниже.
Вау, там много чего происходит! Теперь мы собираемся внести изменения в файл конфигурации, раскомментировав нужные нам вещи и подчистив остальные.
Это выглядит более привлекательно, ваша конфигурация выглядит примерно так. Я собираюсь объяснить вам, что делает каждая строка
Метод config.vm.box помогает бродяге определить операционную систему, которую вы хотите использовать на своем компьютере, в нашем случае это «ubuntu/trusty64».
Что касается сетевой части, это то, как наш хост видит нашу коробку (ОС), поэтому vagrant уже предоставляет нам некоторые высокоуровневые сетевые параметры для таких вещей, как перенаправленные порты (эти переадресованные порты затем позволяют вам получить доступ к порту на вашем хост-компьютере и все данные перенаправляются на порт на гостевой машине через TCP или UDP). Например: если на гостевой машине работает веб-сервер, прослушивающий порт 80, вы можете сделать сопоставление переадресованного порта с портом 8080 (или любым другим) на ваша хост-машина. Затем вы можете открыть свой браузер на localhost: 8080 и просмотреть веб-сайт, в то время как все фактические сетевые данные отправляются гостю.
Но в моем случае я использую частную сеть, которая позволяет вам получить доступ к вашей гостевой машине по некоторому адресу, который не является общедоступным из глобального Интернета. В общем, это означает, что ваша машина получает адрес в частном адресном пространстве.
Синхронизированные папки позволяют Vagrant синхронизировать папку на хост-компьютере с гостевой машиной, что позволяет вам продолжать работу с файлами вашего проекта на хост-компьютере, используя ресурсы гостевой машины для компиляции или запуска вашего проекта.
Provisioners в Vagrant позволяют автоматически устанавливать программное обеспечение, изменять конфигурации. Это полезно, поскольку коробки обычно не созданы идеально для каждого варианта использования. Конечно, это причина, по которой мы в первую очередь используем vagrant, мы не используем ssh в поле и не вводим все команды установки для работающей среды. Провайдер «оболочки» позволяет загружать и выполнять сценарий на гостевой машине.
Запустите vagrant, это загрузит все необходимые зависимости для успешной работы вашей виртуальной машины.
Установка Nginx
Теперь, когда ваша ОС Ubuntu работает, давайте установим nginx. Во-первых, есть два способа установить Nginx.
Ручная подготовка
Для ручной подготовки вашего ящика
Вы должны начать с запуска vagrant ssh, это должно войти в вашу машину для догадок, предоставив вам root-доступ, чтобы вам не приходилось постоянно вводить пароль.
Затем запустите sudo apt update, это обновит ваши двоичные файлы Ubuntu.
Запустите sudo apt install nginx, чтобы установить сервер Nginx.
Запустите сервер nginx, запустив его, а затем служебный статус nginx. Вы должны получить следующее сообщение
Или же
Автоматизация процесса
Обратите внимание, что в методе config.vm.provision есть путь к файлу с именем provision.sh, этот файл будет содержать команды, которые мы будем запускать после загрузки ОС.
Итак, создайте файл в корневом каталоге с именем provision.sh, затем добавьте в него следующие команды.
apt-получить -y обновление
apt-получить установку -y
запуск службы nginx
Этот скрипт установит и запустит сервер Nginx.
Со всем, что сделано, беги бродягой.
Запустите vagrant ssh на ssh на вашей гостевой машине
Затем запустите sudo service nginx status, чтобы подтвердить статус вашего сервера Nginx. Вы должны получить что-то вроде этого.
- нгинкс работает
в противном случае запустите vagrant provision, эта команда обеспечит выполнение скрипта provision.sh.
После того, как вы успешно вошли в свою машину для догадок, проверьте корневой каталог документа для вашего веб-сервера, так как это будет каталог для обслуживания ваших приложений. Вы можете сделать это с помощью этой команды grep «root» -R /etc/nginx/sites-enabled
После того, как вы найдете корень документа, в методе config.vm.synced_folder «.», «/usr/share/nginx/html» замените «.» с путем к файлам вашего проекта и замените «/usr/share/nginx/html» на корень вашего документа nginx (хотя это может быть то же самое с моим) Примечание: я уже объяснил, что делает config.vm.synced_folder выше
Со всеми этими настройками давайте попробуем получить доступ к гостевой машине с нашего компьютера, зайти в любую сеть, которую вы используете, которая в моем случае является частной сетью. Ваша машина для догадок должна иметь возможность обслуживать ваши файлы с вашего хоста.
Так что это в значительной степени руководство для начинающих по созданию веб-сервера на vagrant.
Первоначально опубликовано на