Desarrollando Aplicaciones Web con PHP7.0 y Docker

Docker es un software de manejo de contenedores, mientras que PHP7.0 es la última versión de este lenguaje de programación que incluye mejoras que hacen que la velocidad de su funcionamiento sea 50% más veloz que su predecesor. En este tutorial crearemos un ambiente de desarrollo usando Docker con lo cual no tendremos que instalar ningún otro software ni librería para funcionar.

Origen: ctala/apache2_php7_awsebs – Docker Hub

Docker

Ya hace un tiempo que quería probar como funcionaba Docker para el desarrollo de aplicaciones para no tener que instalar todo nuevamente en mi máquina. Hace unos días ya llegó mi nueva laptop por lo que ya no tengo excusas para no trabajar y se me ocurrió la brillante idea de procastinar aprendiendo y creando imagenes de Docker en vez de iniciar directamente con lo que debía hacer. El resultado fue satisfactorio por lo que estoy muy contento, así que aprovecho de compartir no solo como desarrollar en PHP7.0 usando Docker, si no que además utilizaremos una imagen que creé para este cometido que incluye todo lo necesario para poder desarrollar sin problemas en PHP7.0, además de herramientas que hacen que el proceso sea más sencillo.

Prerequisitos :

  • Tener Docker ya instalado.
  • Los comandos que mostraré son en base a un HOST linux, lo que no quiere decir que la imagen que ocuparemos no funcione con otro HOST.

Leer más

Crear una Base de Datos MySQL remota para optimizar el rendimiento del sitio WordPress.

Cuando el sitio comienza a tener más tráfico tenemos que comenzar a pensar en como poder manejarlo. Lo más sencillo y lo que recomiendo es sacar la base de datos del servidor, en especial debido a que Mysql al no tener recursos suficientes simplemente deja de funcionar. Esto logra que cada servidor maneje su propia carga, además de ser el primer paso para tener un sitio con balanceador de carga.

En mi caso particular lancé un nuevo eCommerce con Woocommerce / WordPress en el cual no separé desde un inicio la BdD de datos debido a que pensé que el sitio tendría menos tráfico y carga asociada, me equivoqué, lo que es realmente bueno.

Sin embargo no puedo dejar que el eCommerce se caiga cada vez que tenga mucho tráfico, no sería muy agradable perder ventas por esto.

Este minitutorial está alojado en digital ocean, la verdad lo he probado hace un tiempo y funciona bastante bien. Sin embargo  se puede extrapolar para cualquier servidor linux, en mi caso Ububtu 14.04.

Entonces, lo que haremos :

  1. Crear un nuevo servidor ( Droplet ) al cual le instalaremos una base de datos Mysql.
  2. Instalar la base de datos Mysql.
  3. Configurar la BdD en modo seguro/ Producción.
  4. Crear un usuario / password para el acceso del sitio wordpress.
  5. ( Opcional ) – Configurar el firewall del servidor.

Leer más

Ubuntu 14.04 LTS + : Cambiar la zona horaria.

Para todos los que quieren cambiar la zona horaria con  CentOS, Ubuntu, Fedora, Debian para sus servidores.

Estaba acostumbrado a usar tzdata pero al parecer en las versiones más «recientes» no viene por defecto. Para poder hacer el cambio de la zona horaria  usaremos el comando timedatectl. Para esto necesitamos tener acceso a la máquina en donde queremos cambiar la configuración, puede ser físicamente o de manera virtual a través de una consola.

Si ocupamos simplemente el comando nos da la siguiente información :

root@MANAGER:~# timedatectl
      Local time: Wed 2015-11-11 09:30:44 CLT
  Universal time: Wed 2015-11-11 12:30:44 UTC
        RTC time: Wed 2015-11-11 12:30:44
        Timezone: America/Santiago (CLT, -0300)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

En donde aparece la zona universal y la local que son los datos que nos interesan. En mi caso yo ya cambié la zona horaria de este servidor.

Ahora, veamos la lista de las zonas horarias y seleccionemos la que nos interesa. En este caso usaré grep para obtener la zona horario correspondiente a Santiago. De no usar grep esto devolvería la lista de todas las zonas horarias disponibles.

