Digitalocean dns настройка и привязка домена
Создаем себе веб-сервер на DigitalOcean с использованием VestaCP.
Я уже пол года как перевел все свои проекты и разработку с drupalhosting на DigitalOcean. Теперь я хочу поделиться, как я туда переезжал, и как там всё настраивал.
Причиной перехода с drupalhosting стал переход оплаты на $, а затем, всё это стало очень невыгодно, и всё это случилось до скачка курса. Мелкие сайты, визитки, посадочные страницы там всё же выйдет держать дешевле чем на самом дешевом варианте в DO, но все что имеет посещаемость и какую-никакую нагрузку, уже становится невыгодным.
Также немаловажный фактор стал что, возможно, я просто уже вырос из хостингов, и мне хотелось большего, так сказать, простора и контроля. На digitalocean я получил его в полном объеме, это полноценный выделенный облачный сервер, которым ты распоряжаешься как душе угодно. Никаких проблем не составит подключить дополнительные языки программирования, софт вроде Solr, Sphinx, Elasticsearch, обновиться до последней версии php и множество других плюсов. Разумеется, всё это требует настроек, поэтому я пишу данный гайд, как поднять свой сервер, не владея большими знаниями в администрировании (как у меня).
Скажу сразу, за эти пол года, я ни разу не столкнулся с проблемой, сервера не разу не зависли, не упали, никаких отказов и т.д. Работало всё как часы, при этом я смело ставил на сервер различные пакеты, и всё стояло как часы.
В текущем материале я напишу, как развернуть свой мини-хостинг. Почему мини-хостинг? Потому что на нём будет полноценная CP, с возможностью добавлять отдельных пользователей, тарифы и эти самые тарифы присваивать пользователям, по принципу хостинга. При этом у каждого будет своя защищенная область от других лиц. Отличная возможность предложить услуги содержания сайтов клиентов, если они настаивают на этом. А главный плюс в том, что у вас появляется полная свобода, и соотношение цена\качество просто отличное, даже с учетом текущего курса (!).
А теперь по порядку.
Instructions
To use DigitalOcean DNS, you’ll need to update the nameservers used by your domain registrar to DigitalOcean’s nameservers instead. In this article, we’ll show you how to look up the registrar for your domain, then provide step-by-step guidance on how to update the nameserver settings for the following registrars:
Sign in to your GoDaddy account.
On your account homepage, click the DNS tab on the right-hand side of the Domains main page. It will be located in between the Add Privacy and Manage tabs.
On the next screen, navigate to the section of the page that reads Nameservers. Click Change.
When prompted, select Custom from the drop-down menu, and enter the following nameservers:
Note that you will have to click Add Nameserver to add the last entry. Click Save to apply your changes.
Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to find out about what to do next.
Sign into your HostGator account.
Click on the domain name that you want to use with your Droplet.
You will then be presented with a Domain Overview. Click on Change under Name Servers.
Select Manually set my name servers and enter the following:
Note that you will have to click the green + symbol to add the third name server.
Click Save Name Servers to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your Namecheap account, then click Domain List in the left-hand column. You will be presented with a dashboard listing all of your domains. Click the Manage button of the domain you’d like to update.
In the Nameservers section of the resulting screen, select Custom DNS from the dropdown menu and enter the following nameservers:
Click the green checkmark to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read on what to do next.
Sign in to your 1&1 account and go to Domains tab on the left side of your homepage.
Once on the Domains landing page, click on your domain name.
On the next page, click on Modify DNS Settings.
Under Name Server Settings, select Other name servers. Enter the following nameservers:
Scroll down to the bottom of the page and click Save to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Click on the My Account icon, and select My Dashboard from the dropdown menu.
On the Dashboard screen, click on your domain name.
On the your domain’s home screen, click on Nameservers, on the left side of your screen.
Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your Network Solutions account.
Select My Domain Names.
Find the domain name that you want to use with your Droplet, then select Change Where Domain Points.
Select Domain Name Server (DNS), then select Continue.
Enter the following nameservers:
Select Continue, then confirm your changes on the next page by selecting Apply Changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your eNom account.
Under Domains, select Registered Domains. If you have multiple domains registered with eNom, select the domain name that you want to use with your Droplet.
Select DNS Server Settings.
Under User our Name Servers?, select Custom.
Enter the following nameservers:
Select save, then confirm your changes in the popup by selecting OK. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your Gandi account.
Navigate to Domains on the left side of your dashboard.
Click on the domain you would like to use with your Droplet.
Select Nameservers from the menu on the left of your screen.
Click on the pen icon under the Change heading at the bottom of the Nameservers screen.
Fill in the nameserver fields with the following:
Click Save. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Under the Account Dashboard, select Domains and then Manage from the list of available options.
Click Manage under Manage Product for the domain name you want to associate with your Droplet.
Under DOMAIN NAME SYSTEM SERVERS (DNS SERVERS), enter the following nameservers into the New DNS Server fields:
Select Continue, then confirm your changes on the next page by selecting Continue. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your A Small Orange account and select My Domains.
Find the domain name that you want to use with your Droplet, then select Manage Domain to the right of that domain name.
By default, A Small Orange locks your domain to prevent it from being transferred away without your authorization. This means that before we can change the nameservers, we’ll need to disable this lock. Select the Registrar Lock tab, then select Disable Registrar Lock.
Select the Nameservers tab.
Enter the following nameservers:
Select Change Nameservers to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read on what to do next.
Sign in to your iwantmyname account and select the Domains tab.
Select the domain name that you want to use with your Droplet.
Under Nameservers, select update nameservers.
Unlike many other domain registrars, iwantmyname features a menu of popular web hosts with preconfigured DNS settings.
Select Update nameservers to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section at the end of this article to read about what to do next.
Sign in to your Google Domains account.
Select the domain name that you want to use with your Droplet.
On the lefthand navbar, click on DNS.
Click on Use custom name servers.
Enter the following nameservers:
Note: You’ll need to hit the + to the right of the nameserver field to make more fields visible.
Select Save to apply your changes. Now you are ready to move on to connecting the domain with your Droplet in the DigitalOcean control panel. Check out the Conclusion section below to read about what to do next.
You can enter these nameservers into the appropriate fields when prompted, following the examples outlined in the previous sections.
What’s Next?
Once your domain is pointed to DigitalOcean’s nameservers, you can begin managing its DNS records from the Control Panel. See How to Create, Edit, and Delete DNS Records and How to Add a Subdomain to Your Domain to get started. You can also learn more about how DNS works in An Introduction to DNS Terminology, Components, and Concepts
Продолжая цикл статей по администрированию и разворачиванию проекта в интернете на DigitalOcean, сегодня решил рассказать о том, как привязать домен к аккаунту на DigitalOcean. Сам же домен был куплен на Namecheap, потому демонстрация будет на примере его панели, однако, основные шаги будут идентичными, даже, если вы используете другую панель.
Перед тем, как начать, на данный момент у вас должно быть:
Если у вас ещё нет аккаунта на DigitalOcean, то в одной из прошлых статей я писал, как можно зарегистрироваться, и получить бесплатных 2 месяца использования сервисом.
Запускаем Drupal ¶
Давайте создадим базу для друпала. Для этого в CP переходим на вкладку DB (там будет стандартная БД, можете удалить, а можете пользоваться прямо ею), жмём “Добавить БД”. Заполняем данные:
- База данных: название таблицы БД, приставки с именем пользователя будет добавлена автоматически.
- Пользователь: пользователь БД, приставка также будет добавлена автоматом.
- Пароль для доступа.
После того как заполнили все эти три поля жмём “Добавить”, попутно можете удалить email адрес, если не хотите чтобы данный по БД ушли на почту.
Теперь зайдя по адресу подключенного домена у вас должна запуститься установка друпала. Данные для базы указываем как выше. Т.е. в моём случае, база и пользователь admin_example, а пароль mystrongestpassword. После чего всё как по старинке, уже можно работать с друпалом.
Если нужен еще один сайт. Подключаем домен (если он новый, в случае поддомена действий в DO не нужно), создаем домен и бд в CP, отгружаем друпал или что угодно.
Resize ¶
Данный раздел окажется для вас полезным, если вы захотите усилить свой сервер. Допустим, перейти на тариф за 10$. Это сделает переход безболезненным, потребуется лишь перезагрузка сервера.
Создание дроплета ¶
На DigitalOcean, сервера называются дроплеты, вы можете создавать ограниченное кол-во дроплетов на один аккаунт, но всё это расширяется обращением в службу поддержки.
Итак, переходим на страницу создавния дроплета и для начала нам нужно дать название нашему дроплету и выбрать необходимую мощность сервера (тариф).
Я назвал дроплет myhosting и для демонстрации выбрал тариф за 5$.
На этапе выбора региона следует учитывать географическое расположения датацентров. Если ваша цель Европа\Страны СНГ, то необходимо выбирать Амстердам. В некоторых случаях прокатит и Лондон, но учтите что он дальше Нидерландов, и пинг будет выше, причем ощутимо. Поэтому лучше не рисковать и выбирать Амстердам. А какой номер датацентра, разницы не имеет, просто выбирайте какое число больше нравится из доступных. Допустим, на момент написания, первый ДЦ полностью занят и там создавать дроплеты нельзя.
Далее идут дополнительные настройки. Их включается на своё усмотрение и если понимаете зачем они. Учтите, что услуга бэкапов идёт отдельной стоимостью. Мы же сделаем бекапы самим сервером и будем хранить их у себя.
Далее выбор сервера\приложения и прочие возможности. Учтите, что хоть в приложениях и есть Drupal на Ubuntu 14.04, там всего-лишь настроенный вебсервер под один (!) сайт. Нам нужен сервер, и в текущем гайде я буду использовать Ubuntu 14.04
После этого жмём зеленую кнопку “Create droplet” и дожидаемся установки дроплета.
Разбираемся в CP ¶
Итак, заходим по нашему адресу, вводим admin и пароль указанный в терминале. Если всё ввели правильно, то попадете на главную страницу CP.
Давайте для начала сделаем его на русском языке. Справа у admin, на влкадке user, жмём edit, в поле language выбираем ru, сохраняем, получаем всё на русском.
Так привычнее, не так ли? А теперь давайте в кратце расскажу о важных и нужны вкладках.
Сначала по верхним:
- Пакеты - проще говоря тарифы хостинга. У каждого пользователя свой тариф. Тариф может накладывать\снимать ограничения на определенный части сервера. Допустим, кол-во доменов, имеет ли пользователь доступ по FTP, максимально место на диске и т.д. и т.п. Всё как на хостингах, только правите тут вы сами.
- Службы - тут можно увидеть все важные запущенные службы на сервер, отсюда можно перезагрузить как весь сервер, так и перезапустить определенные его части, например веб-сервер.
А теперь чуть пониже:
- USER - тут управление всеми пользователями на серве. Удаление, добавление, блокировка и т.д.
- WEB - управление доменами текущего пользователя.
- DNS - управление DNS записями для доменов текущего пользователя. В нашем случае совершенно бесполезная вкладка (в разделе привязки домена будет рассказано почему, если в кратце, они управляются из digitalocean а не сервера).
- MAIL - управление почтой. Не тестил, ибо все подключено на gmail.
- DB - управление базами данных.
- CRON - управление кроном сервера.
- BACKUP - все последние бекапы, а также возможность создать прямо здесь и сейчас. Также тут можно скачать любой из бэкапов (в зависимости от кол-ва которое будет хранится).
А теперь давайте немного полезной информации. Все доступы к серверу пользователь имеет одинаковые связки. Т.е. всего один и тот же логин, пароль и адрес сервера. Вместо ip адреса сервера, в дальнейшем можно будет заменять доменом который прикреплен на данный ip.
Например, чтобы подключиться к серверу по ssh как админ, надо ввести следующее:
А затем ввести пароль от пользователя admin. Кстати, по умолчанию, у всех тарифов, а следовательно и пользователей, будет отключен доступ к серверу по ssh. Вы можете его включить, зайдя в настройки конкретного пользователя и выставив параметр “Доступ по SHH” на bash, либо зайти в пакеты, и целому тарифу разрешить доступ по sh.
Для подключения по FTP:
- Имя сервера\хост: IP или любой домен с этого IP
- Логин: admin
- Пароль: пароль пользователя admin
Snaphots ¶
Тут можно сделать “бэкап” всего образа сервера. Полезная опция при переносе на другой аккаунт. Также позволяет создать дроплет, настроить его и отдать клиенту по почте. А ему надо будет лишь принять его, при этом он получит полностью настроенный сервер.
Graph ¶
Тут вы увидете графики по нагрузке сервера и канала.
Создаем VPS
Первым делом регистрируемся на сайте DigitalOcean. Здесь мы купим VPS — виртуальный сервер. После удачной регистрации и входа в свою админку жмем на большую зеленую кнопку "Create" и нам предложат активировать свой аккаунт, внеся $5 долларов. Ниже на странице есть место для указания счастливого купона на $10, вводите OMGSSD10 или поищите свежий купон. Так как моя банковская карточка не подошла хостеру, я оплатил пейпалом и у меня на счету оказалось $15. Этого должно хватить на 3 месяца.
2. Создаем SSH-ключ
Доступ к удаленным серверам обычно делается по ssh. Это такая технология защищенных соединений. Зайти в нашу будущую VPS можно по паролю или по SSH-ключу. Я настоятельно рекомендую второй вариант, не придется все время вводить пароль. Также, SSH-ключ все равно нужно будет указать при создании нашего нового "дроплета" (словом "droplet" DigitalOcean называет виртуальный сервер).
Выполните следующие две команды в терминале, чтобы сгенерировать ssh-ключ:
И тут нас просят ввести имя файла ключа. Рекомендую использовать что-нибудь вроде id_rsa_digitalocean_dropletname , где имя дроплета — это либо имя домена, на который мы привяжем наш сервер, либо просто какое-нибудь осмысленное название. Парафразу можно оставить пустой, и так сойдет.
После этого будет создано два файла: ssh-ключ и public-ключ. Скопируем публичный ключ в буфер обмена модным способом:
Теперь зайдем в админку в digitaloceans в раздел SSH-keys и создадим там новый ключ, вставив его из буфера обмена.
3. Создаем дроплет
- В качестве hostname укажите доменное имя или что-нибудь осмысленное, это название роли не играет
- Размер выбирайте самый маленький, его потом можно будет увеличить из терминала
- Регион любой, я выбрал Амстердам
- Образ выберите на вкладке Applications, c названием "Dokku v0.2.3 on Ubuntu. " или похожим
- Укажите SSH-ключ, который мы создали на предыдущем шаге
Выбранный образ помимо операционной системы Ubuntu 14.04 содержит самое главное: Dokku. Это готовая система для хостинга node.js-проектов, очень похожая на Heroku. Использование образа с предустановленным Dokku избавит нас от необходимости устанавливать и настраивать систему для хостинга Node.js.
4. Настройка Дроплета и DNS
Теперь нужно настроить новосозданный сервер. Зайдите в браузере по IP-адресу дроплета и вы увидете экран настройки. Если такой страницы нет, смотрите что делать в конце статьи.
Здесь вы должны убедится, что поле "Public Key" заполнено. Если нет — укажите свой public key из недавно сгенерированного ключа. Однако практика показала, что лучше вообще удалить такой дроплет и создать новый, правильно указав SSH-ключ.
Если у вас нет доменного имени, то оставьте все, как есть, жмите "Finish setup" и переходите к следующему пункту. Ваше приложение будет доступно примерно так: "19.19.197.19:46667", по IP адресу и номеру порта. Если вас это не устраивает — срочно купите доменное имя. В любом случае, настроить доменное имя можно будет позже, о чем я расскажу в конце.
Укажите в поле Hostname ваше доменное имя и поставьте галочку "Use virtualhost naming for apps". Теперь идите в панель управления вашим доменным именем и впишите две новые настройки примерно так:
Точный синтаксис уточните у себя в админке доменного имени или у домен-провайдера.
Теперь возвращайтесь на страницу настройки дроплета и жмите "Finish setup".
5. Настраиваем использование SSH
Давайте попробуем соединиться с нашим новым сервером. Чтобы получить доступ дроплету через SSH-ключ, нужно еще одно маленькое действие. Откройте терминал и передите в папку с ssh-ключами:
Если у вас еще нет файла "config" в этой папке (проверка — $ ls ), то его необходимо создать:
Теперь открываем config( $ open config ) и записываем в него следующие данные:
Где в первой строчке IP адрес или доменное имя, на второй строчке — имя созданного ssh-ключа для этого дроплета.
Где после "@" надо указать или доменное имя, или IP.
Если вы пропустили создание SSH-ключа, войти можно по паролю, который пришел к вам на почту. Для этого выполните ту же команду:
и на вопрос о продолжении соединения напишите "yes". После этого введите пароль.
Если вы увидели приветственный экран, значит все хорошо. Закроем соединение командой exit и перейдем к следующему пункту.
Часть 1: смена DNS-записей домена в панеле управления доменом Namecheap
Изменение DNS-записей может занять до 24 часов.
Prerequisites
To follow along with this tutorial, you will need a domain name that you own or control.
If you need to look up your domain’s registrar, you can use the ICANN WHOIS website or use the whois command from a Linux or macOS terminal:
The registrar’s website is located on the Registrar URL line:
To change the nameservers, you’ll need to log into the domain registrar’s account management section. Once you’re logged in, follow the directions for your registrar below. If your registrar is not included, check their documentation for changing nameservers.
Шаг 2: Добавление и настройка домена в панеле DigitalOcean
- Войдите в свой аккаунт DigitalOcean
- Перейдите на вкладку Manage > Networking
- Введите имя вашего домена в появившейся форме:
- И нажмите на кнопку Add Domain
- Теперь нужно добавить A-запись в меню управления этим доменом, которая будет указывать на то, к какому дроплету DigitalOcean привязан этот домен.
Для этого, в поле Hostname укажите @, это краткая форма записи имени вашего домена. То есть, @ - это основной адрес (в моём случае - domain.name ).
После чего, нажмите на поле Will direct to, и во всплывающем окне выберите дроплет, на который будет ссылаться этот домен.
Записи AAAA похожи на A-записи, отличаются только тем, что предназначены для IPV6, в то время, как A-записи - для IPV4. И вы, без проблем, можете использовать обе из этих записей.
Панель управления дроплетом ¶
После создания дроплета, вас перекинет на панель управления дроплетом, а также, вышлют письмо с root доступами на сервер.
Давайте разберемся немного с панелью управления дроплетом.
Destroy ¶
А перейдя сюда, вы сможете полностью удалить свой сервак.
Проблемы и их устранение
Я сам разбирался с настройкой такого хостинга более суток, и набил несколько шишек. И чтобы вы могли съэкономить свое время, привожу здесь несколько возможных проблем и пути их решения.
1. Мою банковскую карточку не приняли для оплаты
Они такие, да. Даже Visa Classic им не нравится. Оплатите через PayPal, это не трудно.
2. Создал дроплет, но по IP адресу нет страницы настройки dokku
- указать образ с Dokku
- нажмите кнопку "Rebuild from Image".
3. Не могу получить доступ к дроплету ни по паролю, ни по SSH
- Наверное, вы как-то пропустили шаг настройки dokku, или dokky создался не правильно.
- Проверьте, если доступна страница настройки dokku по IP адресу дроплета, то вернитесь к шагу 4 создания VPS.
- Если страницы настроек нет, тогда попробуйте сбросить пароль и повторить попытку доступа через терминал. Если даже в этом случае доступ по паролю будет неудачным, тогда переустановите дроплет, как описано в предыдущем пункте.
4. Я не знаю пароля от дроплета
Если у вас нет пароля, зайдите на страницу управления дроплетом, вкладка "Access" и сделайте reset пароля. Тогда на почту придет новый пароль.
5. Проект не запускается по указанной ссылке
Если настройки dokku верны, такая ситуация возможна, если приложение запустилось с ошибкой и было закрыто. Зайтиде по ssh в дроплет и проверьте логи:
Возможно, ошибка будет понятна. Или же вы забыли запустить ваш проект после push'а:
6. Я пропустил создание SSH, и теперь хочу сделать авторизацию по SSH-ключу
Я пытался создать новый дроплет без указания ssh-ключа на странице создания дроплета, но на странице настроек dokku все равно просят ввести паблик-ключ. После этого я принял некоторые действия, но все равно зайти по ssh-ключу у меня не вышло, только пароль. Так что я не знаю, как лучше действовать в данной ситуации. Возможно, ошибка происходила при команде копирования ssh ключа в дроплет. Гуглите. В крайнем случае создайте новый дроплет с самого начала, по уму, как в этом руководстве. Пример поиска.
7. Как добавить доменное имя к уже существующему дроплету
Это делается совсем не трудно, всего в несколько шагов. В настройках DNS вашего доменного имени указать настройки:
В дроплете зайти в папку dokku и открыть для редактирования HOSTNAME:
Нажать клавишу "i" и записать в файле "HOSTNAME" доменное имя вместо IP адреса; затем нажать Esc , кнопки :wq и Enter . Ура! Мы только что успешно использовали легендарный Vim!
Чтобы проекты запускались на поддоменах, нужно создать файл VHOST :
И записать в файле доменное имя таким же способом, как это было в предыдущем пункте. В противном случае проекты будут доступны через порт. Теперь надо перезалить проект, а перед этим удалить его из dokku:
Удалить в репозитории предыдущий remote с IP-адресом в названии:
И добавить новый remote под старым именем:
Настраиваем SSH-ключ на новый хостинг, дописывая в ~/.ssh/config новые строчки:
В этой статье я подробно расскажу про установку и настройку Web-сервера на хостинге DigitalOcean. Эта статья больше подойдёт для новичков, которые раньше не имели дела с виртуальными выделенными серверами.
Перед нами панель управления, в которой пока нет ни одного сервера:
Нажимаем кнопку «Create Droplet». Появится форма, в которой нам необходимо выбрать имя нашего сервера (можно придумать любое на английском языке с цифрами, но без пробелов и знаков). Там же необходимо выбрать характеристики (от которых в свою очередь зависит стоимость), размещение и операционную систему.
С именем сервера и характеристиками думаю проблем возникнуть не должно. От выбора места размещения сервера зависит время пинга до него. Чем ближе физически он расположен к клиентам — тем лучше. На момент написания статьи были доступны датацентры в следующих городах:
- Амстердам (Нидерланды);
- Нью-Йорк (США);
- Сан-Франциско (США).
Выберем Амстердам — он ближе 🙂
В качестве операционной системы выберем CentOS 6.4 x32 (либо если есть что поновее). Галочку «Enable VirtIO» оставляем. Нажимаем большую зелёную кнопку «Create Droplet».
Теперь можно пойти попить чайку… Правда недолго)) Сервер будет создан уже через 55 секунд!
Теперь мы попали в панель управления сервером. Давайте посмотрим, что же мы можем делать:
- Power
- Power Cycle — выключение и повторное включение сервера.
- Power Off — выключение. Здесь же можно потом его и запустить.Это всё «жёсткое» выключение, эквивалентное отключению из розетки и должно применяться только при зависаниях сервера. В штатной ситуации лучше пользоваться консолью.
- Console Access — доступ к серверу через VNC-соединение, так как будто вы видите экран монитора, подключенного к серверу. Можно даже использовать при наличии установленной графической оболочки.
- Reset Root Password — сброс пароля суперпользователя root.
Тем временем, на ваш электронный ящик должно было прийти письмо с паролем для доступа к серверу. Обязательно запишите его, а также IP-адрес.
Теперь можно зайти на сервер через браузерный консольный доступ. (если вы видите просто чёрный экран, то щёлкните по нему мышкой, а затем нажмите любую клавишу)
Но гораздо удобнее это делать с помощью программы Putty через SSH-соединение:
В первую очередь меняем пароль на пользователя root (не забудьте записать его). Для этого вводим следующую команду:
И два раза вводим новый пароль.
Теперь ставим панель управления Vesta. По очереди вводим следующие команды:Соглашаемся на установку и вводим свой электронный почтовый адрес. Ждём несколько минут, пока всё установится. Обязательно запишите данные для доступа к панели управления, которые появятся в конце процесса установки:
Для выхода из консоли вводим «exit».
Если это так, то всё нормально.
Это панель управления Vesta. Здесь можно управлять пользователями, сайтами, базами данных, почтовыми аккаунтами, резервными копиями, планировать задания. В общем делать всё то, что без неё пришлось бы делать в консоли ручками.
Для начала переключимся на русский язык интерфейса: нажимаем кнопку «edit» у пользователя admin, и там выбираем Language — Ru.
Возвращаемся обратно на вкладку «USER». Создаём нового пользователя нажатием кнопки «Добавить аккаунт». Заполняем все данные. Не рекомендую вводить очень длинное имя пользователя — ограничьтесь 5-8 символами.
Вот мы видим, что у нас теперь есть два пользователя:
Теперь все действия, которые мы будем делать, будут привязаны именно к этому пользователю. До тех пор, пока мы не нажмём кнопку «Выйти» в правом верхнем углу. Будьте внимательны!
При необходимости, также создаём базы данных и почтовые аккаунты.
Обратите внимание, что полное имя базы данных формируется из имени пользователя и введённого названия БД и не может превышать 16 символов. Например: user_dbname . Аналогично и имя пользователя базы данных: user_userdb .Для загрузки содержимого вашего сайта на сервер можно воспользоваться любым FTP-клиентом, например FileZilla. В настройках подключения необходимо будет указать IP-адрес сервера, логин и пароль пользователя, которого мы создали.
Добавление домена на сервер ¶
В панели управления DO слева есть ссылка “DNS”. Попадаем на страницу управления доменами, для добавления нового жмём “Add domain”. Заполняем поля:
- Name: сам домен
- ip address: ip адрес дроплета который получит доступ к домену, справа можно выбрать дроплет и ip подставиться самостоятельно
Жмём Create Domain и вы увидите примерно следующее:
Но лучше сразу добавить все необходимые настройки. Для этого на странице есть кнопка Add record. При помощи неё мы можем управлять DNS записями домена (следовательно DNS раздел в CP просто ненужен).
Затем жмём create. Всё, этого достаточно. Вы можете добавлять и настраивать какие угодно записи, т.е. полностью управлять доменом. Если вы хотите пользоваться gmail почтой для данного домена, то жмём “Add record”, затем выбираем MX, и внизу будет кнопка для автоматического заполенный данных для gmail, просто жмём и всё готово. Для данного домена можете забыть о настройке надолго или навсегда :).
Power ¶
На данной странице вы можете посмотреть небольшую историю по дроплету, выключить его, чтобы он не действовал, либо сделать hard reset (принудительная перезагрузка).
Резюме
В этой статье я, на примере Namecheap я продемонстрировал настройку домена на DigitalOcean, ответил на вопрос, как привязать домен на DigitalOcean, какие DNS-записи прописывать, и как полностью перенести домен на digitalocean с Namecheap.
По ходу изучения Node.js я создал много маленьких проектов. В дальнейшем мне понадобилось развернуть некоторые из них на сервере, чтобы иметь возможность развивать их в дальнейшем. Существующие хостинги Appfog и Heroku имеют ряд серьезных ограничений на бесплатных аккаунтах. На Appfog'е можно запускать одновременно не больше 2-х приложений, и бесплатная регистрация у них уже отключена. На Heroku можно создать только 5 приложений (без базы данных) без подтверждения аккаунта привязкой банковской карты. Платные аккаунты стоят очень дорого для меня (я ведь не зарабатываю на этих маленьких проектах): $20 долларов на Appfog, а heroku еще дороже. Коллеги порекомендовали попробовать хостинг на Digital Ocean — виртуальный сервер за $5 доларов в месяц, на котором можно легко настроить собственный хостинг node.js-проектов.
О том, как организовать такой хостинг, и будет идти речь в этой статье. Если по ходу руководства у вас возникнут проблемы, поищите их решение в конце статьи.
Деплоим приложение
Сервер готов, теперь пришла очередь развернуть тестовое приложение и проверить его работу.
1. Подготавливаем проект
Возьмите простой проект, типа Hello, world, без mongodb и прочего. Проверьте, что в проекте есть самое главное: "package.json", "Procfile" и какой-нибудь "app.js". "Package.json" должен выглядеть примерно так:
Содержание файла package.json важно, так как по нему dokku будет устанавливать модули для приложения. А Procfile должен выглядеть так:
Инициализируем в папке проекта репозиторий (если его не было), добавляем все файлы и коммитим:
Теперь наш проект готов к разворачиванию на сервере.
2. Заливаем и запускаем проект
Деплоить приложение будем с помощью команды git push . И для этого добавим ссылку на удаленный репозиторий нашего дроплета:
Если у нас было доменное имя для дроплета, то пишем его после "dokku@", иначе — указываем IP. После двоеточия мы указываем имя приложения. Этот индификатор будет использоваться внутри dokku.
Теперь вызываем команду push :
По идее проект должен быть запущен после этого. Но если нет, то заходим в по ssh в наш дроплет и выполняем две команды
Запускаем в браузере ссылку, полученную ранее, и радуемся!
Установка Drush ¶
Как можно пользоваться Drupal не установив Drush? И мы займёмся его установкой, но только кое-что замечу. Делать это всё нужно из под admin. Т.е. в терминале подключиться по ssh admin@ip. Почему? Потому что он админ и в системе, и там можно выполнять команды без правд root пользователя, когда под root, всё выполняется из под него же, что выливается потом в недостаток прав у других. И вообще, забудьте о юзере root почти навсегда, он на крайние случае администрирования сервера.
upd от 22.10.15 - установку через pear уже не рекомендую, намного проще делать через композер, легче обновлять сам драш и переключаться между версиями, включать необходимую для конкретного проекта и т.д.
Преимущества DigitalOcean ¶
Для начала нам необходимо зарегистрироваться на сайте. Для этого проходим по ссылке, и регистрируемся. Сложностей вызвать не должно. Придется привязать свою кридитку, или же заплатить 5$ с PayPal для активации (с карты ничего не снимается).
P.s. да, ссылка реферальная, можете перейти по обычной, но имейте ввиду, регистрируясь по реферальной, вы получаете 10$ на счёт в подарок сразу же. Вас не заставят их платить, вы вообще ничего не теряете, вы просто получаете 10$ и начинаете тратить. Отличный способ “попробовать” как гайд, так и хостинг на своих плечах не потратив ни копейки из своих денег.
Summary
It will take some time for the name server changes to propagate after you’ve saved them. During this time, the domain registrar communicates the changes you’ve made with your ISP (Internet Service Provider). In turn, your ISP caches the new nameservers to ensure quick site connections. This process usually takes about 30 minutes but could take up to a few hours depending on your registrar and your ISP’s communication methods.
Установка через composer ¶
Заходим на сервак под root и выполняем команды (устанавливаем Drush 7):
To set up a domain name, you need to purchase a domain name from a domain name registrar and then set up DNS records for it. Registrars are organizations that have completed an accreditation process that allows them to sell domain names. Registrars typically offer services to manage DNS records as well, but once you have purchases a domain, most registrars will allow you to manage your DNS records with other providers.
DigitalOcean is not a domain name registrar, but you can manage your DNS records from the DigitalOcean Control Panel. This can make record management easier because DigitalOcean DNS integrates with Droplets and Load Balancers.
Делаем свой мини-хостинг ¶
В случае успешной установки дроплета, на ваш email адрес должно было прийти письмо с данным для входа на сервер. Сервером мы будем управлять из консоли, следовательно, если у вас Linux\Mac OS, просто открываем терминал, если же у вас Windows, ищем в инете спец. софт, так как стандартная командная строка не умеет в ssh, вам необходим ssh-клиент. Единственный который я знаю и пробовал когда-то был Putty.
Теперь нам необходимо подключиться к своему серверу. Для этого в терминале нам необходимо написать ssh пользователь@ip_вашего_сервера. В моём случае будет так:
Консоль затребует у вас пароль, вы должны ввести тот что прислали вам на почту.
Если вы успешно зашли, вы должны увидеть примерно следующее:
Теперь вам необходимо ввести еще раз текущий пароль, а затем дважды новый. После чего, мы сможем смело пользоваться сервером.
Давайте поставим CP (Control Panel) для нашего сервера. В нашем случае, я буду использовать VestaCP. Она простая, легка (почти не грузит систему), очень хороший API, множество возможностей из коробки и она сама разворачивает вебсервер с nginx при установке.
Поэтому переходим к установке VestaCP, для этого в терминале пишем:
У нас начнётся установка панели и веб-сервера. Первым делом он попросит вас согласится, для этого пишем y жмём enter, затем вводим свой email адрес. Затем он попросит ввести hostname, тут просто жмём enter. Потом начнётся установка. Там написано что займёт примерно 15 минут, но это не так, заёмет это минуту-две, даже на таком слабеньком сервере.
После успешной установки вы увидите следующее:
По сути, на этом установки и настройка сервера уже завершена (лол). Он полностью готов к продакшену. Если вы более подкаыванный пользователей и вам интересно потыкаться самому - можете приступать. Те кто не уверен или нуждается в напутствии, пошли дальше.
Settings ¶
На влкадке настроек, вы можете увидеть все технические данные по дроплету. Поменять ему ядро прямо из браузера (хотя насколько стабилен такой процесс не знаю, его не было раньше и я не пробовал), восстановить дроплет из бэкапа (если они включены или сделан snapshot), а также просто переименовать сервак.
Access¶
На данной вкладке вы можете получить доступ к консоли сервера прямо из браузера. Занятие крайне извращенное и неудобное, пригодится лишь в критических ситуациях когда доступа к нормальной консоли получить не удается. Также тут можно поменять root пароль.
Читайте также: