express-gateway
Estimated reading time: 3 minutesThe Official Docker Image of Express Gateway, an API Gateway for APIs and Microservices
GitHub repo: https://github.com/ExpressGateway/express-gateway
Library reference
This content is imported from the official Docker Library docs, and is provided by the original uploader. You can view the Docker Hub page for this image at https://hub.docker.com/images/express-gateway
Supported tags and respective Dockerfile
links
Quick reference
-
Where to get help:
the Docker Community Forums, the Docker Community Slack, or Stack Overflow -
Where to file issues:
https://github.com/ExpressGateway/express-gateway/issues -
Maintained by:
the Express Gateway Team -
Supported architectures: (more info)
amd64
,arm64v8
,i386
,ppc64le
,s390x
-
Published image artifact details:
repo-info repo’srepos/express-gateway/
directory (history)
(image metadata, transfer size, etc) -
Image updates:
official-images PRs with labellibrary/express-gateway
official-images repo’slibrary/express-gateway
file (history) -
Source of this description:
docs repo’sexpress-gateway/
directory (history) -
Supported Docker versions:
the latest release (down to 1.6 on a best-effort basis)
What is Express-Gateway?
Express Gateway is an API Gateway that sits at the heart of any microservices architecture, regardless of what language or platform you’re using. Express Gateway secures your microservices and exposes them through APIs using Node.js, ExpressJS and Express middleware. Developing microservices, orchestrating and managing them now can be done insanely fast all on one seamless platform without having to introduce additional infrastructure.
Express-Gateway’s documentation can be found at https://express-gateway.io/docs.
Main Features
- Built Entirely on Express and Express Middleware
- Dynamic Centralized Config
- API Consumer and Credentials Management
- Plugins and Plugin Framework
- Distributed Data Store
- CLI
- Admin API
How to use this image
Unless you’re using identity features (such as users
, applications
and credentials
), Express-Gateway does not require any data storage.
If so, skip directly to the point 2; else, please keep going with this guide.
1. Link Express-Gateway to a Redis container
Start Redis
Start a Redis container by executing:
$ docker run -d --name express-gateway-data-store \
-p 6379:6379 \
redis:alpine
2. Start the Express-Gateway instance
Once the Redis instance has been started (if required), we can start the Express-Gateway instance link it to the Redis container.
$ docker run -d --name express-gateway \
--link eg-database:eg-database \
-v /my/own/datadir:/var/lib/eg \
-p 8080:8080 \
-p 9876:9876 \
express-gateway
Note: You might want to expose other ports to the host in case you’re serving your APIs through HTTPS.
Note: You need to mount a volume with configuration files and volumes in order to make Express-Gateway start correctly.
You can now read the docs at express-gateway.io/docs to learn more about Express-Gateway and configure it accordingly to your needs.
Install plugin
You can install custom plugins to the current Express Gateway image just creating a new Dockerfile
, use express-gateway
as base image and then install the required plugins as global yarn packages
FROM express-gateway
RUN yarn global add express-gateway-plugin-name
License
View license information for the software contained in this image.
As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
Some additional license information which was able to be auto-detected might be found in the repo-info
repository’s express-gateway/
directory.
As for any pre-built image usage, it is the image user’s responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.