Comment installer l'IDE Cloud9 d'AWS sur votre serveur Linux existant
Cloud9 est un IDE basé sur le Web qui vous permet d'écrire et d'exécuter du code de n'importe où, en utilisant uniquement votre navigateur. Vous pouvez l'installer sur vos instances EC2 pour modifier le code et les fichiers de configuration directement, plutôt que d'utiliser un éditeur de texte CLI.
Sommaire
Qu'est-ce que Cloud9?
Vous êtes probablement au moins un peu familier avec son éditeur de texte de base si vous avez déjà fait un travail avec les fonctions Lambda – il alimente l'éditeur intégré dans la console Lambda. Bien qu'il perdra probablement dans la bataille contre des concurrents comme VS Code, Atom et Sublime pour la plupart des gens, il s'agit toujours d'un IDE complet.
Par défaut, Cloud9 lancera un nouvel environnement de développement sur une nouvelle instance EC2. Cette instance sera arrêtée et démarrée à chaque démarrage ou fermeture de Cloud9. Parce que vous n'avez pas à vous soucier de l'installation de dépendances comme node
et git
localement, votre environnement Cloud9 fonctionnera de la même manière, que vous vous connectiez à partir de votre bureau ou d'un Chromebook sur le canapé.
Bien que ce soit génial, il est peut-être plus utile d'installer Cloud9 sur une instance EC2 existante. Cela se connectera via SSH vous permettant de modifier la configuration et le code sur l'instance elle-même, remplaçant efficacement un éditeur de texte CLI comme vim
. Vous aurez un accès complet à l'image sous-jacente à l'aide de la console intégrée et pourrez accéder à n'importe quel fichier du répertoire dans lequel vous définissez votre environnement.
Cloud9 n'est pas limité aux instances EC2, car il se connecte via SSH; tant que votre serveur est accessible d'une manière ou d'une autre via SSH, vous pouvez vous connecter à des serveurs non AWS de la même manière.
Installation de Cloud9
Cloud9 nécessite quelques dépendances, que nous devrons installer avant la configuration. Le premier est Python 2.7, en particulier cette version. Vous pouvez installer Python depuis apt ou le gestionnaire de paquets de votre distribution:
sudo apt install python2.7 python-pip
Vient ensuite NodeJS. Vous pouvez installer une version manuellement, mais il vaut mieux utiliser Node Version Manager (nvm
) pour gérer les mises à jour. Installez-le avec la commande suivante:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
Trouvez votre bashrc
pour l'ajouter à votre PATH,
. ~/.bashrc
Et installez la dernière version de Node via nvm
:
nvm install node
Maintenant, vous pouvez télécharger et installer Cloud9 sur votre serveur:
curl -L https://raw.githubusercontent.com/c9/install/master/install.sh | bash
Cela prendra quelques minutes pour que tout soit situé.
En attendant, vous devez vous diriger vers la console de gestion IAM pour créer un nouvel utilisateur IAM pour accéder à Cloud9, car AWS recommande de ne pas utiliser votre compte root pour créer et accéder aux environnements. Si vous avez déjà un utilisateur Administrateur IAM que vous êtes prêt à utiliser, connectez-vous simplement à ce compte et ignorez cette étape.
Créez un nouvel utilisateur:
Donnez-lui un accès à la console de gestion, définissez un mot de passe et joignez le AWSCloud9Administrator
politique d'autorisation à elle.
Une fois l'utilisateur créé, cliquez sur l'onglet «Informations d'identification de sécurité» et attribuez un périphérique MFA. Cela peut être une application d'authentification sur votre téléphone ou un porte-clés matériel, mais vous voudrez certainement le configurer, sinon vos serveurs seront accessibles avec juste un mot de passe.
Désormais, lorsque vous lancez Cloud9, vous serez invité à vous connecter à votre compte IAM et à saisir vos informations MFA, ce qui le rend assez sécurisé.
Connexion à votre serveur
Connectez-vous au compte IAM que vous souhaitez utiliser pour Cloud9, puis accédez à la console de gestion Cloud9. Créez un nouvel environnement et spécifiez que vous souhaitez vous connecter à un serveur distant via SSH.
Il y a quelques options ici. Le premier est le compte d'utilisateur que vous utiliserez pour vous connecter. AWS recommande d'utiliser un compte avec un accès administrateur, donc si vous prévoyez de faire la plupart de votre travail dans votre répertoire personnel, allez avec votre utilisateur par défaut (ec2-user
ou ubuntu
). Si vous souhaitez pouvoir modifier les fichiers de configuration n'importe où sur votre serveur, tels que /etc/nginx/
, vous devrez vous connecter en tant que root.
La connexion en tant que root n'est pas une pratique de sécurité recommandée, même pour SSH, mais Cloud9 ne laisse pas de connexion Web ouverte sur l'appareil lui-même. Toutes les communications entre Cloud9 et votre serveur se font via SSH, et vous ne pouvez même pas accéder à la console Cloud9 sans vous authentifier en tant qu'utilisateur IAM. Quoi qu'il en soit, vous devez vous assurer que MFA est configuré pour votre utilisateur IAM, car vous vous connectez toujours en tant qu'utilisateur avec des privilèges d'administrateur, root ou non.
Ensuite, vous souhaiterez entrer l'adresse et le port de l'hôte. Cela devra être accessible à partir d'Internet ouvert, mais vous pouvez utiliser un VPN pour transférer la connexion.
Enfin, votre chemin d'environnement. Il s'agit par défaut d'un dossier nouvellement créé juste pour Cloud9, ce qui est bien si vous l'utilisez comme IDE autonome. Mais si vous souhaitez modifier vos fichiers, vous devrez le définir sur autre chose. Vous devriez probablement le régler sur ~/
si vous utilisez un utilisateur normal, ou pour /
si vous utilisez root. Tout ce qui se trouve en dehors de votre chemin d'accès à l'environnement ne sera pas accessible (au moins par l'éditeur principal), bien que vous puissiez toujours le modifier dans les paramètres ou créer plusieurs environnements avec des profils différents.
Avant de créer l'environnement, vous devez copier la clé SSH publique et l'ajouter à la ~/.ssh/authorized_keys
fichier de l'utilisateur auquel vous vous connectez. Cela authentifiera AWS et autorisera la connexion.
Cliquez sur "Créer un environnement", et après quelques secondes, vous serez amené dans votre environnement où vous serez libre de modifier les fichiers à votre guise.
Si vous avez défini votre environnement sur /
, vous voudrez certainement utiliser la fonction "Favoris" pour les dossiers fréquemment consultés, en parcourant le /etc/
dossier pour trouver nginx
dans la longue liste déroulante est pour le moins fastidieux.
Installer Cloud9 en tant qu '«application»
Cloud9 est toujours 100% une application Web; cependant, vous pouvez le faire fonctionner comme une application standard en créant un raccourci depuis Chrome. Dans le menu des paramètres de Chrome, sélectionnez Plus d'outils> Créer un raccourci.
Si vous cochez «Ouvrir en tant que fenêtre», Cloud9 s'ouvrira dans une fenêtre dédiée sans la barre de menu Chrome, tout comme une application classique. Vous pouvez ajouter ce raccourci à votre dock ou à votre dossier d'applications à côté de toutes vos autres applications.