Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mattddowney/compose-postgrest
Postgres, PostgREST, and Swagger UI conveniently wrapped up with docker-compose
https://github.com/mattddowney/compose-postgrest
api docker openapi postgrest
Last synced: 3 months ago
JSON representation
Postgres, PostgREST, and Swagger UI conveniently wrapped up with docker-compose
- Host: GitHub
- URL: https://github.com/mattddowney/compose-postgrest
- Owner: mattddowney
- Created: 2017-05-05T20:27:34.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-03-16T21:10:36.000Z (over 2 years ago)
- Last Synced: 2023-03-11T15:24:51.479Z (over 1 year ago)
- Topics: api, docker, openapi, postgrest
- Language: PLpgSQL
- Homepage:
- Size: 180 KB
- Stars: 92
- Watchers: 6
- Forks: 36
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- jimsghstars - mattddowney/compose-postgrest - Postgres, PostgREST, and Swagger UI conveniently wrapped up with docker-compose (PLpgSQL)
README
compose-postgrest
=================[Postgres](https://www.postgresql.org/), [PostgREST](https://github.com/begriffs/postgrest), and [Swagger UI](https://github.com/swagger-api/swagger-ui) conveniently wrapped up with docker-compose.
Place SQL into the `initdb` folder, get REST!
Includes [world sample database](https://www.postgresql.org/ftp/projects/pgFoundry/dbsamples/world/).Contains a simple front-end demo application.
Architecture
------------![Deployment Diagram](diagrams/deployment-diagram.png)
Usage
-----**Start the containers**
`docker-compose up -d`
**Tearing down the containers**
`docker-compose down --remove-orphans -v`
**Demo Application**
Located at [http://localhost](http://localhost)
**Postgrest**
Located at [http://localhost:3000](http://localhost:3000)
Try things like:
* [http://localhost:3000/city](http://localhost:3000/test)
* [http://localhost:3000/country](http://localhost:3000/country)
* [http://localhost:3000/countrylanguage](http://localhost:3000/countrylanguage)
* [http://localhost:3000/city?name=eq.Denver](http://localhost:3000/city?name=eq.Denver)
* [http://localhost:3000/city?population=gte.5000000](http://localhost:3000/city?population=gte.5000000)
* [http://localhost:3000/city?district=like.*Island](http://localhost:3000/city?district=like.*Island)
* [http://localhost:3000/city?district=like.*Island&population=lt.1000&select=id,name](http://localhost:3000/city?district=like.*Island&population=lt.1000&select=id,name)**Swagger UI**
Located at [http://localhost:8080](http://localhost:8080)