La web desde el punto de vista de un linuxero experto.

Hola  a todos,

al final me he decidido y voy a crear una serie de artículos y vídeo donde explico como sacar el mayor provecho de nuestra computadora y servidores.

En cada articulo me centraré en obtener algo que nos pueda ser útil con los demás servicios que vamos a ver poco a poco en lo largo del tiempo.

Pero este curso no va a ser tipo de copiar y pegar, si no más bien es un recorrido donde explicaré como fijar una meta, encontrar las mejores soluciones y resolver todos los problemas, aprovechando de nuestra inteligencia artificial extendida que es nuestro motor de búsqueda preferido en Internet.

SERVIDOR

No puede haber un servicio en Internet sin un servidor. Pero al día de hoy no hace falta gastarse mucho dinero, y en algunos casos puede salirte incluso muy barato si no gratis.

Vamos a ver las opciones más comunes

Servidor Virtual Privativo. (VPS según las siglas en inglés)

Con solo 5$ al mes puedes tener un optimo servidor virtual donde puedes instalar la distribución Linux que prefieres, y tener acceso como root. Es como tener un servidor en otro cuarto y acedes a el vía ssh.

Yo utilizo digitalocean.com y linode.com, pero hay muchos otros que según donde vives pueden ser más convenientes.

Estos servicios te ofrecen una IP fija, unos 20 GB de espacio en disco ssd un procesador y desde 512 MB a 1GB de ram.

Con estas características podemos montar una serie de servicios muy interesantes que vamos a ver en detalle más adelante.

Servidor casero detrás de una ADSL/fibra

Hace años se usaba el viejo ordenador que tenías tirado en el sótano, y con la ayuda de Linux podía tener en tu casa un verdadero servidor web para tu blog.

Sin embargo ahora la electricidad es bastante cara y usar un x86 o un x64 es una locura, por lo tanto mejor usar un raspberry o cualquier otra placa parecida o un subnotebook con procesador ARM recién como por ejemplo el pinebook64 o sus clónicos chinos de 100$.

Antes de usar esta solución tienes que considerar las desventajas, que pueden resumirse en:

1) La ADSL y algunas Fibras ópticas son asimétrica, o sea que puedes bajar por ejemplo a 20MB, pero la subida es de 1MB. Esto significa que tu servidor puede tener a disposición solo 1MB y lo está compartiendo con tu tráfico de red.

Por lo tanto olvidate de P2P. Puede bajar desde cualquier servicio web, pero no puedes usar ni el Torrent, ni otro programa para bajar películas/series. (por cierto… bajar películas es ilegal, sin contar que el 99% de estas son moralmente dañinas, así que…)

Otro tema relacionado. Los proveedores de Internet son muy listos y usan el bit/s como medida de velocidad. El problema es que nosotros usamos el bytes (que equivale a 8 bit)

https://en.wikipedia.org/wiki/Megabit

Así que si tienes por ejemplo 1Mbit/s de transferencia en subida, tienes que dividirla por 8.

1 Mbit/s = 0,125 Mbytes/s

Por lo tanto, hay 0.125 Megabytes en un Megabit.

Si tienes solo 0,125 MB/s de subida, no te aconsejo ponerle un blog, a menos que no sea algo que preveas que tenga muy poco tráfico como por ejemplo una web para tu CV y no interactiva.

Pero si tienes una ADSL con mucho ancho de banda en subida o una Fibra que no esté capada, entonces todo cambia y puede montarle lo que quieras.

Tendrás el problema que no tienes una IP fija, por lo tanto tienes que buscarte la vida con estas soluciones:

a) sin dominio, solo IP. El servicio que tiene planeado montarle no necesita de un dominio, y vas a configurar el servidor de forma que te avise por correo/sms/lo.que.sea cada vez que cambia de IP.

Por ejemplo si quieres montate una nube tuya, no hace falta tanto líos.

b) dominio con Dynamic DNS o servicios parecidos. En este caso hay varias opciones, una de ella es directamente desde el router adsl, o con un cliente instalado en el servidor, o simplemente con un script en bash que haga lo mismo contra cualquier servicio dns que soporte la IP dinámica.

Una vez decididos con que tipo de servidor vamos a trabajar, tendremos que elegir que vamos hacer.

