ngrok command not found
MacosLocalhostTunnelNgrokMacos Problem Overview
I'm trying to install ngrok
(which I've been using for a while on Windows with no issues) on my 1 week old yosemite and these are the steps I've followed so far.
-
Downloaded ngrok from here https://ngrok.com/download.
-
Unziped the file and copied the Unix Executable File into application.
Now from what I understand I just need to open the terminal, move inside the application folder and write ngrok http 80
. The result of this is "command not found".
I've even signed up at the ngrok
website and run from terminal the command ./ngrok authtoken "blablabla"
and the result is "No such file or directory"
Can anyone tell me how to proceed to be able to activate the tunnel with ngrok
?
Macos Solutions
Solution 1 - Macos
Short answer: Put the executable file in /usr/local/bin
instead of applications. You should now be able to run commands like ngrok http 80
.
Long answer: When you type commands like ngrok
in the terminal, Macs (and other Unix OSs) look for these programs in the folders specified in your PATH
. The PATH
is a list of folders that's specified by each user. To check your path, open the terminal and type: echo $PATH
.
You'll see output that looks something like: /usr/local/bin:/usr/bin:/bin
. This is a :
separated list of folders.
So when you type ngrok
in the terminal, your Mac will look for this executable in the following folders: /usr/local/bin
, /usr/bin/
and /bin
.
Read this post if you are interested in learning about why you should prefer usr/local/bin
over other folders.
Solution 2 - Macos
With Homebrew already installed on your Mac, you can easily install ngrok from the terminal, using this command:
$ brew cask install ngrok
Then run it from the shell using this command:
$ ngrok http 8000
With this command, you're telling ngrok to basically create a tunnel to your localhost 8000 and assign an internet name host for it. And thats it. You should be good to go.
Solution 3 - Macos
-
Download the zip file.
-
Unzip it.
-
Open The terminal in the current location (inside unzip folder) where you unzip the file.
-
Execute the following command into the terminal :
sudo cp ngrok /usr/local/bin
Now your ngrok execuatable file is successfully copied to the /usr/local/bin directory. Now you are able to run the ngrok command in the terminal
Solution 4 - Macos
I have also faced this issue on my MacOS, I used these simple steps and it worked for me.
Just open the terminal and go to your project folder where you what to start ngrok and then unzip downloaded file.
$ unzip /path/to/ngrok.zip
After doing this you don't need to authenticate ngrok, just run this command:
./ngrok http 80
It should work now.
Solution 5 - Macos
This is how I got it to work..
For Mac
- If you downloaded via a download link, you need to add ngrok path to your .bash_profile or .bashrc whichever one you are using.
For Windows 10 bash:
- Download ngrok from https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-windows-amd64.zip
- Move executable file ngrok.exe to C:\Windows\system32\ngrok.exe
- Add Environment Variables via UI (search for "Edit the environment variables for your account" in the search bar next to windows logo => double click on Path under Users Variables for yourusername => Click New => add your path C:\Windows\system32\ngrok.exe => click OK.
- Restart your bash and you should be able to run "ngrok http 80" command.
Solution 6 - Macos
I had followed the instructions as per the ngrok download instructions:
So the file downloaded to ~/Downloads
But I still needed to move ngrok into my binaries folder, like so:
mv ~/Downloads/ngrok /usr/local/bin
Then running ngrok
in terminal works
Solution 7 - Macos
just download it , unzip it run
./ngrok http 80
Solution 8 - Macos
On Windows 10, for me
ngrok http 80
Behaves like this:
- works from Command Prompt (cmd.exe)
- does not work from Git Bash
- does not work from Windows PowerShell
To make available in git bash, you can add the following function to your .bashrc
file
function ngrok { cmd.exe /c "ngrok $1 $2 $3";}
Solution 9 - Macos
For Linux :https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
For Mac :https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-darwin-amd64.zip
For Windows:https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-windows-amd64.zip
unzip it
for linux and mac users move file to /usr/local/bin
and execute ngrok http 80
command in the terminal
I don't have any idea about windows
Solution 10 - Macos
run sudo npm install ngrok --g a very simple way to install
sudo because you are installing it globally
Solution 11 - Macos
add line in .zshrc
# vi .zshrc
alias ngrok="/usr/local/lib/node_modules/node/lib/node_modules/node/lib/node_modules/ngrok/bin/ngrok"
Solution 12 - Macos
For installation in Windows : Download and extract to any directory (lets say c drive)
-
Then double click on the extracted
ngrok.exe
file and you'll be able to see thecommand prompt
. -
And just type ngrok http 4040 // here I am exposing [port 4040]
Solution 13 - Macos
On Windows ngrok.cmd works well from Git Bash, not ngrok
Solution 14 - Macos
The only solution that worked for me was
yarn global add ngrok
yarn global add exp
with npm I was getting permission errors etc..
Solution 15 - Macos
In my case, I kept ignoring the instructions that very explicitly tell you to use a terminal on Mac OS, because it looked like it was unzipping correctly:
> On Linux or Mac OS X you can unzip ngrok from a terminal with the following command. On Windows, just double click ngrok.zip to extract it.
unzip /path/to/ngrok.zip
However, as soon as I tried running the above command in my terminal, it worked perfectly fine!
Solution 16 - Macos
Windows:
- Extract.
- Open folder
- Right click Windows Powershell.
- ngrock http 5000 {your post number instead of 5000}
- Make sure local server is running on another cmd too.
//Do not worry about auth step
Solution 17 - Macos
Ngrok can be installed with Yarn , then you can run by power Sheel. it's was the only way that worked for me in windows 10 . In the begin you need to install the Node : https://nodejs.org/en/. and the yarn: https://nodejs.org/en/.
Solution 18 - Macos
You can use Snap for downloading ngrok
. Follow the steps below:
-
Install
Snap
by following command:sudo apt install snapd
-
Install
Ngrok
by following command:sudo snap install ngrok
-
Now use
ngrok
command from any directory, like this:ngrok http 8080
Solution 19 - Macos
In case anyone else runs into this with git bash, after install, I was able go to get it to work by adding the path to the exe to my .bashrc file like:
$ export PATH=$PATH:"/c/<path to containing folder>/ngrok"
After saving and opening a new shell, running 'ngrok --help' was successful
Solution 20 - Macos
In shorts,ngrok should be in same directory in which you are running ngrok command.