<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://miguelangel.torresegea.es/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://miguelangel.torresegea.es/wiki/feed.php">
        <title>miguel angel torres egea</title>
        <description></description>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <image rdf:resource="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png" />
       <dc:date>2026-06-11T00:28:59+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrant_docker?rev=1637060033&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:removefromindex?rev=1765543485&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:master_template?rev=1637059929&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:start?rev=1765445462&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:terraform-state?rev=1586181427&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:gitattributes?rev=1777903924&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile-examples?rev=1644860954&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:tips?rev=1752152433&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:fetch?rev=1778586631&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles?rev=1777903354&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:filter-repo?rev=1776168437&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile?rev=1637048076&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:poc:workspaces?rev=1586178196&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:mysql?rev=1637060139&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:tomcat?rev=1637060221&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:merge?rev=1761934229&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:istio:start?rev=1586265492&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:k8s:info?rev=1552213947&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:k8s:start?rev=1589275334&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:start?rev=1749563482&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:uri:start?rev=1547107975&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:dockerswarm:guide?rev=1638873892&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:config?rev=1752152736&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:curs?rev=1684328851&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:lfs?rev=1777903516&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:migrar?rev=1752153253&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:revert?rev=1761934020&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:tags?rev=1761933811&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:aws:start?rev=1749561491&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:azure:start?rev=1586250743&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:dockerswarm:start?rev=1651831338&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:autopush?rev=1777903300&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:diff?rev=1761933636&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:difftool?rev=1752152414&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:git-rename-branch?rev=1776244139&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:stash?rev=1761933732&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:submodule?rev=1752152518&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:google:start?rev=1758784495&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:ia:start?rev=1751524403&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:modules?rev=1585130256&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:casosuso?rev=1729352932&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:php?rev=1637060179&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:weblogic?rev=1637060077&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:run?rev=1574844222&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:tls?rev=1638597822&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:fusion?rev=1752152535&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:replica?rev=1752152498&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:repo-lectura?rev=1746789176&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:nominalia:start?rev=1674404811&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:regexp:start?rev=1576250745&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:cli?rev=1749562274&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile?rev=1644864326&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:start?rev=1581629264&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png">
        <title>miguel angel torres egea</title>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <url>https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png</url>
    </image>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrant_docker?rev=1637060033&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:53:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>3 nodos vagrant + docker</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrant_docker?rev=1637060033&amp;do=diff</link>
        <description>3 nodos vagrant + docker

vagrantfile

la idea es desplegar un cluster swarm</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-17T09:04:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DOCKER</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff</link>
        <description>DOCKER

devops info

related

+info

	*  dockerd
	*  Dockerfile
	*  docker-compose
	*  docker volumes
	*  docker TLS (OLD)
	*  docker daemon TLS
	*  docker context
	*  docker scan
	*  Dev Containers: &lt;https://www.youtube.com/watch?v=DkKs29etRis&gt;
	*  Health Check: &lt;https://atareao.es/podcast/tu-contenedor-docker-podria-estar-muerto-y-tu-sin-enterarte/&gt;

	*  &lt;https://tech.paulcz.net/blog/secure-docker-with-tls/&gt;
	*  &lt;https://gist.github.com/kekru/974e40bb1cd4b947a53cca5ba4b0bbe5&gt;
	*  &lt;https://blog…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:removefromindex?rev=1765543485&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-12T12:44:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git, sacar archivos del indice git (.gitignore)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:removefromindex?rev=1765543485&amp;do=diff</link>
        <description>git, sacar archivos del indice git (.gitignore)

Gemini dixit:

Esa es una excelente pregunta y es importante entender cómo funciona Git con .gitignore y los ficheros ya existentes.

⚠️ Ficheros ya rastreados (Tracked Files)

Si el directorio data/cache</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:master_template?rev=1637059929&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:52:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>master template</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:master_template?rev=1637059929&amp;do=diff</link>
        <description>master template

vagrantfile

master (DSP)

	*  la configuración de las VM está en fichero separado





master</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:start?rev=1765445462&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-11T09:31:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker-compose</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:start?rev=1765445462&amp;do=diff</link>
        <description>docker-compose

related

	*  docker-compose casos de uso

comandos

	*  detached start 
docker-compose up -d [service]

	*  
docker-compose up -d --scale &lt;SERVICIO&gt;=&lt;NUM_CONT&gt;


estado servicio


docker compose ps
docker compose ps -a
docker compose ps --status=exited


reiniciar servicio</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:terraform-state?rev=1586181427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-06T13:57:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Terraform state</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:terraform-state?rev=1586181427&amp;do=diff</link>
        <description>Terraform state