Como que cada uno tiene una idea distinta, os voy a dar unas pinceladas de lo que se puede hacer en varios vídeos.

Vamos a ver como crear una cuenta de paypal de modo que se pueda pagar por Internet los servicios.

Luego nos damos de alta en digitalocean.com y le ponemos 5$ para poder tener un servidor virtual con IP pública fija. Y le instalamos Debian.

Seguiremos con la creación de un dominio web en joker.com y lo enlazamos con nuestro servidor en digitalocean

En final vamos a instalar apache2 + php + mysql + exim para poder usar como blog y correo electrónico, nuestro servidor.

Pero que pasa si queremos tener muchos blog, servicios correo electrónico, varias base de datos, etc en una situación cambiante?

Una vez aprendido a usar Debian y configurar los servicios a mano, podemos pasar a algo más sofisticado que automatiza muchos de estos labores. Usar estas herramientas es muy útil para un profesional, porqué le quita mucho trabajo sea de configuración inicial que de mantenimiento o cambios, pero la persona tiene que saber como funciona el sistema, para poder intervenir en caso de fallo o errores en el programa de gestión.

Por eso, antes os voy a enseñar a usar Debian a pelo, y luego pasamos a Ubuntu + VestaCP

Cuando vamos a tener un servidor nuevo con VestaCP, dominios y subdominios, todos con ssl entonces vamos a instalar un simple wordpress.

Vamos a seguir con la creación de cgi-bin escritos en bash para obtener por ejemplo datos de otra páginas web o feed rss y transformarlas en una caja de wordpress.

Con esto vais a aprender un poco a programar en bash. Un lenguaje que os puede ser muy útil para tareas de tamaños pequeños o mediano, o simplemente para crear prototipos rápidos de servicios, para luego convertirlos en C/java/kotlin/python… o lo que os resulte más conveniente.

Vamos también a aprender a usar las herramientas de Linux para la gestión remota de un servidor… ssh, scp, mc, iptraf….

Al final vamos a aprender a crear aplicaciones híbridas para Android, firmarlas y publicarlas en el playstore de Google.

Con esto vamos a aprender a usar Apache-Cordova, JavaScript, html5, css, además de las api de Google.

Más adelante vamos a tocar también Kotlin para la creación de las mismas apps, pero en código nativo (java).

Con este recorrido, obviamente me dejo en el tintero muchas cosas, pero creo que de momento es un buen plan, que a lo mejor ampliaré más adelante.

Maxlinux2000

Radio WEB Interparroquial

radio-celebración-mundialHace unos días han empezado las transmisiones en directo de la misa y otros eventos, utilizando un móvil android como transmisor y nuestro servidor linux para difundir el audio a todas nuestras aplicaciones parroquiales, y a sus respectivas páginas web.

Los usuarios dicen que se oye muy bien.

 

 

mi Iglesia

Esta aplicación creada inicialmente para la parroquia de Villar del Arzobispo en Valencia,
pone realmente en la palma de la mano, todo el mundo cristiano de forma fácil y intuitiva.

El Parroco puede traer enormes benificios a la evangelización, porqué con este instrumento
se maximizan todos sus esfuerzos.

Esta app, es solo una parte del conjunto, porqué se trata de una serie de instrumentos que
debidamente combinados le permite de convertirse en un verdadero manager de comunicación digital.

Al Parroco se le da una pagina web donde podrá informar los feligrenses de las labores, y
en pocos minutos de forma automática las mismas noticias introducidas en la pagina web,
aparecerán también en la App de miIglesia.

Pero la app, no acaba aquí, porqué através de ella, se puede entrar en un chat particular muy seguro.
Se trata de algo parecida a whatsapp, etc, pero privado que solo los que se inscriban,
podrán leer el contenido.
Con este medio el Parroco podrá avisar y organizar sus feligrenses de forma fácil y divertida.

No falta tampoco un sistema de aviso inmendiatos que el parroco puede usar para avisar en timpo real todos los feligrenses que tenga esta app instalada, en cualcuier parte del munto estén.

Mas esta app, sería insuficiente si no diese noticias del mundo cristiano. Por esto he puesto también un amplio albanicos de canales videos católicos, noticias de los principales periodicos católicos locales, Radio Maria y Radio Televisión Vaticana…

