Buscar..
Registrarse para el servicio de AWS
Ya que muchos de los principiantes están confundidos acerca del hospedaje en la nube. Estoy escribiendo esta guía para ver cómo establecer meteoros en aws con ubuntu os. Si ya tiene su instancia en ejecución, no dude en omitir este paso e ir directamente a la instalación de meteor en aws.
Inicie sesión en la consola de AWS. Seleccione EC2. Ir al panel de EC2. En Crear instancia, haga clic en Iniciar instancia.
Seleccione la instancia de ubuntu en el siguiente paso
Cree un par de claves y descargue la clave privada a su máquina local.
Inicie sesión a través de shell to aws (usando una clave privada, asegúrese de que la clave privada esté en su ruta o ejecute el comando desde el directorio que contiene la clave privada)
ssh -i "myprivatekey.pem" [email protected]
ec2-xx-xx-xx-xx.ap-south-1.compute.amazonaws.com es un nombre de instancia dns público en la consola de amazon. ubuntu es nombre de usuario. También puede utilizar la dirección IP pública.
PASOS PARA INSTALAR METEOR EN AWS INSTANCE (usando mupx)
- Copie la clave privada de la máquina local a la carpeta ssh del servidor aws
ejemplo /home/ubuntu/.ssh/myprivatekey.pem
- actualizar el empaquetador a la última versión
sudo apt-get update
- instalar las propiedades del software python
sudo apt-get install python-software-properties
- instale npm y node (opcionalmente también instale nvm)
sudo apt-get install npm
Instalar nvm
curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash
Instalar nodo
nvm install 4.4.7
nvm use 4.4.7
- Instalar aws cli
sudo apt-get install awscli
- Instalar meteoro arriba
sudo npm install -g mupx
sudo npm install -g mupx-letsencrypt
(el meteorito 1.4 está disponible actualmente solo por mpux-letsencrypt)
- Inicialice mupx ingresando en el directorio de su proyecto o cree un nuevo directorio si no existe
mupx-letsencrypt init
Si recibe un error como el que se muestra a continuación, es posible que tenga que crear un enlace.
/usr/bin/env: node: No such file or directory
sudo ln -s /usr/bin/nodejs /usr/bin/node
- Instalar meteoro
curl https://install.meteor.com | /bin/sh
edite mup.json (asegúrese de completar el nombre de usuario: ubuntu y la ubicación correcta de la clave privada del paso 1)
use el editor de archivos nano (para editar archivos en ubuntu, también puede usar vi)
nano mup.json
Ejemplo 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
}
Setup Meteor incluyendo mongo ejecutando el siguiente comando en el directorio del proyecto.
mupx-letsencrypt setup
desplegar proyecto usando mupx
mupx-letsencrypt deploy
Algunos comandos útiles
Para comprobar los registros de mupx
mupx logs -f
Para comprobar Docker
docker -D info
Para comprobar el estado de la red.
netstat -a
Para verificar el proceso en ejecución actual, incluyendo la CPU y la utilización de la memoria.
top
Instalar el cliente mongo para obtener el acceso mongo shell en aws
sudo apt-get install mongodb-clients
Para ejecutar consultas mongodb
mongo projectName
Once Inside mongo shell run
db.version()
db.users.find()
Gracias a Arunoda por proporcionar una herramienta maravillosa https://github.com/arunoda/meteor-up
Gracias equipo de mupx-letsencrypt por un buen trabajo. https://www.npmjs.com/package/mupx-letsencrypt