Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
152 lines (149 sloc) 3.95 KB
version: '2.4'
services:
portainer: # Manage Docker containers; on startup set 'password' as password
image: portainer/portainer:latest
ports:
- 9080:9000
command: -H unix:///var/run/docker.sock
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainerdata:/data
httpbin: # SUPER USEFUL for testing APIs
image: kennethreitz/httpbin:latest
mem_limit: 500m
ports:
- 2080:8080
minio:
image: minio/minio:latest
mem_limit: 500m
environment:
MINIO_ACCESS_KEY: "access_key"
MINIO_SECRET_KEY: "secret_key"
volumes:
- miniodata:/data
command: server /data
ports:
- 9000:9000
redis:
image: redis:4.0
mem_limit: 64m
volumes:
- redisdata:/data
command: redis-server --appendonly yes # ["redis-server", "--appendonly", "yes"]
ports:
- 6379:6379
rediscommander:
image: rediscommander/redis-commander:latest
mem_limit: 500m
environment:
- "REDIS_HOSTS=local:redis:6379"
ports:
- 6378:8081
postgres:
image: postgres:10
mem_limit: 1000m
environment:
POSTGRES_PASSWORD: "postgres"
POSTGRES_USER: "postgres" # default value retained
POSTGRES_DB: "postgres" # default value retained
PGDATA: "/var/lib/postgresql/data/pgdata" # subdir within volume
POSTGRES_INITDB_WALDIR: "/var/lib/postgresql/data/waldata" # subdir within volume
ports:
- 5432:5432
volumes:
- pgdata:/var/lib/postgresql/data
pgadmin4:
image: dpage/pgadmin4:3
mem_limit: 800m
environment:
PGADMIN_DEFAULT_EMAIL: "dev@example.com"
PGADMIN_DEFAULT_PASSWORD: "postgres"
PGADMIN_SERVER_NAME: "pgadmin4"
ports:
- 5431:80
volumes:
- pgadmindata:/var/lib/pgadmin
depends_on:
- postgres
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.4.0
mem_limit: 2000m
ports:
- 9200:9200
environment:
cluster.name: "dcdbs"
bootstrap.memory_lock: "true"
ES_JAVA_OPTS: "-Xms1g -Xmx1g"
MAX_MAP_COUNT: "262144"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata:/usr/share/elasticsearch/data
kibana:
image: docker.elastic.co/kibana/kibana-oss:6.4.0
mem_limit: 1000m
ports:
- 5601:5601
environment:
SERVER_NAME: "kibana"
ELASTICSEARCH_URL: "http://elasticsearch:9200"
volumes:
- kibanadata:/usr/share/kibana/config
depends_on:
- elasticsearch
mongo:
image: mongo:4.0
mem_limit: 2000m
ports:
- 27017:27017
environment:
MONGO_INITDB_ROOT_USERNAME: "mongo"
MONGO_INITDB_ROOT_PASSWORD: "mongo"
volumes:
- mongodata:/data/db
mongo-express:
image: mongo-express:latest
mem_limit: 500m
ports:
- 7017:8081
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: "mongo"
ME_CONFIG_MONGODB_ADMINPASSWORD: "mongo"
ME_CONFIG_MONGODB_AUTH_USERNAME: "mongo"
ME_CONFIG_MONGODB_AUTH_PASSWORD: "mongo"
ME_CONFIG_MONGODB_SERVER: "mongo"
depends_on:
- mongo
keycloak:
image: jboss/keycloak:latest
mem_limit: 2000m
ports:
- 7080:8080
environment:
# We configure initial admin user and password here via envars
# Another way to do is run this command on a running container:
# docker-compose exec keycloak keycloak/bin/add-user-keycloak.sh -u <USERNAME> -p <PASSWORD>
# Then restarting the container:
# docker-compose restart keycloak
KEYCLOAK_USER: "user"
KEYCLOAK_PASSWORD: "password"
# Set the database to connect to
DB_VENDOR: "postgres"
DB_ADDR: "postgres"
DB_PORT: "5432"
## make sure you create this db in postgres container
## the first time keycloak would just crash.
DB_DATABASE: "keycloak"
DB_USER: "postgres"
DB_PASSWORD: "postgres"
volumes:
portainerdata:
miniodata:
redisdata:
pgdata:
pgadmindata:
esdata:
kibanadata:
mongodata:
You can’t perform that action at this time.