Weet je hoe irritant het is als externe diensten een publieke URL verwachten? Denk aan webhooks, API's, oAuth, …
Nee? Nou, is wel zo.
Daarom gaan we een tunnel naar buiten toe graven. Ze zeggen dat daar de zon schijnt en het gras groen is. Ze zijn niet goed wijs, maar enfin.
Als je de instructies op de pagina Projectspecifieke bash aliases gevolgd hebt, dan weet je hoe je snelle shortcuts in je project kunt aanmaken. Handig!
We gebruiken voor onze Symfony dev omgevingen een aantal vaste poorten. Respectievelijk zijn dit: 8015 voor Sulu en 8010 voor Sylius. Deze kunnen we met de Shopro localtunnel blootstellen aan de grote boze wereld, met zo'n bash alias.
Heel simpel – maak een bestand .bash_aliases/tunnel aan in je project met de volgende inhoud:
#!/bin/sh
if ! command -v lt 2>&1 >/dev/null
then
if ! command -v npm 2>&1 >/dev/null
then
echo "Npm is not installed. Installing now."
sudo apt -y install nodejs npm
fi
echo "Localtunnel is not installed. Installing now."
sudo npm install -g localtunnel
fi
SUBDOMAIN="sulu-$(whoami)"
echo "Your URL is: https://$SUBDOMAIN.tunnel.shopro.dev"
while true; do
# The while loop will make sure the tunnel reconnects if it loses connection.
lt -p 8015 -h http://tunnel.shopro.dev:3000 -s $SUBDOMAIN > /dev/null 2> /dev/null && break;
done
Dit voorbeeld is dus voor Sulu, maar voor Sylius kun je gewoon 8015 op de één-na-laatste regel vervangen door 8010. Zorg ook even dat je sulu-$(whoami) vervangt door sylius-$(whoami).
Hatseflats! Je hebt een tunnel gegraven.