Git Product home page Git Product logo

practica1's Introduction

Practica1

Práctica 1 - Infraestructura Virtual

Para realizar esta práctica he decidido usar 'Heroku' porque la interfaz me parece bastante atractiva y porque simpatizo con las empresas pequeñas que acaban de empezar y parecen ofrecer buenos resultados. La aplicación que vamos a subir será en lenguaje Python.

Lo primero que debemos hacer para empezar a trabajar con nuestra aplicación en 'Heroku' es logearnos con el comando heroku login.

Acto seguido, creamos un directorio donde situar nuestra aplicación que va a usar Heroku mediante un framework llamado 'Flask'.

mkdir pythonProject
cd pythonProject/

Creamos un Python virtualenv con

virtualenv venv --distribute

Lo activamos... source venv/bin/activate

Y ahora instalamos el Flask framework y el servidor gunicorn para poder trabajar con python en 'Heroku':

pip install Flask gunicorn

y ahora ya tenemos todo listo para hacer nuestra aplicación en 'Python'.

En mi caso será un simple código en python que devuelve una página en HTML con alguna información y una imágen.

import os

from flask import Flask

app = Flask(__name__)

@app.route('/')       
def funcion():
	return "<html><title>Practica 1 IV</title><link type='text/css' rel='stylesheet' href='static/style.css'><body><center><h1>PRACTICA 1</h1><br><h2>INFRAESTRUCTURA VIRTUAL</h2><br></center><br><br>Esta es la primera practica de Fernando Llodra Belda para la asignatura de Infraestructura Virtual de 4o de Grado en Ingenieria Informatica.<br>Os dejo con una imagen curiosa<img_src='static/GameOfThrones_ColouredMap.jpg'></body></html>"

Una vez terminada, tenemos que crear un fichero 'Procfile' en nuestro directorio donde tenemos la aplicación Python e insertar la linea web: gunicorn practica1IV:app.

Iniciamos el proceso en nuestro Procfile con foreman start, vemos que todo está en orden y salimos con Ctrl+C.

Creamos en el directorio de nuestra aplicación un fichero llamado requirements.txt con pip freeze > requirements.txt y añadimos

Flask==0.9
Jinja2==2.6
Werkzeug==0.8.3
gunicorn==0.17.2

Y ahora procedemos a alamcenar nuestra aplicación en git. Para ello iniciamos git y creamos un nuevo repositorio con:

git init
git add .
git commit -m "init"

Ahora añadimos nuestro repositorio a 'Heroku' heroku create. Con ésto creamos automaticamente el asistente remoto de heroku para nuestra aplicación.

Procedemos a 'pushear' nuestra aplicación (subirla) a heroku: git push heroku master

Ahora ya tenemos nuestra aplicación desplegada en Heroku. Ahora tenemos ejecutarla con Heroku. Para ello, Heroku usa un 'dyno'. Tenemos que asegurarnos de que hay algún 'dyno' para el proceso de ejecución web: heroku ps:scale web=1 Lo tenemos, asique vemos el estado actual del 'dyno' y después visitamos nuestra app en nuestro navegador:

heroku ps
heroku open

practica1's People

Contributors

fllodrab avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.