Archive for marzo, 2022

docker en un bash script

Tenes que hacer un script de bash en donde se conecte a un contenedor de mysql y realice un backup de las db que contiene?
Bueno perdí muchísimo tiempo con esto y putie en diferentes idiomas por no encontrar el puto error. Primero pensé que era un tema del script, pero el mismo funcionaba bien si lo corría a mano. Así que imagine que venia por algo similar a crontab y su tema de las variables de entorno. Y no tampoco. Entonces busque como se hacen los script de backup y encontré lo siguiente. 

docker exec $container_name mysqldump -u root -p$mysql_root_password $database >

Obviamente compare con lo que yo hacia y entendí que el problema venia por que yo llamaba al contenedor con los argumentos -t -i y eso era lo que no funcionaba. 

La solución es algo similar a lo siguiente.  

docker exec nombrecontenedormysql mysqldump -u root -pclave db > db.sql

Posta perdí muchísimo tiempo. Y me sentí muy mal por que me eche la culpa por no saber tanto como me gustaría de bash script. 

marzo 31, 2022 at 11:32 pm Deja un comentario

Eliminar desde un punto en una carpeta

Tengo que eliminar a partir de una subcarpeta. 
a/b/c

Quiero que solo elimine a partir de c para arriba. 


#!/bin/bash