root@MANAGER:~# timedatectl list-timezones  | grep Santiago
America/Santiago

Ya teniendo nuestra zona horaria simplemente le decimos al servidor que es la que queremos ocupar.

root@MANAGER:~# timedatectl set-timezone America/Santiago

La verdad es para nada complejo, puedes además hacerlo a través de php si no tienes acceso a la consola del servidor pero eso lo veremos en otra oportunidad.

Origen: Ubuntu 14.04 LTS : Set System Timezone : Server World

¡Mantengamos el contacto!

Me encantaría que te mantuvieras al día con el contenido que estoy generando. Recuerda que no es solo el blog, son las redes sociales, libros, y distintos pódcast 😎.

Hago todo lo posible para no hacer Spam,

¡MANTENGÁMONOS EN CONTACTO!

Me encantaría que te mantuvieras al día con el contenido que estoy generando. Recuerda que no es solo el blog, son las redes sociales, libros, y distintos pódcast 😎.

Hago todo lo posible para no hacer Spam,

Usando Linux y el portal de MiPyme del Sistema de Impuestos Internos.

GUÍA PARA INSTALAR EL CERTIFICADO DIGITAL LINUX UBUNTU

Uno de los problemas que había tenido para no migrar todos los computadores de Windows a Ubuntu era el no poder usar este último para poder generar las facturas electrónicas con el portal de MiPyme del Sistema de Impuestos Internos. Había estado ocupando Virtual Box para hacer esto personalmente ya que Windoes dejó hace muchos años de ser mi Sistema Operativo principal.

Hoy ingresé al portal del Sistema de Impuestos internos y «descubrí»  un mensaje que anteriormente no había hecho. «Para firmar el documento desde sus sistema operativo debe de subir la llave al servidor» o algo similar …

Leer más

MysqlPasswordReset – Cambiar la clave root de Mysql

Acabo de crear un servidor WordPress con on click deployment de Google y tuve el problema que la clave que me dieron de mysql para root no correspondía a la real.

El error que obtenía era el siguiente :

ERROR 1045: Access denied for user: 'root@localhost' (Using 
password: YES)

Estos son simples pasos para cambiar la clave root de Mysql bajo un servidor linux si es que posees el error anteriormente mencionado.

¿ Que es lo que haremos ? :

  1. Detendremos el Servidor MySql.
  2. Lo iniciaremos sin que cargue los privilegios de los usuarios.
  3. Cambiamos la clave

Si tienes algún error un poco más complejo, o tu error corresponde a que necesitas agregar permisos para acceder fuera de localhost te recomiendo que veas el artículo que aparece al final.

Detenemos el servidor MySql

sudo /etc/init.d/mysql stop

Iniciamos el Servidor MySql sin los privilegios de usuarios. En este caso además por seguridad se impide las conexiones por red.

sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking &

Ingresamos al servidor con el usuario root.

 mysql -u root

Con el siguiente comando seremos capaces de cambiar cualquier clave.

FLUSH PRIVILEGES;

Cambiamos la clave para el usuario root. Por si no lo habías notado puedes cambiar «password» por la clave que quieras… sin las comillas!

SET PASSWORD FOR root@'localhost' = PASSWORD('password');

Una vez que recibimos el mensaje de éxito, nuevamente limpiamos los privilegios.

FLUSH PRIVILEGES;

Detenemos el servidor MySql y lo iniciamos de manera normal nuevamente

sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

En este punto ya deberíamos ser capaces de ingresar a neustro servidor mysql sin problemas.

Origen: MysqlPasswordReset – Community Help Wiki

¡Mantengamos el contacto!

Me encantaría que te mantuvieras al día con el contenido que estoy generando. Recuerda que no es solo el blog, son las redes sociales, libros, y distintos pódcast 😎.

Hago todo lo posible para no hacer Spam,

¡MANTENGÁMONOS EN CONTACTO!

Me encantaría que te mantuvieras al día con el contenido que estoy generando. Recuerda que no es solo el blog, son las redes sociales, libros, y distintos pódcast 😎.

Hago todo lo posible para no hacer Spam,

Share to...