Acceder a la linea de comandos de una instancia Docker

Primero debemos listar las instancias parar identificar el id de la instancia a la que queremos acceder usando el siguiente comando:

docker ps -a

Una vez que tenemos el id pasaremos a ejecutar el siguiente comando:

docker exec -it {id_instancia} bash

Desde aquí la consola cambiará para permitirnos acceder a la linea de comandos de la máquina/contendor

Convertir AVI a MP4 ó WebM Usando Funciones Lambda y FFMPEG

El contenido de esté artículo deriva del repositorio https://github.com/kefabean/lambda-transcoder

Instrucciones para generación del build de FFMPEG

https://trac.ffmpeg.org/wiki/CompilationGuide/Centos

Descarga de Builds estáticos FFMPEG

https://johnvansickle.com/ffmpeg/

Una vez que generamos o descargamos el build estático de FFMPEG, descargamos las dependencias de la función

npm install async
npm install fluent-ffmpeg
npm install s3-upload-stream

Deberemos terminar con un zip que contenga:

El entorno de ejecución máximo para esta función es Node.js 16.x

Resolución Problema codificación Scritpcase

El problema se da al iniciar una aplicación, sin una sesión previamente iniciada, donde muestra un error de codificación en blanco no es valida

Dando seguimiento al error, se determinó que se generaba debido a la variable de sesión $_SESSION[‘scriptcase’][‘charset’], donde si bien esta se mostraba en la pantalla al momento de imprimir las sesiones, al momento de ejecutar el envío del formulario o validación devolvía el mensaje de error

En base a esto se determinó que el error se debía a que el id de sesión no se estaba comunicando de forma apropiada a otras partes del programa, por lo que se procedió a desactivar las opciones de seguridad que ataban la sesión a una cookie y forzaban a que la cookie solo funcione desde una conexión segura HTTPs

Con lo que se verificó el correcto funcionamiento.

Una vez determinado el origen del problema, se procedió a habilitar el certificado de seguridad para el dominio donde se desplegó el proyecto y se activaron las opciones de seguridad nuevamente.

Una vez realizado estos cambios se verificó que el problema quedó solucionado.

Instalación de certificado para wildcard con certbot

Esta instalación solo permite la generación del certificado y el único medio de validación es mediante un registro TXT en DNS

sudo certbot certonly --manual -d "*.dominio.com" -d "dominio.com"

Se debe crear el registro TXT DNS con los valores proporcionados por el comando antes de continuar el proceso

La creación del registro puede ser validado mediante el siguiente link:

https://www.whatsmydns.net/

Por ultimo se debe actualizar el certificado en el archivo ssl.conf

Habilitar PHP 8.1 de forma adicional en servidor Amazon Linux

Instalamos EPEL

sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Instalamos REMI

sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

Instalamos yum utils

sudo yum -y install yum-utils

Deshabilitamos la versión por defecto de php en remi

sudo yum-config-manager –disable ‘remi-php*’

Activamos la versión 8.1

sudo yum-config-manager –enable remi-php81

Instalamos PHP 8.1 y sus dependencias

sudo yum install php81

sudo yum install php81-php-fpm

Habilitamos el servicio de PHP FPM

sudo systemctl enable php81-php-fpm

Actualizamos www.conf para que genere un archivo socket desde el cual se conectará Apache

vi /etc/opt/remi/php81/php-fpm.d/www.conf

Agregando linea listen

listen = /etc/opt/remi/php81/php-fpm.d/www.sock

Iniciamos el servicio de PHP FPM

sudo systemctl start php81-php-fpm

Actualizamos los permisos del archivo www.sock

getfacl /etc/opt/remi/php81/php-fpm.d/www.sock

sudo setfacl -m u:apache:rw /etc/opt/remi/php81/php-fpm.d/www.sock

Creamos carpeta /var/www/php81

mkdir /var/www/php81

Creamos virtualhost en apache, para que acceda a una carpeta y ejecute esta versión de PHP

Listen 8080

<VirtualHost *:8080>

DocumentRoot /var/www/php81

<Directory /var/www/php81>

Options -Indexes +FollowSymLinks +MultiViews

AllowOverride All

Require all granted

</Directory>

<FilesMatch \.php$>

SetHandler “proxy:unix:/etc/opt/remi/php81/php-fpm.d/www.sock|fcgi://localhost”

</FilesMatch>

</VirtualHost>

Por ultimo reiniciamos el servidor apache

sudo service httpd restart

Instalación Certificado Hostmonster en EC2 – Apache2

Para poder ejecutar este tutorial, debemos tener un dominio en hostmonster, haber adquirido un certificado SSL en hostmonster y haber configurado un redireccionamiento del dominio hacia la ip del servidor externo al que queramos llegar, en este caso en AWS.

Pasos:

Iniciamos sesión en cPanel de Hostmonster y nos dirigimos a la sección Security > SSL/TLS

En esta sección iremos a Certificates (CRT) > Generate, view, upload…


Aquí, bajo el certificado del dominio que queramos aplicar en el servidor externo, daremos click en “install”

De aquí obtendremos, el certificado CRT y la llave

Almacenaremos los certificados en el servidor de destino:

/etc/pki/tls/certs/certificate.crt
/etc/pki/tls/private/certificate.key

Adicional a esto, es necesario instalar el módulo SSL de apache, mediante el siguiente comando:

sudo yum -y install mod_ssl

Una vez instalado, se debe modificar la configuración ssl del apache, misma que se encuentra en:

/etc/httpd/conf.d/ssl.conf

Apuntando las rutas necesarias al certificado y llave obtenidos de hostmonster:

Adicional a esto se debe verificar que la propiedad server name corresponda al dominio que tiene asociado el certificado:

Para finalizar, es necesario reiniciar servicio apache con el siguiente comando:

sudo service httpd restart