{"id":27948523,"url":"https://github.com/expressgateway/docker-express-gateway","last_synced_at":"2025-05-07T14:59:16.650Z","repository":{"id":41810881,"uuid":"143227475","full_name":"ExpressGateway/docker-express-gateway","owner":"ExpressGateway","description":"Express Gateway official Docker Images","archived":false,"fork":false,"pushed_at":"2022-04-28T15:53:53.000Z","size":58,"stargazers_count":6,"open_issues_count":2,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-07T14:59:10.948Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ExpressGateway.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-02T01:43:31.000Z","updated_at":"2024-02-12T11:57:36.000Z","dependencies_parsed_at":"2022-08-11T18:10:43.111Z","dependency_job_id":null,"html_url":"https://github.com/ExpressGateway/docker-express-gateway","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExpressGateway%2Fdocker-express-gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExpressGateway%2Fdocker-express-gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExpressGateway%2Fdocker-express-gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExpressGateway%2Fdocker-express-gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ExpressGateway","download_url":"https://codeload.github.com/ExpressGateway/docker-express-gateway/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252902606,"owners_count":21822258,"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":"2025-05-07T14:59:15.937Z","updated_at":"2025-05-07T14:59:16.624Z","avatar_url":"https://github.com/ExpressGateway.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# About this Repo\n\nThis is the Git repo of the Docker [official image](https://docs.docker.com/docker-hub/official_repos/) for [Express Gateway](https://express-gateway.io/).\n\n## Release Process\n\nThe release process is documented on our [Wiki Page](https://github.com/ExpressGateway/express-gateway/wiki/Express-Gateway-Release-Process)\n\n## Using this docker image\n\nObtain a local copy of the image:\n```\ndocker pull express-gateway\n```\n\n### Basic usage\n\nRun a container from the image:\n```\ndocker run -d -p 88:8080 express-gateway\n```\nThis starts a container and binds port 88 on your host to port 8080 in the container.  You can now send requests to port 88.  However, you have not configured any applications, routes, etc yet.  You just started the default gateway as configured inside the docker image.\n\n### Keep configuration changes across container starts\n\nIn the container, the gateway configuration files are stored in /var/lib/eg/ .  If you make changes to these they will be lost when the container is removed or restarted.  To keep your configuration changes across container restarts, you must save them outside of the container. \n\n#### Using plain docker containers (e.g. not docker services)\n\nStart the container so that it mounts a volume to a host directory where the configuration files will exist.  First, you should create a directory on your host where you want the configuration files to be stored.  For example:\n```\nmkdir -p /apps\n```\n\nNext, copy the default configuration from the docker image to the host directory using something similar to\n```\ndocker run -d --name default-eg express-gateway\ndocker cp default-eg:var/lib/eg /apps\n```\nNow, you should have the default configuration files in the /apps/eg directory on your host.  After modifying these as you wish, start the docker container so that it uses these files for the gateway configuration.  The configuration files saved in /apps/eg/ will persist across container restarts.  Thanks to the express-gateway hot reload feature you can change several of these configuration settings and the gateway will pick them up without restarting the docker container.\n```\ndocker run -d --name express-gateway -p 88:8080 -v /apps/eg:/var/lib/eg express-gateway\n```\n\nIf you want to use the CLI to change the gateway configuration, start the docker container so it binds an admin port on the host to the admin port the gateway is using in the container.  For example:\n````\ndocker run -d --name express-gateway -p 88:8080 -p 9876:9876 -v /apps/eg:/var/lib/eg express-gateway\n````\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexpressgateway%2Fdocker-express-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fexpressgateway%2Fdocker-express-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexpressgateway%2Fdocker-express-gateway/lists"}