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. introduzca la descripción de la imagen aquí

Seleccione la instancia de ubuntu en el siguiente paso introduzca la descripción de la imagen aquí

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)

  1. Copie la clave privada de la máquina local a la carpeta ssh del servidor aws

ejemplo /home/ubuntu/.ssh/myprivatekey.pem

  1. actualizar el empaquetador a la última versión
sudo apt-get update
  1. instalar las propiedades del software python
 sudo apt-get install python-software-properties
  1. 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
  1. Instalar aws cli
sudo apt-get install awscli
  1. 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)

  1. 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
  1. Instalar meteoro
curl https://install.meteor.com | /bin/sh
  1. 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
}
  1. Setup Meteor incluyendo mongo ejecutando el siguiente comando en el directorio del proyecto.

    mupx-letsencrypt setup
    
  2. 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



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow