J'ai essayé d'exécuter ngrok en arrière-plan avec
./ngrok -subdomain test -config=ngrok.cfg 80 &
le processus est en cours
[1] 3866
et le sous-domaine ne fonctionne pas.
Ça marche avec
./ngrok -subdomain test -config=ngrok.cfg 80
Est-ce que quelqu'un d'entre vous sait ce qui se passe ici?
comme expliqué ici
ngrok -log=stdout 80 > /dev/null &
Visitez http: // localhost: 4040/status sur votre ordinateur local, ou voyez-en plus ici: Voir l'URL aléatoire de ngrok lorsqu'elle est exécutée en arrière-plan .
comme décrit précédemment, vous pouvez exécuter ngrok en arrière-plan avec
./ngrok http 8080 > /dev/null &
ensuite, vous pouvez utiliser curl et, par exemple, jq
, un processeur JSON en ligne de commande.
export WEBHOOK_URL="$(curl http://localhost:4040/api/tunnels | jq ".tunnels[0].public_url")"
votre URL sera accessible à partir de la variable env $ WEBHOOK_URL et vous pourrez l'utiliser n'importe où.
Dans Ngrok 2, -log n'est ni nécessaire ni disponible (bien que vous puissiez contrôler les niveaux de journalisation dans le fichier de configuration). ngrok > /dev/null &
est suffisant.
Si vous souhaitez utiliser plusieurs fenêtres du shell ou exécuter un service en arrière-plan à partir d'une seule session SSH, le moyen le plus simple consiste à utiliser screen .
Pour installer sur Centos Linux, utilisez yum install screen
Puis démarrez comme toute autre commande screen
, après cette commande de type ngrok
dans un paramètre.
Le détachement est la partie la plus puissante de l'écran. L'écran vous permet de vous détacher d'une fenêtre et de vous rattacher ultérieurement.
Si votre connexion réseau échoue, l'écran détache automatiquement votre session! Vous pouvez vous détacher de la fenêtre à l'aide de «Ctrl-a» «D».
Cela vous ramènera dans votre shell.
Toutes les fenêtres d'écran sont toujours présentes et vous pouvez les reconnecter ultérieurement à l'aide de screen -r
.
Exécutez ./ngrok http 5000 > /dev/null &
puis curl localhost:4040/status
pour vérifier l'URL
Exécutez ./ngrok http (numéro de port) & Ceci exécute le tunnel ngrok en tant que processus d'arrière-plan . Ngrok ouvre généralement une fenêtre indiquant l'adresse URL assignée, mais comme nous utilisons la commande Nohup, ce n'est pas visible.
Ainsi, lancez curl http://127.0.0.1:4040/api/tunnels , Ainsi que l’URL attribuée par ngrok.
Utilisez le script ci-dessous pour ngrok2
Nohup ngrok http 3000 &
Cela va écrire les journaux dans le fichier Nohup.out
curl http://127.0.0.1:4040/api/tunnels
et vous verrez l'information de public_url.
Voici un exemple. https://i.stack.imgur.com/V0905.png
essayez de fonctionner en tant que service. et le vérifier sur le site Web de ngrok . J'ai essayé la version 2.2.8 de ngrok sur un Raspberry Pi 3.
ngrok.service as
[Unit]
Description=Share local port(s) with ngrok
After=syslog.target network.target
[Service]
Type=simple
Restart=always
RestartSec=1min
StandardOutput=null
StandardError=null
ExecStart=/usr/local/sbin/ngrok start --log /var/log/ngrok.log --config /etc/ngrok.yml --all
ExecStop=/usr/bin/killall ngrok
[Install]
WantedBy=multi-user.target
fichier de configuration: ngrok.yml Authtoken:
tunnels:
<your Tunel Name >:
proto: http
addr: 80
Vous pouvez utiliser screen pour cela. Voici un exemple de comment je l'utilise:
screen -d -m ~ /./ ngrok http test.cc:8080
Nohup /usr/local/bin/ngrok --config /etc/ngrok.yml http 8080 &
Si vous créez un lien avec un compte ngrok, vous pouvez afficher l'URL publique sur le site ngrok, sans avoir à curl l'URL locale URL publique https://dashboard.ngrok.com/status