blob: fe14a364ed4eb335fe4046e129ca50600e901d01 [file] [log] [blame]
# For detailed information about docker-compose visit https://docs.docker.com/compose/
# To start all docker containers required to execute the tests locally run:
# docker-compose up
version: '2.2'
services:
amazoneventbridge:
image: localstack/localstack:0.10.6
environment:
- "SERVICES=events"
- "DEBUG=true"
ports:
- "4587:4587"
amazonsns:
image: pafortin/goaws
ports:
- "4100:4100"
volumes:
- ./sns/src/test/travis/:/conf/
amqp:
image: rabbitmq:3
ports:
- "5672:5672"
cassandra:
image: cassandra:4.0
ports:
- "9042:9042"
couchbase:
image: couchbase:community-5.1.1
ports:
- "8091-8094:8091-8094"
- "11210:11210"
couchbase_prep:
image: couchbase:community-5.1.1
links:
- "couchbase"
entrypoint: ""
command: >
bash -c "
echo 'waiting until couchbase is up'
until `curl --output /dev/null --silent --head --fail http://couchbase:8091`; do
printf '.'
sleep 2
done
couchbase-cli cluster-init -c couchbase \
--cluster-username Administrator --cluster-password password \
--cluster-ramsize 300 \
--cluster-index-ramsize 256 \
--services data,index,query,fts
couchbase-cli bucket-create -c couchbase \
-u Administrator -p password \
--bucket akka \
--bucket-type couchbase \
--bucket-ramsize 100 \
--bucket-replica 1 \
--wait
couchbase-cli bucket-create -c couchbase \
-u Administrator -p password \
--bucket akkaquery \
--bucket-type couchbase \
--bucket-ramsize 100 \
--bucket-replica 1 \
--wait
sleep 2 # just wait a tiny bit more after creating the bucket
echo 'CREATE PRIMARY INDEX ON akkaquery USING GSI;' | \
cbq -c Administrator:password -e http://couchbase:8093
"
elasticmq:
image: softwaremill/elasticmq-native:1.3.4
ports:
- "9324:9324"
dynamodb:
image: deangiberson/aws-dynamodb-local
ports:
- "8001:8000"
elasticsearch6:
image: docker.elastic.co/elasticsearch/elasticsearch:6.8.23
ports:
- "9201:9200"
environment:
- "discovery.type=single-node"
elasticsearch7:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0
ports:
- "9202:9200"
environment:
- "discovery.type=single-node"
opensearch1:
image: opensearchproject/opensearch:1.3.1
ports:
- "9203:9200"
environment:
- "discovery.type=single-node"
- "DISABLE_SECURITY_PLUGIN=true"
ftp:
image: stilliard/pure-ftpd:latest
ports:
- "21000:21"
- "30000-30009:30000-30009"
volumes:
- ./ftp/tmp/home:/home/username/
- ./ftp/src/test/resources/ftpd/:/etc/ssl/private/
environment:
PUBLICHOST: "localhost"
FTP_USER_NAME: username
FTP_USER_PASS: userpass
FTP_USER_HOME: /home/username
# https://docs.docker.com/compose/environment-variables/
FTP_USER_UID: ${FTP_USER_UID:-2000}
FTP_USER_GID: ${FTP_USER_GID:-2000}
ADDED_FLAGS: "--tls=1"
geode:
container_name: geode
image: apachegeode/geode:1.15.1
hostname: geode
mem_limit: 2g
expose:
- "10334"
- "1099"
- "7575"
- "40404"
ports:
- "1099:1099"
- "10334:10334"
- "7575:7575"
- "7070:7070"
- "40404:40404"
- "8081:8080"
volumes:
- ./geode/scripts/:/scripts/
command: /scripts/geode.sh
gcloud-pubsub-emulator:
image: google/cloud-sdk:311.0.0
ports:
- "8538:8538"
command: gcloud beta emulators pubsub start --project=pekko-connectors --host-port=0.0.0.0:8538
gcloud-pubsub-emulator_prep:
image: martynas/gcloud-pubsub-client
links:
- "gcloud-pubsub-emulator"
environment:
- "PUBSUB_PROJECT_ID=pekko-connectors"
- "PUBSUB_EMULATOR_HOST=gcloud-pubsub-emulator:8538"
entrypoint: ""
command: >
bash -c "
python publisher.py pekko-connectors create simpleTopic &&
python subscriber.py pekko-connectors create simpleTopic simpleSubscription
python publisher.py pekko-connectors create testTopic &&
python subscriber.py pekko-connectors create testTopic testSubscription
"
hbase:
image: harisekhon/hbase:1.4
hostname: hbase
ports:
- 2181:2181
- 16000:16000
- 16010:16010
- 16201:16201
- 16301:16301
ibmmq:
image: ibmcom/mq:latest
environment:
LICENSE: accept
MQ_QMGR_NAME: QM1
ports:
- "1414:1414"
- "9443:9443"
ironauth:
image: iron/auth
ports:
- "8090:8090"
ironmq:
image: iron/mq
links:
- "ironauth:ironauth"
environment:
- "AUTH_HOST=http://ironauth:8090"
ports:
- "8080:8080"
kudu-master-data:
image: kunickiaj/kudu
volumes:
- /var/lib/kudu/master
kudu-tserver-data:
image: kunickiaj/kudu
volumes:
- kudu-tserver-data:/var/lib/kudu/tserver
kudu-master:
image: kunickiaj/kudu
ports:
- 7051:7051
volumes:
- kudu-tserver-data:/var/lib/kudu/tserver
command: master
kudu-tserver:
image: kunickiaj/kudu
environment:
- KUDU_MASTER=kudu-master
ports:
- 7050:7050
volumes:
- kudu-tserver-data:/var/lib/kudu/tserver
command: tserver
links:
- kudu-master
mongo:
image: mongo
ports:
- "27017:27017"
influxdb:
image: influxdb:1.8-alpine
ports:
- "8086:8086"
mqtt:
image: toke/mosquitto
ports:
- "1883:1883"
volumes:
- ./mqtt/src/test/travis:/mqtt/config/conf.d
orientdb:
image: orientdb:3.1.9
ports:
- "2424:2424"
environment:
- "ORIENTDB_ROOT_PASSWORD=root"
command: /orientdb/bin/server.sh -Dmemory.chunk.size=268435456
sftp:
image: atmoz/sftp
volumes:
- ./ftp/tmp/home:/home/username/upload
- ./ftp/src/test/resources/id_rsa.pub:/home/username/.ssh/keys/id_rsa.pub:ro
- ./ftp/src/test/resources/sftpd/ssh_host_ed25519_key:/tmp/ssh_host_ed25519_key
- ./ftp/src/test/resources/sftpd/ssh_host_rsa_key:/tmp/ssh_host_rsa_key
- ./ftp/src/test/resources/sftpd/init.sh:/etc/sftp.d/init.sh
ports:
- "2222:22"
command: username:userpass:${FTP_USER_UID:-2000}:${FTP_USER_GID:-2000}
squid:
network_mode: host # required for route back to localhost
image: ubuntu/squid
volumes:
- ./ftp/src/test/resources/squid.conf:/etc/squid/squid.conf
pravega:
image: pravega/pravega:0.10.2
ports:
- 9090:9090
- 12345:12345
command: standalone
volumes:
kudu-tserver-data: