{"id":19216920,"url":"https://github.com/devilbox/docker-ngrok","last_synced_at":"2025-09-04T12:35:05.783Z","repository":{"id":42039461,"uuid":"173978847","full_name":"devilbox/docker-ngrok","owner":"devilbox","description":null,"archived":false,"fork":false,"pushed_at":"2023-09-05T11:58:03.000Z","size":58,"stargazers_count":9,"open_issues_count":6,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-20T19:38:46.954Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devilbox.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-03-05T16:10:04.000Z","updated_at":"2024-08-24T09:57:47.000Z","dependencies_parsed_at":"2025-04-20T19:46:14.441Z","dependency_job_id":null,"html_url":"https://github.com/devilbox/docker-ngrok","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devilbox%2Fdocker-ngrok","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devilbox%2Fdocker-ngrok/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devilbox%2Fdocker-ngrok/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devilbox%2Fdocker-ngrok/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devilbox","download_url":"https://codeload.github.com/devilbox/docker-ngrok/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253843170,"owners_count":21972867,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T14:19:23.476Z","updated_at":"2025-05-12T23:41:47.957Z","avatar_url":"https://github.com/devilbox.png","language":"Shell","readme":"# Ngrok\n\n[![lint](https://github.com/devilbox/docker-ngrok/workflows/lint/badge.svg)](https://github.com/devilbox/docker-ngrok/actions?query=workflow%3Alint)\n[![build](https://github.com/devilbox/docker-ngrok/workflows/build/badge.svg)](https://github.com/devilbox/docker-ngrok/actions?query=workflow%3Abuild)\n[![nightly](https://github.com/devilbox/docker-ngrok/workflows/nightly/badge.svg)](https://github.com/devilbox/docker-ngrok/actions?query=workflow%3Anightly)\n\n[![Tag](https://img.shields.io/github/tag/devilbox/docker-ngrok.svg)](https://github.com/devilbox/docker-ngrok/releases)\n[![Gitter](https://badges.gitter.im/devilbox/Lobby.svg)](https://gitter.im/devilbox/Lobby?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n[![Discourse](https://img.shields.io/discourse/https/devilbox.discourse.group/status.svg?colorB=%234CB697)](https://devilbox.discourse.group)\n[![](https://images.microbadger.com/badges/version/devilbox/ngrok.svg)](https://microbadger.com/images/devilbox/ngrok \"ngrok\")\n[![](https://images.microbadger.com/badges/image/devilbox/ngrok.svg)](https://microbadger.com/images/devilbox/ngrok \"ngrok\")\n[![License](https://img.shields.io/badge/license-MIT-%233DA639.svg)](https://opensource.org/licenses/MIT)\n\n**Available Architectures:**  `amd64`, `i386`, `arm64`, `arm/v7`, `arm/v6`, `ppc64le`, `s390x`, `mips64le`\n\n| Docker Hub | Upstream Project |\n|------------|------------------|\n| \u003ca href=\"https://hub.docker.com/r/devilbox/ngrok\"\u003e\u003cimg height=\"82px\" src=\"http://dockeri.co/image/devilbox/ngrok\" /\u003e\u003c/a\u003e | \u003ca href=\"https://github.com/cytopia/devilbox\" \u003e\u003cimg height=\"82px\" src=\"https://raw.githubusercontent.com/devilbox/artwork/master/submissions_banner/cytopia/01/png/banner_256_trans.png\" /\u003e\u003c/a\u003e |\n\n## Available Docker tags\n\n| Docker Tag                       | Description                                                   |\n|----------------------------------|---------------------------------------------------------------|\n| `latest`                         | Latest Alpine image (default)                                 |\n| `alpine`                         | Latest Alpine image                                           |\n| `bookworm`                       | Latest Debian Bookworm image                                  |\n| `bullseye`                       | Latest Debian Bullseye image                                  |\n| `buster`                         | Latest Debian Buster image                                    |\n| `stretch`                        | Latest Debian Stretch image                                   |\n|                                  |                                                               |\n| `[0-9]\\.[0-9]+`                  | Git tagged Alpine image. E.g: `0.53`                          |\n| `alpine-[0-9]\\.[0-9]+`           | Git tagged Alpine image. E.g: `alpine-0.53`                   |\n| `bookworm-[0-9]\\.[0-9]+`         | Git tagged Debian Stretch image. E.g: `bookworm-0.53`         |\n| `bullseye-[0-9]\\.[0-9]+`         | Git tagged Debian Stretch image. E.g: `bullseye-0.53`         |\n| `buster-[0-9]\\.[0-9]+`           | Git tagged Debian Stretch image. E.g: `buster-0.53`           |\n| `stretch-[0-9]\\.[0-9]+`          | Git tagged Debian Stretch image. E.g: `stretch-0.53`          |\n|                                  |                                                               |\n| `release-[0-9]\\.[0-9]+`          | Git branch Alpine image. E.g: `release-0.53`                  |\n| `alpine-release-[0-9]\\.[0-9]+`   | Git branch Alpine image. E.g: `alpine-release-0.53`           |\n| `bookworm-release-[0-9]\\.[0-9]+` | Git branch Debian Stretch image. E.g: `bookworm-release-0.53` |\n| `bullseye-release-[0-9]\\.[0-9]+` | Git branch Debian Stretch image. E.g: `bullseye-release-0.53` |\n| `buster-release-[0-9]\\.[0-9]+`   | Git branch Debian Stretch image. E.g: `buster-release-0.53`   |\n| `stretch-release-[0-9]\\.[0-9]+`  | Git branch Debian Stretch image. E.g: `stretch-release-0.53`  |\n\n\n## Documentation\n\nIn case you seek help, go and visit the community pages.\n\n\u003ctable width=\"100%\" style=\"width:100%; display:table;\"\u003e\n \u003cthead\u003e\n  \u003ctr\u003e\n   \u003cth width=\"33%\" style=\"width:33%;\"\u003e\u003ch3\u003e\u003ca target=\"_blank\" href=\"https://devilbox.readthedocs.io\"\u003eDocumentation\u003c/a\u003e\u003c/h3\u003e\u003c/th\u003e\n   \u003cth width=\"33%\" style=\"width:33%;\"\u003e\u003ch3\u003e\u003ca target=\"_blank\" href=\"https://gitter.im/devilbox/Lobby\"\u003eChat\u003c/a\u003e\u003c/h3\u003e\u003c/th\u003e\n   \u003cth width=\"33%\" style=\"width:33%;\"\u003e\u003ch3\u003e\u003ca target=\"_blank\" href=\"https://devilbox.discourse.group\"\u003eForum\u003c/a\u003e\u003c/h3\u003e\u003c/th\u003e\n  \u003c/tr\u003e\n \u003c/thead\u003e\n \u003ctbody style=\"vertical-align: middle; text-align: center;\"\u003e\n  \u003ctr\u003e\n   \u003ctd\u003e\n    \u003ca target=\"_blank\" href=\"https://devilbox.readthedocs.io\"\u003e\n     \u003cimg title=\"Documentation\" name=\"Documentation\" src=\"https://raw.githubusercontent.com/cytopia/icons/master/400x400/readthedocs.png\" /\u003e\n    \u003c/a\u003e\n   \u003c/td\u003e\n   \u003ctd\u003e\n    \u003ca target=\"_blank\" href=\"https://gitter.im/devilbox/Lobby\"\u003e\n     \u003cimg title=\"Chat on Gitter\" name=\"Chat on Gitter\" src=\"https://raw.githubusercontent.com/cytopia/icons/master/400x400/gitter.png\" /\u003e\n    \u003c/a\u003e\n   \u003c/td\u003e\n   \u003ctd\u003e\n    \u003ca target=\"_blank\" href=\"https://devilbox.discourse.group\"\u003e\n     \u003cimg title=\"Devilbox Forums\" name=\"Forum\" src=\"https://raw.githubusercontent.com/cytopia/icons/master/400x400/discourse.png\" /\u003e\n    \u003c/a\u003e\n   \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n  \u003ctd\u003e\u003ca target=\"_blank\" href=\"https://devilbox.readthedocs.io\"\u003edevilbox.readthedocs.io\u003c/a\u003e\u003c/td\u003e\n  \u003ctd\u003e\u003ca target=\"_blank\" href=\"https://gitter.im/devilbox/Lobby\"\u003egitter.im/devilbox\u003c/a\u003e\u003c/td\u003e\n  \u003ctd\u003e\u003ca target=\"_blank\" href=\"https://devilbox.discourse.group\"\u003edevilbox.discourse.group\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n \u003c/tbody\u003e\n\u003c/table\u003e\n\n\n## Build\n\n```bash\n# Build the Docker image locally\nmake build\n\n# Rebuild the Docker image locally without cache\nmake rebuild\n\n# Test the Docker image after building\nmake test\n```\n\n\n## Environment variables\n\n| Variable     | Default value | Description |\n|--------------|---------------|-------------|\n| HTTP_TUNNELS | `` | HTTP tunnel definition in the form of:\u003cbr/\u003e\u003ccode\u003e\u0026lt;domain.tld\u0026gt;:\u0026lt;addr\u0026gt;:\u0026lt;port\u0026gt;\u003c/code\u003e\u003cbr/\u003eor\u003cbr/\u003e\u003ccode\u003e\u0026lt;domain1.tld\u0026gt;:\u0026lt;addr\u0026gt;:\u0026lt;port\u0026gt;,\u0026lt;domain2.tld\u0026gt;:\u0026lt;addr\u0026gt;:\u0026lt;port\u0026gt;\u003c/code\u003e\u003cbr/\u003e\u003cbr/\u003e\u003cstrong\u003eNote:\u003c/strong\u003e If you don't use a license you can only specify a single tunnel. If your license is pro enough, you can have multiple comma separated tunnels |\n| REGION       | `` | Choose the region where the ngrok client will connect to host its tunnels. (Defaults to `us`) |.\n| AUTHTOKEN    | `` | Your Ngrok license authtoken. You don't need to have a license for a single tunnel and can ommit this variable. Nevertheless they also have a free license that might be worth checking out |.\n\n### HTTP_TUNNELS\n\n* `\u003cdomain.tld\u003e` is the virtual hostname that you want to serve via Ngrok\n* `\u003caddr\u003e` is the hostname or IP address of the web server\n* `\u003cport\u003e` is the port on which the web server is reachable via HTTP\n\n```bash\n# Make vhost \"project1.loc\" which runs on localhost:8080 available\nHTTP_TUNNELS=project1.loc:localhost:8080\n\n# Make two vhosts available which run on host apache:80\nHTTP_TUNNELS=project1.loc:apache:80,project2.loc:apache:80\n\n# Make two vhosts from two different web server addresses available\nHTTP_TUNNELS=project1.loc:localhost:8080,project2.loc:apache:80\n```\n\n### AUTHTOKEN\n\nThis token is provided to you after registering https://ngrok.com\n\n\n## Exposed ports\n\n| Container Port | Description |\n|----------------|-------------|\n| 4040           | Ngrok management console. Use it to obtain created outside DNS names after startup |\n\n\n## Example\n\nForward webserver running on host os on ip `192.168.0.2` on port `8080` to the internet via Ngrok.\n\n```bash\ndocker run -d --rm --name devilbox-ngrok \\\n  -e HTTP_TUNNELS=\"project1.loc:192.168.0.2:8080\" \\\n  -p \"4040:4040\" \\\n  devilbox/ngrok\n```\n\nOpen up your browser at http://127.0.0.1:4040 to see your DNS names.\n\n\n## License\n\n**[MIT License](LICENSE)**\n\nCopyright (c) 2019 [cytopia](https://github.com/cytopia)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevilbox%2Fdocker-ngrok","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevilbox%2Fdocker-ngrok","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevilbox%2Fdocker-ngrok/lists"}