Как установить AWS Cloud9 IDE на существующий сервер Linux
Cloud9 — это веб-среда IDE, которая позволяет писать и запускать код из любого места, используя только браузер. Вы можете установить его на свои экземпляры EC2, чтобы напрямую редактировать код и файлы конфигурации, а не использовать текстовый редактор CLI.
Что такое Cloud9?
Вы, вероятно, хотя бы немного знакомы с его основным текстовым редактором, если вы когда-либо работали с функциями Lambda — он поддерживает встроенный редактор в консоли Lambda. Хотя для большинства людей он, вероятно, проиграет в битве с такими конкурентами, как VS Code, Atom и Sublime, он по-прежнему является полнофункциональной IDE.
По умолчанию Cloud9 запустит новую среду разработки на новом инстансе EC2. Этот экземпляр будет останавливаться и запускаться всякий раз, когда вы запускаете или закрываете Cloud9. Поскольку вам не нужно беспокоиться об установке зависимостей, таких как node
и git
, ваша среда Cloud9 будет работать одинаково, независимо от того, подключаетесь ли вы с рабочего стола или с Chromebook на диване.
Хотя это здорово, возможно, полезнее установить Cloud9 на существующий инстанс EC2. Это позволит подключиться через SSH, что позволит вам редактировать конфигурацию и код на самом экземпляре, эффективно заменяя текстовый редактор CLI, такой как vim
. У вас будет полный доступ к базовому образу с помощью встроенной консоли, и вы сможете получить доступ к любому файлу в каталоге, в котором вы установили свою среду.
Cloud9 не ограничивается инстансами EC2, потому что он подключается через SSH; пока ваш сервер каким-то образом доступен через SSH, вы можете таким же образом подключаться к серверам, не относящимся к AWS.
Установка Cloud9
Для Cloud9 требуется несколько зависимостей, которые нам нужно будет установить перед установкой. Первый — это Python 2.7, в частности, эта версия. Вы можете установить Python из apt или менеджера пакетов вашего дистрибутива:
sudo apt install python2.7 python-pip
Далее идет NodeJS. Вы можете установить версию вручную, но лучше использовать Node Version Manager (nvm
) для обработки обновлений. Установите его с помощью следующей команды:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
Добавьте свой bashrc
, чтобы добавить его в PATH,
. ~/.bashrc
И установите последнюю версию Node через nvm
:
nvm install node
Теперь вы можете загрузить и установить Cloud9 на свой сервер:
curl -L https://raw.githubusercontent.com/c9/install/master/install.sh | bash
Это займет несколько минут, чтобы все было расположено.
А пока вам следует перейти в консоль управления IAM, чтобы создать нового пользователя IAM для доступа к Cloud9, поскольку AWS рекомендует не использовать учетную запись root для создания сред и доступа к ним. Если у вас уже есть пользователь IAM-администратор, с которым вы согласны, просто войдите в эту учетную запись и пропустите этот шаг.
Создайте нового пользователя:
Предоставьте ему доступ к консоли управления, задайте пароль и прикрепите к нему политику разрешений AWSCloud9Administrator
.
После создания пользователя щелкните вкладку «Учетные данные безопасности» и назначьте устройство MFA. Это может быть приложение-аутентификатор на вашем телефоне или аппаратный брелок, но вы обязательно захотите его настроить, иначе ваши серверы будут доступны только с паролем.
Теперь, когда вы запускаете Cloud9, вам будет предложено войти в свою учетную запись IAM и ввести данные MFA, что делает его достаточно безопасным.
Подключение к вашему серверу
Войдите в любую учетную запись IAM, которую вы хотите использовать для Cloud9, затем перейдите в консоль управления Cloud9. Создайте новую среду и укажите, что вы хотите подключиться к удаленному серверу через SSH.
Здесь есть пара вариантов. Первая — это учетная запись пользователя, которую вы будете использовать для входа. AWS рекомендует использовать учетную запись с правами администратора, поэтому, если вы планируете выполнять большую часть своей работы в домашнем каталоге, используйте пользователя по умолчанию (ec2 -user
или ubuntu
). Если вы хотите иметь возможность редактировать файлы конфигурации в любом месте на вашем сервере, например, /etc/nginx/
, вам необходимо подключиться как root.
Подключение от имени пользователя root не рекомендуется для обеспечения безопасности даже для SSH, но Cloud9 не оставляет открытого веб-соединения на самом устройстве. Вся связь между Cloud9 и вашим сервером осуществляется через SSH, и вы даже не можете получить доступ к консоли Cloud9 без аутентификации пользователя IAM. В любом случае вам нужно убедиться, что у вас настроен MFA для вашего пользователя IAM, так как вы все еще подключаетесь как пользователь с правами администратора, root или нет.
Затем вам нужно ввести адрес хоста и порт. Это должно быть доступно из открытого Интернета, но вы можете использовать VPN для переадресации соединения.
Наконец, ваш путь к среде. По умолчанию это только что созданная папка для Cloud9, что хорошо, если вы используете ее как автономную IDE. Но если вы хотите редактировать свои файлы, вам нужно установить что-то другое. Вероятно, вам следует установить для него значение ~/
, если вы используете обычного пользователя, или /
, если вы используете root. Все, что находится за пределами вашего пути к среде, будет недоступно (по крайней мере, для основного редактора), хотя вы всегда можете изменить это в настройках или создать несколько сред с разными профилями.
Перед созданием среды вам необходимо скопировать открытый ключ SSH и добавить его в файл ~/.ssh/authorized_keys
пользователя, от имени которого вы подключаетесь. Это позволит аутентифицировать AWS и разрешить подключение.
Нажмите «Создать среду», и через несколько секунд вы попадете в свою среду, где сможете редактировать файлы по своему усмотрению.
Если вы установили для своей среды значение /
, вам обязательно нужно использовать функцию «Избранное» для часто используемых папок, например, при просмотре /etc/
папку, чтобы найти nginx
в длинном раскрывающемся списке, по меньшей мере, утомительно.
Установите Cloud9 как «приложение»
Cloud9 по-прежнему на 100% веб-приложение; однако вы можете заставить его работать как обычное приложение, создав ярлык в Chrome. В меню настроек Chrome выберите «Дополнительные инструменты» > «Создать ярлык».
Если вы отметите «Открыть как окно», Cloud9 откроется в специальном окне без строки меню Chrome, как обычное приложение. Вы можете добавить этот ярлык в док-станцию или в папку приложений вместе со всеми другими приложениями.