Con esta app, el feligrense tiene la posibilidad de econtrar con rapidez todas las cosas buena que necesita para su alma, alejandose al mismo tiempo de los canales de televisión y los otros medios de comunicanción que intentan en cada momento alejarlo de Dios.

Es como una oasis de paz dende descansar tranquilo y recuperar fuerzas para afrontar el mundo para evangelizar.

En resumen, esta herramienta está compuesta de:

Una pagina web, donde el parroco podrá introducir sus liturgias o programas, incluso desde su móbil.

Una App de Avisos inmediatos bajo el control del Parroco que le permite de avisar sus feligrenses en poco s segundos de comunicaciones urgentes.

Una chat muy parecido a whatsapp pero muy seguro porqué todas las comunicaciones están encriptadas y con llamadas de audio gratuidas.

Un canal de youtube integrado en la app donde el parroco ó quien el prefiera podrá colgar videos de omelias, charlas, misas u otros eventos que el considere importante.

Una Galeria de fotos particular donde el Parroco o quien por el, puede colgar las fotos de los eventos que considere importantes.

No falta tampoco un Atrio donde hacer video-conferencia en hasta 6 personas desde su proprios móviles.

Hay también 2 canales Videos en directo donde através de 2 móbiles se podrá transmitir en directo los eventos como por ejemplo misas, procesiones, fiestas, conferencias, reuniones…
De esta forma los feligrenses que no puedan acudir por ejemplo por motivo de salud, podrán seguir las actividades de la parroquia desde sus camas.

ionic + pouchdb + couchdb

Update 2016 below to the end

Here my answer to this great tutorial:

http://gonehybrid.com/how-to-use-pouchdb-sqlite-for-local-storage-in-your-ionic-app/


hello!
I used this tutorial as a starting point, and I’ve added the ability to use a couchdb public server.
In this way you can share notes (TODOS) with several people, easily.

The couchdb server is quite easy to install on debian (I’ve used for this demo server digitalocean) but could install where you want.
Here’s an article on how to install a server couchdb, on debian7.
https://cwiki.apache.org/confluence/display/COUCHDB/Debian

If you can not use Linux, you can buy the couchdb service. On the same page of the previous link, there are a couple of ads.

Remember that you need to have a couchdb server and you must insert its IP address in the file www/js/todos.service.js

//      Remember to create the “todo2s” db in the pouchdb server.
var _remoteDB2 = new PouchDB(“http://<your-server-public-IP>:5984/todo2s”);

Here you can download my ionic environment
https://drive.google.com/file/d/0B8sk-7K8X3Y1TFMwZWFnWEExV3M/view?usp=sharing

and below some pictures

—-

hola
he utilizado este tutorial como punto de partida, y le he añadido la posibilidad de utilizar un servidor couchdb público.
En esta forma se puede compartir notas (Por Hacer) con varias personas, de forma fácil.

Cada entrada tiene un boton de Edit y Show.
En la area de texto se puede insertar html, with fotos, bold text, etc.

El servidor couchdb es bastante fácil de instalar en debian (yo para esta demo he utilizado un servidor de digitalocean) pero se pude instalar donde quieres.
Aquí un articulo de como instalar un servidor couchdb, on debian7.
https://cwiki.apache.org/confluence/display/COUCHDB/Debian

Si no sabes utilizar linux, puedes comprar el servicio couchdb. En la misma página del link anterior, hay un par de publicidades.

Aquí podes descargar mi ambiente ionic
https://drive.google.com/file/d/0B8sk-7K8X3Y1TFMwZWFnWEExV3M/view?usp=sharing

y a bajo unas fotos

Recuerda que para que funcione tienes que tener un servidor couchdb y hay que insertar su dirección IP en el fichero www/js/todos.service.js

//      Remember to create the “todo2s” db in the pouchdb server.
var _remoteDB2 = new PouchDB(“http://<your-server-public-IP>:5984/todo2s”);

 

 

UPDATE 2016

Here, the tutorial, how to install couchdb+futon on ubuntu 14.04:

https://www.digitalocean.com/community/tutorials/how-to-install-couchdb-and-futon-on-ubuntu-14-04

remember that you must use the ssh tunnel in order to access to futon control panel:

ssh -L5984:127.0.0.1:5984 user@your_server_ip

and then go to this link: http://localhost:5984/_utils/ with your browser.