• Stars
    star
    114
  • Rank 308,031 (Top 7 %)
  • Language
  • Created over 5 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Collection of popular docker-compose files for a quick access

docker-compose collection

Contents

Database

Aerospike

services:
  db-aerospike:
    image: aerospike/aerospike-server:4.5.2.2
    ports:
      - "3000:3000"

Clickhouse

services:
  db-clickhouse:
    image: yandex/clickhouse-server
    ports:
      - "8123:8123"
      - "9000:9000"
      - "9009:9009"

MariaDB

services:
  db-mariadb:
    image: mariadb
    restart: unless-stopped
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: example
      MYSQL_USER: example
      MYSQL_PASSWORD: example
      MYSQL_ALLOW_EMPTY_PASSWORD: 'no'
      MYSQL_RANDOM_ROOT_PASSWORD: 'no'
    volumes:
      - mariadb:/var/lib/mysql
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    restart: unless-stopped
    ports:
      - "8080:80"
    environment:
      PMA_HOST: db-mariadb
      MYSQL_USER: example
      MYSQL_PASSWORD: example

volumes:
  mariadb:

Mongo

services:
  db-mongo:
    image: mongo
    restart: unless-stopped
    ports:
      - "27017:27017"
    environment:
      MONGO_INITDB_DATABASE: db
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: example
    volumes:
      - mongo:/data/db

  db-mongo-express:
    image: mongo-express
    restart: unless-stopped
    ports:
      - "8081:8081"
    environment:
      ME_CONFIG_MONGODB_SERVER: db-mongo
      ME_CONFIG_MONGODB_ADMINUSERNAME: root
      ME_CONFIG_MONGODB_ADMINPASSWORD: example

volumes:
  mongo:

MySQL

services:
  db:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: unless-stopped
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE:
      MYSQL_USER:
      MYSQL_PASSWORD:
      MYSQL_ALLOW_EMPTY_PASSWORD:
      MYSQL_RANDOM_ROOT_PASSWORD:
      MYSQL_ONETIME_PASSWORD:
    volumes:
      - mysql:/var/lib/mysql
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    restart: unless-stopped
    ports:
      - "8080:80"
    environment:
      PMA_HOST: db

volumes:
  mysql:

Postgres

services:
  db-postgres:
    image: postgres:11.3
    container_name: postgres_container
    restart: unless-stopped
    tty: true
    ports:
      - "5432:5432"
    environment:
      - PGHOST=localhost
      - PGDATABASE=postgres
      - PGUSER=postgres
      - POSTGRES_PASSWORD=
    volumes:
      - my-db-postgres:/var/lib/postgresql/data

volumes:
  my-db-postgres:

Logs

Messaging

Kafka

services:
  zk:
    image: confluentinc/cp-zookeeper
    ports:
      - "2181:2181"
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181

  kafka:
    image: confluentinc/cp-kafka
    ports:
      - "9092:9092"
    depends_on:
      - zk
    environment:
      KAFKA_ADVERTISED_LISTENERS: "PLAINTEXT://kafka:9092"
      KAFKA_ZOOKEEPER_CONNECT: zk:2181
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

NATS

services:
  nats:
    image: nats:1.4.1
    ports:
      - "4222:4222"

RabbitMQ

services:
  rabbitmq:
    image: rabbitmq:3.7-management-alpine
    restart: unless-stopped
    ports:
      - "5672:5672" # queue connection
      - "15672:15672" # management UI
    environment:
      - RABBITMQ_DEFAULT_USER=
      - RABBITMQ_DEFAULT_PASS=
      - RABBITMQ_DEFAULT_VHOST=/
    volumes:
      - rabbitmq:/var/lib/rabbitmq
    hostname: rabbitmq

volumes:
  rabbitmq:

Metrics

Grafana

  grafana:
    container_name: grafana
    image: grafana/grafana:6.2.1
    ports:
      - "3000:3000"
    volumes:
      - grafanadata:/var/lib/grafana
    networks:
      - metrics_net
    restart: always

volumes:
  grafanadata: {}
networks:
  metrics_net:

Graphite

  graphite:
    image: nickstenning/graphite
    ports:
      - "80:80"
      - "2003:2003"

VictoriaMetrics

Just take it there https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/deployment/docker/docker-compose.yml

Proxy

Envoy

  proxy-envoy:
    build:
      context: .
      dockerfile: envoyproxy/envoy
    volumes:
      - ./envoy.yaml:/etc/envoy.yaml
    networks:
      - envoymesh
    expose:
      - "80"
      - "8001"
    ports:
      - "8000:80"
      - "8001:8001"

networks:
  envoymesh: {}

Nginx

services:
  web:
    image: nginx
    ports:
      - "8080:80"
    environment:
      - NGINX_HOST=foobar.com
      - NGINX_PORT=80
    volumes:
      - ./mysite.template:/etc/nginx/conf.d/mysite.template
    # command: [nginx-debug, '-g', 'daemon off;']

Services

Consul

  consul:
    image: consul
    command: "agent -dev -bind=0.0.0.0 -client=0.0.0.0 -server -ui -bootstrap -config-file=/config/consul.json -enable-script-checks"
    ports:
      - 8500:8500
    dns_search: .
    volumes:
      - ./consul.json:/config/consul.json