comandos

	*  list: lista los recursos del state
	*  show: muestra los detalles de uno de los recursos del state
	*  mv: mueve o renombra un recurso
	*  rm: elimina un recurso
	*  pull: descarga el state de un remoto
	*  push: sube el state desde local al remoto</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:gitattributes?rev=1777903924&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-04T14:12:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>.git* - .gitattributes</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:dotfiles:gitattributes?rev=1777903924&amp;do=diff</link>
        <description>.git* - .gitattributes

indica la naturaleza de cierto tipos de archivos para optimizar el control de cambios.

*.tgz binary
code/*.zip binary

	*  diff:Le indica a Git cómo comparar dos versiones del archivo.
		*  Sin esto, Git intentaría comparar los archivos binarios (lo cual es inútil y consume mucha CPU).</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile-examples?rev=1644860954&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-14T17:49:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrantfile examples</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile-examples?rev=1644860954&amp;do=diff</link>
        <description>vagrantfile examples

vagrant box

	*  crear una box en Vagrant:
		*  vagrant package &lt;nombre_maquina&gt; --output fichero.box
		*  subir (versión, proveedor, etc...)
		*  descargar (desde otro Vagrantfile):




ejemplos

configuraciones simples</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:tips?rev=1752152433&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:00:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git tips</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:tips?rev=1752152433&amp;do=diff</link>
        <description>git tips

git

git fetch VS git pull

	*  git pull = git fetch (+ git checkout) + git merge
	*  modo seguro:
git fetch origin
git log --oneline main..origin/main
git checkout main
git log origin/main
git merge origin/main


	*  &lt;https://www.atlassian.com/es/git/tutorials/syncing/git-fetch&gt;
	*  &lt;https://www.atlassian.com/es/git/tutorials/using-branches/git-checkout&gt;
	*  &lt;https://www.atlassian.com/es/git/tutorials/using-branches/git-merge&gt;
	*  &lt;https://www.atlassian.com/es/git/tutorials/syncing/gi…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:fetch?rev=1778586631&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-12T11:50:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git FETCH</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:fetch?rev=1778586631&amp;do=diff</link>
        <description>git FETCH

git comando

La respuesta corta es: no recibirás una notificación de sistema (como un mensaje emergente o un aviso sonoro), pero la terminal te dará información visual inmediata si hay algo nuevo.

git fetch es como asomarse a la ventana para ver si ha llegado el correo: descargas la información sobre lo que hay en el servidor, pero no &quot;abres las cartas&quot; (no mezclas los cambios con tu código todavía).</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T08:37:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git repo server</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff</link>
        <description>git repo server

seguridad

protocolos

&lt;https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols#The-HTTP/S-Protocol&gt;

	*  local
	*  http(s)
		*  Smart HTTP
		*  Dumb HTTP

	*  ssh
	*  git

ssh

	*  git-shell
		*  usermod -s /usr/bin/git-shell &lt;username&gt;

	*  /etc/ssh/sshd_config:

Match User git
    ForceCommand /usr/bin/git
    AllowTCPForwarding no
    X11Forwarding no</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T13:50:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>terraform variables</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff</link>
        <description>terraform variables

	*  &lt;https://developer.hashicorp.com/terraform/tutorials/configuration-language/variables&gt;

declaración

	*  recomendado en fichero aparte variables.tf

declaración: 


variable &quot;aws_region&quot; {
  description = &quot;AWS region&quot;
  type        = string
  default     = &quot;us-west-2&quot;
}

variable &quot;instance_count&quot; {
  description = &quot;Number of instances to provision.&quot;
  type        = number
  default     = 2
}

variable &quot;enable_vpn_gateway&quot; {
  description = &quot;Enable a VPN gateway in your V…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-14T17:48:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VAGRANT</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff</link>
        <description>VAGRANT

devops info



	*  vagrantfile
	*  vagrantfile examples

related

help

	*  &lt;https://www.vagrantup.com/docs/vagrantfile/machine_settings&gt;
	*  vagrant_hosts -&gt; sync_hosts: &lt;https://www.rubydoc.info/gems/vagrant-hosts/2.6.2&gt;

config files

	*  config.vm : &lt;https://www.vagrantup.com/docs/vagrantfile/machine_settings.html&gt;
	*  provision docker : &lt;https://www.vagrantup.com/docs/provisioning/docker.html&gt;

resumen comandos

imágenes (box)

	*  vagrant box add &lt;imagen&gt;: descargar
		*  alternati…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:dotfiles?rev=1777903354&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-04T14:02:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>.git*</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:dotfiles?rev=1777903354&amp;do=diff</link>
        <description>.git*

git

.gitconfig

	*  ~/.gitconfig:


[alias]
        ck = checkout
        s = status
        l = log --oneline --max-count=10
        ll = log --pretty=format:&quot;%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]&quot; --decorate --numstat
        lg = log --oneline --decorate --graph
        ls = log --pretty=format:&quot;%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]&quot; --decorate
        alias = ! git config --get-regexp ^alias\\. | sed -e s/^alias\\.// -e s/\\ /\\ =\\ /
        a = add
        b = branc…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:filter-repo?rev=1776168437&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-14T12:07:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git filter-repo</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:filter-repo?rev=1776168437&amp;do=diff</link>
        <description>git filter-repo

es una operación común cuando un proyecto crece tanto que un subdirectorio merece convertirse en un repositorio propio.

Esta es la herramienta oficial recomendada por Git actualmente. Si no la tienes, puedes instalarla (suele requerir Python: `pip install git-filter-repo` o</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile?rev=1637048076&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T07:34:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile?rev=1637048076&amp;do=diff</link>
        <description>Dockerfile

	*  &lt;https://docs.docker.com/develop/develop-images/dockerfile_best-practices/&gt;
	*  mirar: &lt;https://runnable.com/blog/9-common-dockerfile-mistakes&gt;

nombre contenedores

	*  [a-zA-Z0-9][a-zA-Z0-9_.-]
	*  max. 30 caracteres
	*  &lt;https://stackoverflow.com/questions/42642561/docker-restrictions-regarding-naming-container&gt;

zona horaria

	*  Zona Horaria (TZ)
	*  crear volumenes a /etc/localtime, /etc/timezone para que coincida con el host:



	*  &lt;https://serverfault.com/questions/68360…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-28T00:27:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker volumes</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff</link>
        <description>docker volumes

/via: &lt;https://docs.docker.com/storage/volumes/&gt;


	*  bind mount: montaje clásico con -v sobre una estructura de directorios
	*  tmpfs mount: almacenar data no persistente
	*  volume:
		*  gestionado desde cli docker
		*  trasversal al OS


--volume o --mount

	*  desde la versión 17.06</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-25T07:15:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Google: operadores de búsqueda</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff</link>
        <description>Google: operadores de búsqueda

google

	*  Operadores de búsqueda que puedes usar con Gmail: &lt;https://support.google.com/mail/answer/7190?hl=en&gt;

	*  /via: &lt;https://en.wikipedia.org/wiki/Google_hacking&gt;
	*  /via: &lt;https://www.welivesecurity.com/la-es/2021/07/29/google-hacking-averigua-que-informacion-sobre-ti-o-empresa-aparece-resultados/&gt;
	*  GHDB: &lt;https://www.exploit-db.com/google-hacking-database&gt;
		*  intitle:”webcamXP 5″
		*  intext:”index of” inurl:ftp
		*  “Index of” inurl:phpmyadmin
		…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:poc:workspaces?rev=1586178196&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-06T13:03:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Terraform workspace</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:poc:workspaces?rev=1586178196&amp;do=diff</link>
        <description>Terraform workspace

comandos

	*  terraform workspace new &lt;ENTORNO&gt;
	*  terraform workspace list
	*  terraform workspace select &lt;ENTORNO&gt;
	*  terraform workspace delete &lt;ENTORNO&gt;
	*  terraform workspace show

ejemplo

	*  se pueden crear tantos entornos como sean necesarios (new)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:mysql?rev=1637060139&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:55:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant mysql</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:mysql?rev=1637060139&amp;do=diff</link>
        <description>vagrant mysql

vagrantfile

los ficheros necesarios se han servido desde un pequeño contenedor (por restricciones de licencia o firewall),

docker run -d -p 9090:80 -v $PWD:/http tiagoad/nginx-index

con docker

(problema sin resolver, la VM arranca bien el mysql la primera vez, pero no las posteriores)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:tomcat?rev=1637060221&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:57:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant tomcat (7/8) con JDK (7/8)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:tomcat?rev=1637060221&amp;do=diff</link>
        <description>vagrant tomcat (7/8) con JDK (7/8)

vagrantfile

los ficheros necesarios se han servido desde un pequeño contenedor (por restricciones de licencia o firewall),

docker run -d -p 9090:80 -v $PWD:/http tiagoad/nginx-index

Vagrantfile


Vagrant.configure(&quot;2&quot;) do |config|
  config.vm.box = &quot;peru/ubuntu-18.04-desktop-amd64&quot;
  config.vm.box_version = &quot;20190401.01&quot;
  config.vm.provision &quot;file&quot;, source: &quot;tomcat.service&quot;, destination: &quot;/tmp/tomcat.service&quot;

  config.vm.provider :virtualbox do |v|
    v.…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:merge?rev=1761934229&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T18:10:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git MERGE</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:merge?rev=1761934229&amp;do=diff</link>
        <description>git MERGE

git comando

fusión a 3 bandas entre los dos últimos commits de las dos ramas y el ancestro común

2 maneras de mostrar/trabajar:

	*  no-ff -&gt; no fastforward : nanera de trabajar por defecto de la mayoría de los repositorios, se muestran las ramas creadas con sus propios commits</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:istio:start?rev=1586265492&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-07T13:18:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>istio</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:istio:start?rev=1586265492&amp;do=diff</link>
        <description>istio

info

	*  patrón sidecar (aislamiento y encapsulación)
	*  proxy: 
		*  (Envoy) que controla todas las comunicaciones del pod
		*  notifica a «control»:
			*  Mixer: métricas
			*  Pilot: información a los proxies de los pods: registro y configuraciones</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:k8s:info?rev=1552213947&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-03-10T10:32:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>k8s info</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:k8s:info?rev=1552213947&amp;do=diff</link>
        <description>k8s info

basics

	*  k8s cluster: varios masters gestionando varios nodos slaves/workers



	*  los nodos workers se componen:
		*  kubelet : orquestación/control pods en el nodo
		*  Docker
		*  kube-proxy: comunicaciones entre pods y nodos
		*  pods: contienen lo necesario para ofrecer el servicio</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:k8s:start?rev=1589275334&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-12T09:22:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>kubernetes</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:k8s:start?rev=1589275334&amp;do=diff</link>
        <description>kubernetes

info

	*  k8s info
	*  basics
	*  kubernetes rbac

cli

	*  kubernetes in azure
	*  kubectl proxy
	*  kubernetes namespace
	*  kubernetes events

related

cursos

libros</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:start?rev=1749563482&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T13:51:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>TERRAFORM</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:start?rev=1749563482&amp;do=diff</link>
        <description>TERRAFORM

devops info

	*  terraform AWS
	*  terraform azure

documentación

	*  Terraform cli
	*  terraform variables
	*  resources
	*  Terraform state
	*  terraform data source
	*  terraform modules

PoC

	*  Terraform workspace

related

enlaces documentación

	*  0.12: &lt;https://www.terraform.io/docs/configuration/index.html&gt;
	*  0.11: &lt;https://www.terraform.io/docs/configuration-0-11/interpolation.html: interpolación (referenciar variables, atributos de recursos, llamar funciones)&gt;

de inte…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:uri:start?rev=1547107975&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-01-10T08:12:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>URI</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:uri:start?rev=1547107975&amp;do=diff</link>
        <description>URI

	*  standard para identificar documentos
	*  Uniform Resource Identifier
	*  +info: &lt;https://webmasters.stackexchange.com/questions/19101/what-is-the-difference-between-a-uri-and-a-url&gt;

URL

	*  sub de URI
	*  Uniform Resource Locator
	*  contiene información para la localización del recurso
	*  protocolo - nombre del host - path

URN

	*  sub de</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T07:36:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile mariadb + SSL</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff</link>
        <description>Dockerfile mariadb + SSL

dockerfile

Dockerfile


FROM mariadb:latest

ADD --chown=mysql:root ./data/certs/server-key.pem /etc/mysql/certs/server.key
ADD ./data/certs/server-cert.pem /etc/mysql/certs/server.crt
ADD ./data/certs/ca-cert.pem /etc/mysql/certs/CA.crt
ADD ./data/certs/ssl.cnf /etc/mysql/conf.d/ssl.cnf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T20:24:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker TLS (OLD)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff</link>
        <description>docker TLS (OLD)

	*  SSL, TLS: &lt;https://docs.docker.com/engine/security/protect-access/&gt;
	*  &lt;https://www.labkey.org/Documentation/wiki-page.view?name=dockerTLS&gt;
	*  &lt;https://docs.docker.com/engine/security/apparmor/&gt;
	*  docker context -&gt; &lt;https://docs.docker.com/engine/context/working-with-contexts/&gt;

	*  &lt;https://tech.paulcz.net/2016/01/secure-docker-with-tls/&gt;
	*  docker run --rm -v $(pwd)/.docker:/certs paulczar/omgwtfssl
	*  &lt;https://www.youtube.com/watch?v=70QOBVwLyC0&gt;

creación certific…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:dockerswarm:guide?rev=1638873892&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-07T10:44:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker swarm: official guide</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:dockerswarm:guide?rev=1638873892&amp;do=diff</link>
        <description>docker swarm: official guide

devops docker swarm

	*  &lt;https://docs.docker.com/engine/swarm/swarm-tutorial/&gt;
		*  &lt;https://docs.docker.com/engine/install/debian/&gt;

	*  &lt;https://docs.docker.com/engine/swarm/swarm-tutorial/create-swarm/&gt;
	*  &lt;https://docs.docker.com/engine/swarm/swarm-tutorial/add-nodes/&gt;
	*  &lt;https://docs.docker.com/engine/swarm/swarm-tutorial/deploy-service/&gt;
	*  &lt;https://docs.docker.com/engine/swarm/swarm-tutorial/inspect-service/&gt;
	*  &lt;https://docs.docker.com/engine/swarm/swa…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:config?rev=1752152736&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:05:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git config</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:config?rev=1752152736&amp;do=diff</link>
        <description>git config

git

glosario

	*  HEAD == @
	*  HEAD^ : commit anterior al HEAD
	*  HEAD@{1.month}
	*  - (guión) : te devuelve a la rama que acabas de dejar

config

	*  ubicación:
		*  system : /etc/gitconfig [--system]
		*  global : ~/.gitconfig [--global]</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:curs?rev=1684328851&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-17T13:07:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Anotaciones curso GIT</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:curs?rev=1684328851&amp;do=diff</link>
        <description>Anotaciones curso GIT

	*  git init
	*  git add
	*  .gitignore
	*  git diff [--staged][--cached]
	*  git commit [-m «mensaje»][-a][--ammend]
	*  git config --global core.editor
		*  git config --global alias.unstage &#039;reset HEAD ~&#039;
		*  git config --</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:lfs?rev=1777903516&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-04T14:05:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git LFS</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:lfs?rev=1777903516&amp;do=diff</link>
        <description>git LFS

git comando

Large File Storage/via: &lt;https://support.atlassian.com/bitbucket-cloud/docs/use-git-lfs-with-bitbucket/&gt;

install

sudo apt install git-lfs

setup (nuevos repos)

	*  instalación cliente:
git lfs install --local # si no se especifica --local, afecta a todos los repos de la sesión, con --local solo al actual

	*  configuración:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:migrar?rev=1752153253&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:14:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git: migrar repositorio</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:migrar?rev=1752153253&amp;do=diff</link>
        <description>git: migrar repositorio

git
Esta página contiene errores subsanados en la explicación 
/vía: &lt;https://maureenbarahona.medium.com/migrar-un-repositorio-con-todos-sus-commits-y-todas-sus-ramas-ccd2c5e6d389&gt;

	*  crear un repositorio vacío en el proveedor de destino
	*  clonar el repositorio que queremos cambiar de proveedor
git clone...

	*  cambiar el origen del repositorio</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:revert?rev=1761934020&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T18:07:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git REVERT</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:revert?rev=1761934020&amp;do=diff</link>
        <description>git REVERT

git comando

revierte los cambios de un commit haciendo otro commit

	*  git revert &lt;commit&gt;
		*  -e : permite editar el mensaje de commit (acción por defecto en línea de comando)
		*  --no-edit : lo contrario

	*  git revert &lt;commit&gt;..&lt;commit&gt; : revierte desde el primero (no incluido) al último</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:tags?rev=1761933811&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T18:03:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git TAG</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:tags?rev=1761933811&amp;do=diff</link>
        <description>git TAG

git comando

	*  dos tipos:
		*  lightweight: ligeros, hace referencia a un commit
		*  annotated: añade más información, como autor, mensaje y fecha


añadir

	*  git tag &lt;tag&gt; : crea tag ligero en el HEAD
		*  git tag &lt;tag&gt; &lt;commit&gt; : crea tag ligero del commit concreto</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-13T08:03:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Singularity</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff</link>
        <description>Singularity

.sif i cache

singularity pull hello-world.sif shub://vsoch/hello-world

singularity cache list [-v]

containers

singularity exec hello-world.sif /bin/echo Hello World!

singularity shell hello-world.sif

singularity shell hello-world.sif
Singularity&gt; whoami</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T07:40:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile run script</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff</link>
        <description>Dockerfile run script

dockerfile

/via:&lt;https://github.com/chio-nzgft/docker-MariaDB-with-SSL/blob/master/run.sh&gt;

destacable



completo


#!/bin/sh
# execute any pre-init scripts
for i in /scripts/pre-init.d/*sh
do
        if [ -e &quot;${i}&quot; ]; then
                echo &quot;[i] pre-init.d - processing $i&quot;
                . &quot;${i}&quot;
        fi
done

if [ -d &quot;/run/mysqld&quot; ]; then
        echo &quot;[i] mysqld already present, skipping creation&quot;
        chown -R mysql:mysql /run/mysqld
else
        echo &quot;[i] …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:aws:start?rev=1749561491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T13:18:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>AWS</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:aws:start?rev=1749561491&amp;do=diff</link>
        <description>AWS

cli

configure session

aws configure sso-session          
SSO session name: my-sso
SSO start URL [None]: https://d-cb6728e0c8.awsapps.com/start/#
SSO region [None]: eu-south-2
SSO registration scopes [sso:account:access]:

login

aws sso login --sso-session my-sso</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:azure:start?rev=1586250743&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-07T09:12:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Azure</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:azure:start?rev=1586250743&amp;do=diff</link>
        <description>Azure

related</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:dockerswarm:start?rev=1651831338&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-05-06T10:02:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker SWARM</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:dockerswarm:start?rev=1651831338&amp;do=diff</link>
        <description>docker SWARM

conceptos básicos

	*  stacks
	*  servicios

info

	*  &lt;https://dockerswarm.rocks/&gt;
		*  traefik
		*  swarmpit: Prometheus + Grafana + ...

	*  &lt;https://labs.play-with-docker.com/&gt;
	*  &lt;https://training.play-with-docker.com/&gt;

remote

	*  
DOCKER_HOST=“ssh://user@remotehost”
docker-compose up -d

	*  docker context

/via: &lt;https://www.docker.com/blog/how-to-deploy-on-remote-docker-hosts-with-docker-compose/&gt;

relacionado</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:autopush?rev=1777903300&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-04T14:01:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git autopush shell script</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:autopush?rev=1777903300&amp;do=diff</link>
        <description>git autopush shell script

git

script bash para hacer un commit de un repositorio GIT de manera automatizada

	*  añadir a cron para ejecución automatizada.
	*  hay que configurar el remote:
		*  git config credential.helper &lt;- no he hecho funcionar o no aporta</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:diff?rev=1761933636&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T18:00:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git DIFF</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:diff?rev=1761933636&amp;do=diff</link>
        <description>git DIFF

git comando

/via: &lt;https://devconnected.com/how-to-compare-two-git-branches/&gt;

diferencias en ficheros

	*  mostrar diferencias entre working area y último commit:

git diff @ # @ = HEAD


	*  mostrar ficheros cambiados respecto a un commit:

git show --stat --oneline &lt;commit-id&gt;
git diff-tree --no-commit-id --name-only -r &lt;commit-id&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:difftool?rev=1752152414&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:00:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git diff[tool]</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:difftool?rev=1752152414&amp;do=diff</link>
        <description>git diff[tool]

git

básicos


git diff @ # @ = HEAD



git show --stat --oneline &lt;commit-id&gt;
git diff-tree --no-commit-id --name-only -r &lt;commit-id&gt;


configuración difftool


#git config --global merge.tool kdiff3
#git config --global mergetool.kdiff3.path &quot;/usr/bin/kdiff3&quot;
#git config --global mergetool.kdiff3.trustExitCode false

git config --global --add diff.guitool kdiff3
git config --global difftool.kdiff3.path &quot;/usr/bin/kdiff3&quot;
git config --global difftool.kdiff3.trustExitCode false</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:git-rename-branch?rev=1776244139&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-15T09:08:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Git rename branch (master to main)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:git-rename-branch?rev=1776244139&amp;do=diff</link>
        <description>Git rename branch (master to main)

git

procedimiento

	*  renombrar rama en local:

# 1. En tu PC, renombra master a main
git branch -m master main

# 2. Sube la nueva rama main a Gitea
git push origin main


	*  cambiar rama por defecto en Gitea (settings</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:stash?rev=1761933732&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T18:02:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git STASH</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:stash?rev=1761933732&amp;do=diff</link>
        <description>git STASH

git comando

añadir

	*  git stash push : guarda ficheros de *staged area*
		*  git stash save [-u | --include-untracked] «&lt;message&gt;» : le da un nombre a la sesión guardada en el stash
		*  -u : incluye los ficheros untracked

	*  git stash save [-k |</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:submodule?rev=1752152518&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:01:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git submodulos</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:submodule?rev=1752152518&amp;do=diff</link>
        <description>git submodulos

git

clonar incluyendo submódulos

git clone --recurse-submodules -j8 &lt;url-git&gt;

git clone --recursive -j8 &lt;url-git&gt;
# -j8 solo disponible a partir de la 2.8

git clone --recursive &lt;url-git&gt;

si el repositorio ya estaba clonado:

git clone &lt;url-git&gt;
cd &lt;path-git-submodule&gt;
git submodule update --init --recursive</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:google:start?rev=1758784495&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-25T07:14:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Google</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:google:start?rev=1758784495&amp;do=diff</link>
        <description>Google</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:ia:start?rev=1751524403&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-03T06:33:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>IA</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:ia:start?rev=1751524403&amp;do=diff</link>
        <description>IA

prompts

	*  Domina cualquier concepto en minutos: 
Explícale [tema] a alguien que lo escucha por primera vez. Usa ejemplos reales, errores comunes y una explicación paso a paso. Añade un pequeño test para comprobar comprensión.

	*  Ruta express para aprender algo nuevo:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:modules?rev=1585130256&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-25T09:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>terraform modules</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:modules?rev=1585130256&amp;do=diff</link>
        <description>terraform modules

+ info: &lt;https://www.terraform.io/docs/configuration/modules.html&gt;

llamada


module &quot;servers&quot; {
  source = &quot;./app-cluster&quot;

  servers = 5 # input var from module
}


	*  otros meta-argumentos
		*  version
		*  providers: map


accediendo a los outputs de un módulo

	*  declarar outputs con los datos que se quieren compartir desde el módulo</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:casosuso?rev=1729352932&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-19T15:48:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker-compose casos de uso</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:docker-compose:casosuso?rev=1729352932&amp;do=diff</link>
        <description>docker-compose casos de uso

docker-compose

mariadb + adminer


version: &#039;3.9&#039;

services:
  db:
    image: mariadb
    ports:
      - &quot;3306:3306&quot;
    volumes:
      - ./data/db:/var/lib/mysql
    env_file:
      - db.env
    container_name: mariadb

  adminer:
    image: adminer
    restart: unless-stopped
    ports:
      - 8080:8080</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-11T08:18:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>kubernetes namespace</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff</link>
        <description>kubernetes namespace

kubectl get namespace

kubectl get pods --namespace=&lt;insert-namespace-name-here&gt;

kubectl config set-context --current --namespace=&lt;insert-namespace-name-here&gt;
kubectl config view --minify | grep namespace:

# In a namespace
kubectl api-resources --namespaced=true
# Not in a namespace
kubectl api-resources --namespaced=false</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:php?rev=1637060179&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:56:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant php</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:php?rev=1637060179&amp;do=diff</link>
        <description>vagrant php

vagrantfile

php5


Vagrant.configure(&quot;2&quot;) do |config|
  config.vm.box = &quot;peru/ubuntu-18.04-desktop-amd64&quot;
  config.vm.box_version = &quot;20190401.01&quot;
  config.vm.provision &quot;file&quot;, source: &quot;../../common/info.php&quot;, destination: &quot;/tmp/info.php&quot;

  config.vm.provider :virtualbox do |v|
    v.name = &quot;altrankas-apache-php5&quot;
    v.linked_clone = true
    v.memory = 2048
    v.cpus = 2
  end

  config.vm.provision &quot;shell&quot;, path: &quot;install.sh&quot;

  config.vm.provision &quot;shell&quot;, path: &quot;../../common/…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:weblogic?rev=1637060077&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T10:54:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant weblogic</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:weblogic?rev=1637060077&amp;do=diff</link>
        <description>vagrant weblogic

vagrantfile

12


Vagrant.configure(&quot;2&quot;) do |config|
  config.vm.box = &quot;peru/ubuntu-18.04-desktop-amd64&quot;
  config.vm.box_version = &quot;20190401.01&quot;
  config.vm.provision &quot;file&quot;, source: &quot;./orainst.loc&quot;, destination: &quot;/tmp/orainst.loc&quot;
  config.vm.provision &quot;file&quot;, source: &quot;./12c_repository_file.xml&quot;, destination: &quot;/tmp/12c_repository_file.xml&quot;
  config.vm.provision &quot;file&quot;, source: &quot;../../../common/wls_adminserver.service&quot;, destination: &quot;/tmp/wls_adminserver.service&quot;

  config.vm.p…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:run?rev=1574844222&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-11-27T08:43:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker run</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:run?rev=1574844222&amp;do=diff</link>
        <description>docker run

usos útiles



#!/bin/bash

docker run \
    --detach \
    --publish 9000:9000 \
    --name portainer \
    --restart unless-stopped \
    --volume /var/run/docker.sock:/var/run/docker.sock \
    --volume ${PWD}/data:/data \
portainer/portainer</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:tls?rev=1638597822&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-04T06:03:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker daemon TLS</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:tls?rev=1638597822&amp;do=diff</link>
        <description>docker daemon TLS

	*  create directories:
mkdir -p ${HOME}/.docker
mkdir -p /etc/docker/certs

	*  create certificates:

docker run --rm -v $(pwd)/.docker:/certs paulczar/omgwtfssl
sudo cp ~/.docker/ca.pem /etc/docker/ssl/ca.pem
chown -R $USER ~/.docker
# añadir IPs correspondientes
docker run --rm -v /etc/docker/ssl:/server \
    -v $(pwd)/.docker:/certs \
    -e SSL_IP=127.0.0.1,172.17.8.101 \
    -e SSL_DNS=docker.local -e SSL_KEY=/server/key.pem \
    -e SSL_CERT=/server/cert.pem paulczar/o…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:fusion?rev=1752152535&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:02:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git: fusion varios repos en 1 conservando historia</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:fusion?rev=1752152535&amp;do=diff</link>
        <description>git: fusion varios repos en 1 conservando historia

git

/via: &lt;https://medium.com/@checko/merging-two-git-repositories-into-one-preserving-the-git-history-4e20d3fafa4e&gt;

	*  creamos nuevo repo + primer commit (no remote necesario en este momento para este repo)
	*  añadimos el remote del primer repo que queremos fusionar:
git remote add -f first_repo `link_to_first_repo`
git merge --allow-unrelated-histories first_repo/master</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:replica?rev=1752152498&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-10T13:01:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git: replicación o duplicación de repositorios</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:replica?rev=1752152498&amp;do=diff</link>
        <description>git: replicación o duplicación de repositorios

git


# partiendo de un repositorio existente y uno recién creado
cp -r $PATH_REPO $PATH_REPO_NEW (habría que hacer un --bare antes?)
git remote -set-url origin $URL_REPO_NEW
git push --mirror origin


/vía:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:repo-lectura?rev=1746789176&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-09T11:12:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Crear repositorio de solo lectura (para algunos)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:repo-lectura?rev=1746789176&amp;do=diff</link>
        <description>Crear repositorio de solo lectura (para algunos)

git

	*  Crear repo: 
mkdir mi_repositorio.git
cd mi_repositorio.git
git init --bare

	*  asignar owners: 
sudo chown -R git:mi_grupo_lectura mi_repositorio.git

	*  asignar permisos: 
sudo chmod -R 755 mi_repositorio.git</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:nominalia:start?rev=1674404811&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-22T16:26:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nominalia</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:nominalia:start?rev=1674404811&amp;do=diff</link>
        <description>nominalia

dominio básico

	*  dominio -&gt; dominio y DNS -&gt; Código autorización -&gt; cambio a domínio básico
		*  .cat .info desde panel de control
		*  .es abrir ticket</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:regexp:start?rev=1576250745&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-13T15:25:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>regexp (regular expression)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:regexp:start?rev=1576250745&amp;do=diff</link>
        <description>regexp (regular expression)

	*  &lt;https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions&gt;
	*  RegExp

funcionamiento

	*  búsqueda de patrones en texto
	*  &lt;char&gt; : busca &lt;char&gt; (o n-&lt;char&gt;) en el mismo orden
	*  ^&lt;string&gt; : busca &lt;string&gt; al principio de línea
	*  &lt;string&gt;$ : busca &lt;string&gt; al final de línea</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:cli?rev=1749562274&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T13:31:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Terraform cli</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:cli?rev=1749562274&amp;do=diff</link>
        <description>Terraform cli

básicos

	*  init : Initialize a new or existing Terraform configuration
	*  validate : Validates the Terraform files
	*  plan : Generate and show an execution plan
	*  fmt : Rewrites config files to canonical format
	*  apply : Builds or changes infrastructure</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile?rev=1644864326&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-14T18:45:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrantfile</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile?rev=1644864326&amp;do=diff</link>
        <description>vagrantfile

	*  provisioning: &lt;https://www.vagrantup.com/docs/provisioning&gt;

Vagrant.configure(&quot;2&quot;) do |config|

	*  config namespace: &lt;https://www.vagrantup.com/docs/vagrantfile/machine_settings#machine-settings&gt;

box

	*  box a usar: config.vm.box
		*  config.vm.box=«debian/bullseye64»

	*  versión de la box a usar: config.vm.box_version
		*  config.vm.box_version=</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-11T07:55:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockerd remote tls access</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff</link>
        <description>dockerd remote tls access

via

	*  &lt;https://docs.docker.com/engine/security/https/&gt;
	*  &lt;https://nickjanetakis.com/blog/docker-tip-73-connecting-to-a-remote-docker-daemon&gt;
	*  &lt;https://success.docker.com/article/how-do-i-enable-the-remote-api-for-dockerd&gt;
	*  &lt;https://medium.com/@ssmak/how-to-enable-docker-remote-api-on-docker-host-7b73bd3278c6&gt;

setup

	*  pretendemos «asegurar» la conexión con el dockerd de manera que solo los clientes con certificado firmado por la misma CA que el servidor p…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:start?rev=1581629264&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-13T21:27:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockerd</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:start?rev=1581629264&amp;do=diff</link>
        <description>dockerd

	*  dockerd remote tls access

info

sudo systemctl start docker

sudo service docker start


# si hay cambios en los ficheros de configuración de configuración de los servicios systemd
sudo systemctl daemon-reload
sudo systemctl restart docker


{
    &quot;data-root&quot;: &quot;/mnt/docker-data&quot;,
    &quot;storage-driver&quot;: &quot;overlay&quot;,
# autorizar docker-registry no seguros
    &quot;insecure-registries&quot; : [&quot;10.29.66.85:5000&quot;] 
}</description>
    </item>
</rdf:RDF>
