Recherche…
Inscription au service AWS
Étant donné que beaucoup de débutants sont confus au sujet de l’hébergement en nuage, j’écris ce guide pour parcourir la mise en place de météores sur aws avec ubuntu os. Si votre instance est déjà en cours d'exécution, n'hésitez pas à passer cette étape et à passer directement à l'installation de météore sur aws.
Connectez-vous à AWS Console.Sélectionnez EC2. Allez dans le tableau de bord EC2. Sous Create Instance, cliquez sur instance de lancement.
Sélectionnez l'instance Ubuntu à l'étape suivante
Créez une paire de clés et téléchargez une clé privée sur votre ordinateur local.
Connectez-vous via un shell à aws (en utilisant une clé privée, assurez-vous que la clé privée se trouve dans votre chemin ou exécutez la commande depuis le répertoire qui contient la clé privée)
ssh -i "myprivatekey.pem" [email protected]
ec2-xx-xx-xx-xx.ap-south-1.compute.amazonaws.com est le nom de l'instance DNS publique sur la console amazon. Ubuntu est un nom d'utilisateur. Vous pouvez également utiliser l'adresse IP publique.
ÉTAPES POUR INSTALLER METEOR SUR AWS INSTANCE (en utilisant mupx)
- copier la clé privée de la machine locale dans le dossier ssh du serveur aws
exemple /home/ubuntu/.ssh/myprivatekey.pem
- mettre à jour le packager avec la dernière version
sudo apt-get update
- installer les propriétés du logiciel python
sudo apt-get install python-software-properties
- installer npm et node (facultativement aussi installer nvm)
sudo apt-get install npm
Installez nvm
curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash
Noeud d'installation
nvm install 4.4.7
nvm use 4.4.7
- Installer aws cli
sudo apt-get install awscli
- Installez meteor up
sudo npm install -g mupx
sudo npm install -g mupx-letsencrypt
(meteor 1.4 est actuellement disponible uniquement par mpux-letsencrypt)
- Initialisez mupx en allant dans votre répertoire de projet ou créez un nouveau répertoire s'il n'existe pas
mupx-letsencrypt init
Si vous obtenez une erreur comme ci-dessous, alors le noeud hérité est là, vous devez créer un lien
/usr/bin/env: node: No such file or directory
sudo ln -s /usr/bin/nodejs /usr/bin/node
- Installer le météore
curl https://install.meteor.com | /bin/sh
edit mup.json (Assurez-vous de remplir le nom d'utilisateur: ubuntu et l'emplacement correct de la clé privée à partir de l'étape 1)
utiliser l'éditeur de fichier nano (pour éditer des fichiers sur ubuntu, peut également utiliser vi)
nano mup.json
Exemple mup.json
{
// Server authentication info
"servers": [
{
"host": "ec2-xx-xx-xx-xx.ap-south-1.compute.amazonaws.com",
"username": "ubuntu",
//"password": "password",
// or pem file (ssh based authentication)
"pem": "~/.ssh/myprivatekey.pem",
// Also, for non-standard ssh port use this
//"sshOptions": { "port" : 49154 },
// server specific environment variables
"env": {}
}
],
// Install MongoDB on the server. Does not destroy the local MongoDB on future setups
"setupMongo": true,
// WARNING: Node.js is required! Only skip if you already have Node.js installed on server.
"setupNode": false,
// WARNING: nodeVersion defaults to 0.10.36 if omitted. Do not use v, just the version number.
//"nodeVersion": "4.4.7",
// Install PhantomJS on the server
"setupPhantom": true,
// Show a progress bar during the upload of the bundle to the server.
// Might cause an error in some rare cases if set to true, for instance in Shippable CI
"enableUploadProgressBar": true,
// Application name (no spaces).
"appName": "my-app",
// Location of app (local directory). This can reference '~' as the users home directory.
// i.e., "app": "/Users/ubuntu/my-app",
// This is the same as the line below.
"app": "/Users/ubuntu/my-app",
// Configure environment
// ROOT_URL must be set to https://YOURDOMAIN.com when using the spiderable package & force SSL
// your NGINX proxy or Cloudflare. When using just Meteor on SSL without spiderable this is not necessary
"env": {
"PORT": 80,
"ROOT_URL": "http://myapp.com",
// only needed if mongodb is on separate server
"MONGO_URL": "mongodb://url:port/MyApp",
"MAIL_URL": "smtp://postmaster%40myapp.mailgun.org:[email protected]:587/"
},
// Meteor Up checks if the app comes online just after the deployment.
// Before mup checks that, it will wait for the number of seconds configured below.
"deployCheckWaitTime": 60
}
Installez Meteor, y compris mongo, en exécutant la commande suivante dans le répertoire du projet.
mupx-letsencrypt setup
déployer un projet en utilisant mupx
mupx-letsencrypt deploy
Quelques commandes utiles
Pour vérifier les journaux mupx
mupx logs -f
Pour vérifier Docker
docker -D info
Pour vérifier l'état du réseau
netstat -a
Pour vérifier le processus en cours d'exécution, y compris le processeur et l'utilisation de la mémoire
top
Installez le client mongo pour obtenir un accès mongo shell sur aws
sudo apt-get install mongodb-clients
Lancer des requêtes mongodb
mongo projectName
Une fois à l'intérieur de la coquille mongo
db.version()
db.users.find()
Merci arunoda pour avoir fourni un excellent outil https://github.com/arunoda/meteor-up
Merci à l'équipe mupx-letsencrypt pour le bon travail. https://www.npmjs.com/package/mupx-letsencrypt