Zookeeper

services:
  zoo1:
    image: zookeeper
    restart: always
    hostname: zoo1
    ports:
      - 2181:2181
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
      ZOO_TICK_TIME: 2000
      ZOO_INIT_LIMIT: 5
      ZOO_SYNC_LIMIT: 2
      ZOO_MAX_CLIENT_CNXNS: 60
      ZOO_STANDALONE_ENABLED: true
      ZOO_AUTOPURGE_PURGEINTERVAL: 0
      ZOO_AUTOPURGE_SNAPRETAINCOUNT: 3

  zoo2:
    image: zookeeper
    restart: always
    hostname: zoo2
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888

  zoo3:
    image: zookeeper
    restart: always
    hostname: zoo3
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888

Storage

Memcached

services:
  memcached:
    image: memcached:1-alpine
    restart: unless-stopped
    ports:
      - "11211:11211"

Redis

services:
  redis:
    image: redis:5-alpine
    restart: unless-stopped
    ports:
      - "6379:6379"
    volumes:
      - redis:/data
    command: redis-server --appendonly yes

volumes:
  redis:

Minio

services:
  minio:
    image: minio/minio:RELEASE.2020-04-02T21-34-49Z
    restart: unless-stopped
    ports:
      - "9001:9000"
    volumes:
      - data1-1:/data1
      - data1-2:/data2
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server start
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

volumes:
  data1-1:
  data1-2:

Source: https://github.com/minio/minio/blob/master/docs/orchestration/docker-compose/docker-compose.yaml

Search

ELK

# Required on Linux:
# sudo sysctl -w vm.max_map_count=262144
# sudo sh -c 'echo "vm.max_map_count=262144" >> /etc/sysctl.conf'
# https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html

services:
  elk:
    image: sebp/elk:683
    restart: unless-stopped
    ports:
      - "5601:5601" # Elasticsearch
      - "9200:9200" # Kibana
    volumes:
      - es:/var/lib/elasticsearch

volumes:
  es:

More Repositories

1

go-advice

List of advice and tricks for Go ʕ◔ϖ◔ʔ
Go
2,784
star
2

awesome-manifesto

Utopian developer's manifesto
315
star
3

awesome-load-balancing

A curated list of awesome load balancers and proxies. Software, libraries, posts, talks.
122
star
4

sabotage

Collection of dirty hacks in Go
Go
65
star
5

interview-manifesto

34
star
6

awesome-oneliners

Copy-paste friendly Bash one liners
22
star
7

golds

Go data structures
Go
14
star
8

wabservar

Go
10
star
9

whatcango

Go
6
star
10

awesome-go-author

Collection of best practices, thoughts and practical advice for Go libraries authors and maintainers.
6
star
11

funf

Go playground, small snippets, experiments, fun.
Go
6
star
12

dsvreader

Go delimiter-separated values reader, ARCHIVED, see https://github.com/cristalhq/dsvreader
Go
5
star
13

talks

Talks
Go
5
star
14

scs

Go syscall sockets
Go
4
star
15

impguard

4
star
16

bc

Blockchain with websockets and BoltDB/BuntDB storages
Go
4
star
17

astp

ARCHIVED, SEE: https://github.com/go-toolsmith/astp Collection of Go AST predicates
Go
3
star
18

go-snippets

Code snippets of Go ʕ◔ϖ◔ʔ
3
star
19

benches

Me throwing my benchs, nothing else (╯°□°)╯︵ ┻━┻
Go
3
star
20

astify

CHAOTIC EVIL PRE-ALPHA WIP
Go
3
star
21

cristaloleg

Oleg Kovalov profile and website comments
3
star
22

slowio

Go
2
star
23

go-act

Abstract channel type
Go
2
star
24

algogems

Algorithms and data structures
C++
2
star
25

flache

Yet another cache
Go
2
star
26

caches

Go
2
star
27

regexpgen

Regexp generator
Go
2
star
28

go-awesome-talks

List of talks about the Go programming language
2
star
29

go-gen-syncmap

Go
2
star
30

fuzzqueens

How to fuzz wrong
Go
2
star
31

wsecho

Go
2
star
32

olegk

Oleg Kovalov Homepage
CSS
2
star
33

sudoku

Go
1
star
34

go-rafting

Go
1
star
35

as

Go
1
star
36

dotfiles

Shell
1
star
37

rand

Go
1
star
38

bigm

Go
1
star
39

cristaloleg.github.io

Web-site for https://cristaloleg.github.io
HTML
1
star
40

flearand

Go
1
star
41

shrtl

Go
1
star
42

wsps

Go
1
star
43

interval

Go interval arithmetic
Go
1
star
44

go-init

Initial git repo for Go
Makefile
1
star
45

blog

1
star
46

gql2yml

Convert your GraphQL schema to YAML and JSON
Go
1
star
47

public-bugs

Go
1
star
48

is

Go
1
star
49

goal

Go algorithms
Go
1
star
50

ease

easy serving
Dockerfile
1
star
51

projecteuler

Solved problems from projecteuler.net
Go
1
star
52

rxgo

Go
1
star
53

dockedocus

Prebuild Docusaurus
Dockerfile
1
star
54

gopds

Go persistent data structures
Go
1
star