naskio / awesome-docker-compose

Collection of awesome Docker Compose files.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Docker Compose Awesome

Collection of awesome Docker Compose files docker-compose.yml.

Summary

This collection can be used locally for development or in production (ready to be used with nginxproxy/nginx-proxy) or to find ready-to-use Docker Compose files.


Usage

Development mode

Prerequisites:

  • The shared network l_shared-network exists, use the command docker network create l_shared-network to create it.

To use a service from this collection in development mode:

  • Go to the service folder cd $SERVICE_NAME.
  • Configure the env variables in the .env file inside the service folder cp .env.example.local .env.
  • Then you can run docker-compose commands. In local mode we should always specify the -f flag to use the docker-compose.local.yml file:
    • docker-compose -f docker-compose.local.yml up -d to start the service.
    • docker-compose -f docker-compose.local.yml exec -it $SERVICE_NAME bash to access the service.
    • docker-compose -f docker-compose.local.yml down to stop the service.

You can use docker-compose-manager (local version) to run docker-compose commands easily.

Production mode

Prerequisites:

  • Usage of auto-reverse-proxy for reverse proxying and managing SSL/TLS certificates.
    • The global network auto-reverse-proxy-global-network exists.
    • The container nginx-proxy up and running.

To use a service from this collection in production mode:

  • Go to the service folder cd $SERVICE_NAME.
  • Configure the env variables in the .env file inside the service folder cp .env.example .env.
  • Then you can run docker-compose commands:
    • docker-compose up -d to start the service.
    • docker-compose exec -it $SERVICE_NAME bash to access the service.
    • docker-compose down to stop the service.

You can use docker-compose-manager to run docker-compose commands easily.


Available services

  • Adminer: (formerly phpMinAdmin) is a full-featured database management tool written in PHP.
  • adminMongo: web-based user interface for MongoDB.
  • Chronograf: UI for InfluxDB v1+.
  • ElasticSearch: full-text search and analytics engine.
  • frontail: web-based log file browser.
  • InfluxDB: v2+, Timeseries database with integrated UI.
  • MeiliSearch: a distributed search engine that is optimized for real-time search.
  • MongoDB: NoSQL database.
  • MySQL: SQL database.
  • PostGIS: Postgres database with GIS extensions.
  • Postgres: SQL database.
  • TimeScaleDB: Time Series Database based on Postgres.

Adding a new service

To add a new service to this collection, please read DEVELOPMENT SETUP and PRODUCTION SETUP files and get inspired from existing services.


Contributing

Pull requests are welcome. For any issue, please open an issue on GitHub.

See the contributing guide for more information.

License

MIT License

About

Collection of awesome Docker Compose files.

License:MIT License


Languages

Language:Shell 79.1%Language:Dockerfile 9.9%Language:JavaScript 8.1%Language:HTML 2.8%