2020-03-05 18:54:10 +00:00
# Awesome Compose [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)
![logo ](awesome-compose.jpg )
2020-03-11 12:20:49 +00:00
> A curated list of Docker Compose samples.
These samples provide a starting point for how to integrate different services using a Compose file and to manage their deployment with docker-compose.
2020-03-05 18:54:10 +00:00
2020-03-11 12:20:49 +00:00
## Getting started
2020-03-06 14:04:03 +00:00
2020-03-11 12:20:49 +00:00
These instructions will get you through the bootstrap phase of creating and
deploying samples of containerized applications with docker-compose.
2020-03-06 14:04:03 +00:00
### Prerequisites
2020-03-11 12:20:49 +00:00
* Make sure that you have Docker and docker-compose installed
* Windows or macOS:
[Install Docker Desktop ](https://www.docker.com/get-started )
* Linux: [Install Docker ](https://www.docker.com/get-started ) and then
[docker-compose ](https://github.com/docker/compose )
* Download some or all of the samples in the `samples` directory
2020-03-06 14:04:03 +00:00
### Running a sample
2020-03-11 12:20:49 +00:00
The root directory of each sample contains the docker-compose.yaml which
describes the configuration of service components. All samples can be run in
a local environment by going into the root directory of each one and executing:
```console
2020-03-06 14:04:03 +00:00
docker-compose up -d
```
2020-03-11 12:20:49 +00:00
Check the `README.md` of each sample to get more details on the structure and
what is the expected output.
2020-03-06 18:25:16 +00:00
To stop and remove the all containers of the sample application run:
2020-03-11 12:20:49 +00:00
```console
2020-03-06 14:04:03 +00:00
docker-compose down
```
2020-03-05 18:54:10 +00:00
## Contents
2020-03-11 12:20:49 +00:00
*Samples of Docker Compose applications with multiple integrated services:*
2020-03-16 16:30:22 +00:00
- [`ASP.NET / MS-SQL` ](aspnet-mssql ) -- sample ASP.NET core application
2020-03-11 12:20:49 +00:00
with MS SQL server database
2020-03-16 16:30:22 +00:00
- [`Go / NGINX / MySQL` ](nginx-golang-mysql ) -- sample Go application
2020-03-11 12:20:49 +00:00
with an Nginx proxy and a MySQL database
2020-03-16 16:30:22 +00:00
- [`Go / NGINX / PostgreSQL` ](nginx-golang-postgres ) -- sample Go
2020-03-11 12:20:49 +00:00
application with an Nginx proxy and a PostgreSQL database
2020-03-16 16:30:22 +00:00
- [`Java Spark / MySQL` ](sparkjava-mysql ) -- sample Java application and
2020-03-11 12:20:49 +00:00
a MySQL database
2020-03-16 16:30:22 +00:00
- [`NGINX / Flask / MongoDB` ](nginx-flask-mongo ) -- sample Python/Flask
2020-03-11 12:20:49 +00:00
application with Nginx proxy and a Mongo database
2020-03-16 16:30:22 +00:00
- [`NGINX / Flask / MySQL` ](nginx-flask-mysql ) -- sample Python/Flask
2020-03-11 12:20:49 +00:00
application with an Nginx proxy and a MySQL database
2020-03-16 16:30:22 +00:00
- [`NGINX / Go` ](nginx-golang ) -- sample Nginx proxy with a Go backend
- [`React / Spring / MySQL` ](react-java-mysql ) -- sample React
2020-03-11 12:20:49 +00:00
application with a Spring backend and a MySQL database
2020-03-16 16:30:22 +00:00
- [`React / Express / MySQL` ](react-express-mysql ) -- sample React
2020-03-11 12:20:49 +00:00
application with a NodeJS backend and a MySQL database
2020-03-16 16:30:22 +00:00
- [`Spring / PostgreSQL` ](spring-postgres ) -- sample Java application
2020-03-11 12:20:49 +00:00
with Spring framework and a Postgres database
2020-03-06 14:04:03 +00:00
*Single service samples:*
2020-03-16 16:30:22 +00:00
- [`Angular` ](angular )
- [`Spark` ](sparkjava )
- [`VueJS` ](vuejs )
2020-03-05 18:54:10 +00:00
2020-03-19 10:34:32 +00:00
*Basic setups for different plaforms (not production ready - useful for personal use)*
2020-03-18 20:00:33 +00:00
- [`Gitea / PostgreSQL` ](gitea-postgres )
2020-03-19 10:34:32 +00:00
- [`Nextcloud / PostgreSQL` ](nextcloud-postgres )
- [`Nextcloud / Redis/ MariaDB` ](nextcloud-redis-mariadb )
- [`Wordpress / MySQL` ](wordpress-mysql )
2020-03-18 16:55:14 +00:00
2020-03-05 18:54:10 +00:00
## Contribute
2020-03-11 12:20:49 +00:00
We welcome examples that help people understand how to use docker-compose for
common applications.