Skip to content

Instantly share code, notes, and snippets.

View javierav's full-sized avatar
😎

Javier Aranda javierav

😎
View GitHub Profile
#!/usr/bin/env bash
docker run \
-d \
--name "mysql" \
--restart unless-stopped \
-p 3306:3306 \
--mount 'type=volume,source=mysql_storage,target=/var/lib/mysql,volume-driver=local' \
-e MYSQL_ALLOW_EMPTY_PASSWORD=yes \
mysql:5.7
#!/usr/bin/env bash
docker run \
-d \
--name "postgresql" \
--restart unless-stopped \
-p 5432:5432 \
--mount 'type=volume,source=postgresql_storage,target=/var/lib/postgresql/data,volume-driver=local' \
-e POSTGRES_USER=postgres \
-e POSTGRES_DB=postgres \
@javierav
javierav / run-elasticsearch.sh
Last active October 1, 2021 11:22
Run elastic search single node in docker
#!/usr/bin/env bash
docker run \
-d \
--name "elasticsearch" \
--restart unless-stopped \
-p 9200:9200 \
-e "discovery.type=single-node" \
-e "cluster.name=elasticsearch-rails" \
-e "cluster.routing.allocation.disk.threshold_enabled=false" \
@javierav
javierav / split_datetime.rb
Last active September 8, 2021 13:06
Ruby module for split a datime field into date and time fields
module SplitDatetime
extend ActiveSupport::Concern
module ClassMethods
def split_datetime(*attributes)
attributes.each do |attribute|
class_eval <<~METHOD, __FILE__, __LINE__ + 1
def #{attribute}_date=(date) # def start_at_date=(date)
@#{attribute}_date = date # @start_at_date = date
_set_#{attribute} # _set_start_at
@javierav
javierav / aws_for_apps.md
Last active August 14, 2021 15:18
Despliegue de aplicaciones en AWS

AWS for Apps

Se trata de un servidor VPS fácil de usar. Se paga mensualmente. Es como un EC2 pero mas light, más sencillo de configurar pero con menos opciones de personalización. Tu te encargas de la seguridad, configuración, actualizaciones y de instalar todo

class ApplicationService
include Callable
include Publishable
end
@javierav
javierav / removedir.php
Created April 7, 2012 16:26
Script PHP para borrar de forma recursiva un directorio
<?php
/*
* this function removes a directory and its contents.
* use with careful, no undo!
*/
function rmdir_recursive($dir) {
$files = scandir($dir);
array_shift($files); // remove '.' from array
array_shift($files); // remove '..' from array
#include <SoftwareSerial.h>
SoftwareSerial other_serial(2, 3); // RX, TX
uint8_t entries[17];
void printHex(uint8_t num) {
char hexChar[2];
sprintf(hexChar, "%02X ", num);
@javierav
javierav / dates.md
Last active December 7, 2020 18:21
Trabajando con fechas en Rails

Trabajando con fechas en Rails

  • Lo habitual es trabajar con Time, ya que esta clase representa una fecha y una hora.

  • En Rails por defecto las fechas se guardan en UTC en la base de datos con Active Record.

  • En Rails por defecto la zona horaria de la aplicación es UTC. Se puede cambiar estableciendo en la configuración la opción config.time_zone = 'Madrid'.

  • Podemos obtener un listado de las zonas horarias que acepta el método anterior escribiendo en la consola rails time:zones:all. Para formularios Rails tiene helpers específicos para devolver este listado en modo de select.

@javierav
javierav / openswift-ftp.md
Created August 17, 2020 07:30
Acceso FTP a un contenedor OpenSwift

OVH tiene una pasarela que permite acceder al contenido de un contenedor de Public Cloud Storage / Archive mediante diversos protocolos, entre ellos FTP. Es muy útil si queremos almacenar copias de seguridad.

Acceso

Los datos de acceso habituales son:

  • Hostname: gateways.storage.gra1.cloud.ovh.net
  • Username: pca
  • Password: OS_TENANT_NAME.OS_USERNAME.PASS