Puede que, si intentas entrar a docker.com, a hacer uso de la documentación o bajarte imágenes, te detenga una linda imágen como esta:
Si eres de los que está en ese caso, ponte en sintonía con este post. Lo que vamos a hacer es colarnos por un túnel que se encuentra en un hosting, «outside», jejeje.
Así que… Requisitos mínimos indispensables:
0- Internet
1- Hosting
2- PC con Linux
3- Docker, instalado en dicha PC
4- Deseos de aprender
Teniendo todo lo anterior, lo primero es:
apt install ssh
Después de instalado ssh
ssh -4p 443 -D 127.0.0.1:1080 usuario@hosting_outside.com
Debemos poner la clave del usuario@hosting_outside.com para continuar.
Nota: Esto se puede mejorar haciendo un script que inicie con el sistema, pero eso, ahora mismo, no es necesario para este proceso.
Ahora necesitaremos el «polipo» para redirigir todo el tráfico y las peticiones que haremos a docker.com:
apt install polipo
Dejamos la configuración de polipo de forma tal:
cat /etc/polipo/config
# This file only needs to list configuration variables that deviate # from the default values. See /usr/share/doc/polipo/examples/config.sample # and "polipo -v" for variables you can tweak and further information. logSyslog = true logFile = /var/log/polipo/polipo.log proxyAddress = "0.0.0.0" # IPv4 only allowedClients = 127.0.0.1 cacheIsShared = false # Uncomment this if you want to use a parent proxy: # parentProxy = "squid.example.org:3128" # Uncomment this if you want to use a parent SOCKS proxy: socksParentProxy = "127.0.0.1:1080" socksProxyType = socks5
Configurar navegador para proxy socks5 por el host 127.0.0.1 puerto 1080.
Ahora necesitamos hacerle unos tweaks a docker:
mkdir -p /etc/systemd/system/docker.service.d
Y dentro:
cat /etc/systemd/system/docker.service.d/http-proxy.conf
[Service] Environment="HTTP_PROXY=http://127.0.0.1:8123/" "NO_PROXY=localhost,127.0.0.1,github.com"
Hecho esto, sólo nos queda reiniciar docker y systemd.
/etc/init.d/docker restart systemctl daemon-reload
Una vez terminado ya podemos empezar a pedir imágenes por consola o navegar directamente en la documentación de hub.docker.com.
Ahora bien, imagina que quieres bajar imágenes de otros hubs… Cómo hago eso?
Fácil, sólo debes configurar tu fichero de «registry», es decir:
cat /etc/docker/daemon.json
{ "registry-mirrors": ["https://registry-1.docker.io"] }
Donde, en la variable registry-mirrors podemos usar:
- http://havanacontainers.com
- https://registry.docker-cn.com
- http://repo.docker.ir:5000
Quedando, por ejemplo:
cat /etc/docker/daemon.json
{ "insecure-registries" : [ "havanacontainers.com"], "registry-mirrors": ["http://havanacontainers.com"] }
Ahora, si eres de los que no les gusta embarrarse con el código, puedes ejecutar docker de la siguiente forma:
dockerd --registry-mirror=http://havanacontainers.com
Y listo!!!
Este procedimiento está probado en Deepin, Debian y Ubuntu.
Por lo que sólo me queda decirles que, prueben… Ojalá les sirva.
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0
Saludos, estoy en la misma situación pero con una infraestructura un tanto diferente. Tengo windows10 uso Psiphon que usa socket y VPN. pero no logro que me salga el docker. Todo el tiempo me da «Error response from daemon: Get https://registry-1.docker.io/v2/: proxyconnect tcp: dial tcp IP:PORT: connect: connection refused»
IP: La ip donde tengo corriendo el Psiphon(puede ser localhost u otro proxy en cascada que salga por el puerto del psiphon)
PORT: El puerto por el que trabaja el socket.
Gracias de antemano
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36
Utilizo Windows 10 con VPN solo con eso es suficiente, y los privates los tengo con nexus. It works like charm!
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0
Hola !!
Por favor necesito de ser posible me expliques como tienes configurado Nexus para almacenar docker.
Gracias