shopt -s dotglob
arch=/tmp/a/b/*/
rm -rf $arch
shopt -u dotglob

marzo 30, 2022 at 12:24 pm Deja un comentario

wp con cli en docker-compose

#  Me guió de este genio
#  https://www.youtube.com/channel/UCpxIb4Sqg4MuuPnMv0O9P3w

mkdir wp && cd $_

vi docker-compose.yaml

docker-compose.yml 
version: '3.1'

services:

  wordpress:
    container_name: wp-1  
    image: wordpress:latest
    restart: "always"
    ports:
      - "80:80"
    volumes:
      - ./wordpress:/var/www/html  
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: user
      WORDPRESS_DB_PASSWORD: password
      WORDPRESS_DB_NAME: wordpress

  db:
    container_name: mysql-1  
    image: mysql:8.0.19
    command: --default-authentication-plugin=mysql_native_password  
    restart: "always"
    volumes:
      - ./db:/var/lib/mysql        
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_USER: user
      MYSQL_PASSWORD: password
      MYSQL_RANDOM_ROOT_PASSWORD: '1'

  phpmyadmin: 
    container_name: phpmyadmin-1     
    depends_on:      
    - db    
    image: phpmyadmin/phpmyadmin    
    links:      
    - db    
    ports:      
    - "8080:80"    
    restart: "always"
    
  cli:
    container_name: cli-1 
    image: wordpress:cli
    volumes:
      - ./wordpress:/var/www/html 
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: user
      WORDPRESS_DB_PASSWORD: password
      WORDPRESS_DB_NAME: wordpress

docker-compose up -d

# Tengo que seguir revisando, pero es el primer ejemplo groso que me anduvo. # Así que es una buena partida. 

marzo 25, 2022 at 12:28 am Deja un comentario

Cuando el put#»#z0 de Bash te trae las carpetas padre de un directorio

Quiero hacer un backup de una carpeta dentro de otras carpetas. Y por eso no logre deshacerme de las carpetas padre de las mismas. Es decir tengo

a/b/c
y dentro de c tengo d que es lo que quiero. 
Bueno mas o menos asi lo solucione. 

#!/bin/bash
#	Genero una fecha
fecha=$(date +"%d-%m-%y")
#	Una variable para archivo y fecha
backup=bck-$fecha.tar
#	Acá en donde tengo los archivos
archivos=/home/ed/Archivos/
#	Ruta del comando tar
cmd=$(which tar)
#	Ruta del comando find
f=$(which find)

$f $archivos -execdir $cmd -cpf $backup  {} \;

marzo 23, 2022 at 7:12 pm Deja un comentario

Frases Celebres

marzo 23, 2022 at 2:19 pm Deja un comentario

OpenVpn server y cliente en debian 11

#	Me guio de 
https://www.howtoforge.com/how-to-install-and-configure-openvpn-server-on-debian-10/
#	Server
192.168.0.18
#	Cliente
192.168.0.24

sudo vi /etc/sysctl.conf
#	Descomentar la linea
net.ipv4.ip_forward=1
sudo sysctl -p

sudo apt-get install openvpn -y

sudo cp -r /usr/share/easy-rsa /etc/openvpn/


cd /etc/openvpn/easy-rsa
sudo mv vars.example vars
sudo vi vars


export KEY_COUNTRY="ARGENTINA"
export KEY_PROVINCE="BA"
export KEY_CITY="Buenos Aires"
export KEY_ORG="Mandarinas"
export KEY_EMAIL="pablohernanjuan@hotmail.com.com"
export KEY_OU="OpenVPN"


sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass

#	respondemos en la linea (server)
Common Name (eg: your user, host, or server name) [Easy-RSA CA]:server

sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server
sudo ./easyrsa gen-dh
sudo openvpn --genkey --secret ta.key

sudo cp ta.key /etc/openvpn/
sudo cp pki/ca.crt /etc/openvpn/
sudo cp pki/private/server.key /etc/openvpn/
sudo cp pki/issued/server.crt /etc/openvpn/
sudo cp pki/dh.pem /etc/openvpn/


sudo ./easyrsa gen-req client nopass
sudo ./easyrsa sign-req client client

sudo cp pki/ca.crt /etc/openvpn/client/
sudo cp pki/issued/client.crt /etc/openvpn/client/
sudo cp pki/private/client.key /etc/openvpn/client/


sudo vi /etc/openvpn/server.conf

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh.pem
server 10.8.0.0 255.255.255.0
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log         /var/log/openvpn/openvpn.log
log-append  /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1


sudo systemctl start openvpn@server
sudo systemctl status openvpn@server

################
#OpenVPN Client
################

sudo apt-get install openvpn -y


sudo vi /etc/openvpn/client.conf

client
dev tun
proto udp
remote 192.168.0.18 1194
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
verb 3


sudo scp root@192.168.0.18:/etc/openvpn/client/ca.crt /etc/openvpn/
sudo scp root@192.168.0.18:/etc/openvpn/client/client.crt /etc/openvpn/
sudo scp root@192.168.0.18:/etc/openvpn/client/client.key /etc/openvpn/
sudo scp root@192.168.0.18:/etc/openvpn/ta.key /etc/openvpn/

sudo systemctl start openvpn@client

marzo 23, 2022 at 12:06 am Deja un comentario

frases celebres.

marzo 17, 2022 at 6:19 pm Deja un comentario

owncloud en docker-compose sin redis.

#	Creo la carpeta y me meto ahi
mkdir owncloud && cd $_

#	Recomendable ponerle datos seguros a las claves
#	Armamos el .env
vi .env
OWNCLOUD_VERSION=10.9.1
OWNCLOUD_DOMAIN=localhost:8080
ADMIN_USERNAME=admin
ADMIN_PASSWORD=admin
HTTP_PORT=8080
OWNCLOUD_DB_NAME=owncloud
OWNCLOUD_DB_USERNAME=owncloud
OWNCLOUD_DB_PASSWORD=owncloud
MYSQL_ROOT_PASSWORD=owncloud
MYSQL_USER=owncloud
MYSQL_PASSWORD=owncloud
MYSQL_DATABASE=owncloud

#	Armamos el docker-compose
vi docker-compose.yml

version: "3"

volumes:
  files:
    driver: local
  mysql:
    driver: local

services:
  owncloud:
    image: owncloud/server:${OWNCLOUD_VERSION}
    container_name: owncloud_server
    restart: always
    env_file:
      - ./.env
    ports:
      - ${HTTP_PORT}:8080
    depends_on:
      - mariadb
    environment:
      - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
      - OWNCLOUD_DB_TYPE=mysql
      - OWNCLOUD_DB_NAME=${OWNCLOUD_DB_NAME}
      - OWNCLOUD_DB_USERNAME=${OWNCLOUD_DB_USERNAME}
      - OWNCLOUD_DB_PASSWORD=${OWNCLOUD_DB_PASSWORD}
      - OWNCLOUD_DB_HOST=mariadb
      - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
      - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - OWNCLOUD_MYSQL_UTF8MB4=true

    volumes:
      - files:/mnt/data

  mariadb:
    image: mariadb:10.5
    container_name: owncloud_mariadb
    restart: always
    env_file:
      - ./.env
    environment:
      - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - MYSQL_USER=${MYSQL_USER}
      - MYSQL_PASSWORD=${MYSQL_PASSWORD}
      - MYSQL_DATABASE=${MYSQL_DATABASE}
    volumes:
      - mysql:/var/lib/mysql


docker-compose up -d

marzo 15, 2022 at 11:13 pm Deja un comentario

minikube que no le da bola al imagepullpolicy

#	Construí una imagen de docker que estoy metiendo en un deployment. 
#	El tema es que para que kubernete no descargue la imagen y la busque localmente
#	Hay que tocar imagePullPolicy: IfNotPresent. Pero en minikube no funciona. 

#	Solución
https://stackoverflow.com/questions/42564058/how-to-use-local-docker-images-with-minikube

respuesta 26

#	Corres esto
eval $(minikube docker-env)
#	Vuelves a correr la construcción de la imagen
docker build -t k8s-hands-on -f Dockerfile .
#	Le metes un tag
docker tag 95a165e8d43a k8s-hands-on/v1
# 	y seteas nunca imagepullpolicy
        image: k8s-hands-on/v1 
        imagePullPolicy: Never 

marzo 15, 2022 at 3:20 pm Deja un comentario

owncloud a la oficial en docker

#	Opción 1
https://doc.owncloud.com/server/10.9/admin_manual/installation/docker/

#	Creo la carpeta y me meto ahi
mkdir owncloud && cd $_

#	Recomendable ponerle datos seguros a las claves
#	Armamos el .env
vi .env
OWNCLOUD_VERSION=10.9.1
OWNCLOUD_DOMAIN=localhost:8080
ADMIN_USERNAME=admin
ADMIN_PASSWORD=admin
HTTP_PORT=8080
OWNCLOUD_DB_NAME=owncloud
OWNCLOUD_DB_USERNAME=owncloud
OWNCLOUD_DB_PASSWORD=owncloud
MYSQL_ROOT_PASSWORD=owncloud
MYSQL_USER=owncloud
MYSQL_PASSWORD=owncloud
MYSQL_DATABASE=owncloud

#	Armamos el docker-compose
vi docker-compose.yml

version: "3"

volumes:
  files:
    driver: local
  mysql:
    driver: local
  redis:
    driver: local

services:
  owncloud:
    image: owncloud/server:${OWNCLOUD_VERSION}
    container_name: owncloud_server
    restart: always
    env_file:
      - ./.env
    ports:
      - ${HTTP_PORT}:8080
    depends_on:
      - mariadb
      - redis
    environment:
      - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
      - OWNCLOUD_DB_TYPE=mysql
      - OWNCLOUD_DB_NAME=${OWNCLOUD_DB_NAME}
      - OWNCLOUD_DB_USERNAME=${OWNCLOUD_DB_USERNAME}
      - OWNCLOUD_DB_PASSWORD=${OWNCLOUD_DB_PASSWORD}
      - OWNCLOUD_DB_HOST=mariadb
      - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
      - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - OWNCLOUD_MYSQL_UTF8MB4=true
      - OWNCLOUD_REDIS_ENABLED=true
      - OWNCLOUD_REDIS_HOST=redis
    healthcheck:
      test: ["CMD", "/usr/bin/healthcheck"]
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      - files:/mnt/data

  mariadb:
    image: mariadb:10.5
    container_name: owncloud_mariadb
    restart: always
    env_file:
      - ./.env
    environment:
      - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - MYSQL_USER=${MYSQL_USER}
      - MYSQL_PASSWORD=${MYSQL_PASSWORD}
      - MYSQL_DATABASE=${MYSQL_DATABASE}
    command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=owncloud"]
      interval: 10s
      timeout: 5s
      retries: 5
    volumes:
      - mysql:/var/lib/mysql

  redis:
    image: redis:6
    container_name: owncloud_redis
    restart: always
    command: ["--databases", "1"]
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5
    volumes:
      - redis:/data
      
docker-compose.yml up -d

marzo 15, 2022 at 12:42 pm Deja un comentario

Older Posts


bueno

marzo 2022
L M X J V S D
 123456
78910111213
14151617181920
21222324252627
28293031  

Archivos