Al momento de buscar una opción para alojar  nuestra aplicaciones, una buena opción de alto rendimiento es NGNIX, por lo tal aprenderemos a publicar nuestra aplicación creada en Angular 2 sobre un contenedor en Docker para que podamos colocar nuestra aplicación en cualquier servidor, en nuestro caso será Linux.

PRE-REQUISITOS

Si tiene problemas de proxy puede setear las siguientes variables:

export http_proxy=http://username:password@IP:PORT

export http_proxy=http://username:password@IP:PORT

sudo git config –global url.https://github.com/.insteadOf git://github.com/

Nota

 

  1. Primero debemos tener instalado Docker, los pasos se encuentran definidos en su pagina: https://docs.docker.com/engine/installation/linux/ubuntu/
  2. Realizamos la instalación  de Nodejs   sudo -E apt-get install nodejs o curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -   
  3. Y continuamos con la instalación de  package manager for the JavaScript (npm) sudo -E  apt-get install npm
  4. Crearemos  un link simbolico para node,  sudo   ln -s /usr/bin/nodejs /usr/bin/node
  5. Instalamos angular cli en nuestro server sudo -E  npm install -g -f @angular/cli

Ya tenemos las instalaciones necesarias para crear nuestro proyecto

Luego crearemos una sencilla aplicación en angular 2,  que utilizando  el angular-cli crearemos un proyecto con toda su estructura básica. 

Sudo –E ng new my-app-angular

Verificamos nuestro proyecto dirigiendonos a la ubicacion del mismo

cd my-app-angular

Luego levantantamos el proyecto ejecutando el siguiente comomando

ng serve

o

ng serve --host 0.0.0.0 --port 4201

Despues de verificar que efectivamente nuestra pagina web esta funcionanado correctamente, pasaremos al siguiente paso el cual consistira en agregar a la raíz del proyecto un archivo llamado Dockerfile con la siguiente información:

Luego, procedemos a generar nuestra carpeta compilada con el proyecto llamada dist  con el siguiente comando:

ng  build --environment=prod

En este momento ya podemos  crear la imagen de nuestro proyecto, utilizando los comandos de dockers.

sudo docker build -t ngnix-angular:latest .

podemos verificar que se ha creado correctamente   con el siguiente comando   docker images

Y finalmente ejecutamos  la imagen

sudo docker run --name ngnix-angular -d -P -p 8081:80 -it ngnix-angular:latest

 

Share: