simplify docker-compose with spruce docker images (#39)

* simplify compose with spruce docker images

* cleanup unnecessary lines
This commit is contained in:
Jack Murdock
2021-01-05 13:15:10 -08:00
committed by GitHub
parent 96e7b4764f
commit e10ab4c61a
13 changed files with 87 additions and 967 deletions

View File

@@ -1,15 +0,0 @@
AWS_ACCESS_KEY_ID=accessKey AWS_SECRET_ACCESS_KEY=secretKey aws dynamodb --endpoint-url http://localhost:8000 create-table \
--table-name gifnoc \
--attribute-definitions \
AttributeName=bucket,AttributeType=S \
AttributeName=uuid,AttributeType=S \
--key-schema \
AttributeName=bucket,KeyType=HASH \
AttributeName=uuid,KeyType=RANGE \
--provisioned-throughput \
ReadCapacityUnits=10,WriteCapacityUnits=5 \
--stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \
--region us-east-2
AWS_ACCESS_KEY_ID=accessKey AWS_SECRET_ACCESS_KEY=secretKey aws dynamodb --endpoint-url http://localhost:8000 --region us-east-2 update-time-to-live --table-name gifnoc --time-to-live-specification "Enabled=true, AttributeName=expires"

View File

@@ -5,26 +5,44 @@ ROOT_DIR=$DIR/../../
pushd "$ROOT_DIR" || exit
echo "Building Simulator..."
docker build -t simulator:local "$ROOT_DIR/simulator"
popd || exit
echo "Building goaws..."
git clone git@github.com:kcajmagic/goaws.git /tmp/goaws
pushd /tmp/goaws || exit
git checkout adding_http_support
docker build -t goaws:local .
popd || exit
if [[ "$(docker images -q xmidt/simulator:latest 2> /dev/null)" == "" ]]; then
docker build -t xmidt/simulator:latest $ROOT_DIR/simulator
fi
popd
echo "Running services..."
CADUCEUS_VERSION=${CADUCEUS_VERSION:-0.4.2} \
ARGUS_VERSION=${ARGUS_VERSION:-0.3.9} \
TR1D1UM_VERSION=${TR1D1UM_VERSION:-0.5.3} \
SCYTALE_VERSION=${SCYTALE_VERSION:-0.1.5} \
PETASOS_VERSION=${PETASOS_VERSION:-0.1.4} \
TALARIA_VERSION=${TALARIA_VERSION:-0.5.9} \
THEMIS_VERSION=${THEMIS_VERSION:-0.4.3} \
SIMULATOR_VERSION=${SIMULATOR_VERSION:-local} \
docker-compose -f "$ROOT_DIR/deploy/docker-compose/docker-compose.yml" up -d "$@"
CADUCEUS_VERSION=${CADUCEUS_VERSION:-latest} \
ARGUS_VERSION=${ARGUS_VERSION:-latest} \
TR1D1UM_VERSION=${TR1D1UM_VERSION:-latest} \
SCYTALE_VERSION=${SCYTALE_VERSION:-latest} \
PETASOS_VERSION=${PETASOS_VERSION:-latest} \
TALARIA_VERSION=${TALARIA_VERSION:-latest} \
THEMIS_VERSION=${THEMIS_VERSION:-latest} \
SIMULATOR_VERSION=${SIMULATOR_VERSION:-latest} \
docker-compose -f $ROOT_DIR/deploy/docker-compose/docker-compose.yml up -d $@
if [[ $? -ne 0 ]]; then
exit 1
fi
bash config_dynamodb.sh
sleep 10
AWS_ACCESS_KEY_ID=accessKey AWS_SECRET_ACCESS_KEY=secretKey aws dynamodb --endpoint-url http://localhost:8000 describe-table --table-name gifnoc --region us-east-2 --output text > /dev/null 2> /dev/null
if [[ $? -ne 0 ]]; then
AWS_ACCESS_KEY_ID=accessKey AWS_SECRET_ACCESS_KEY=secretKey aws dynamodb --endpoint-url http://localhost:8000 create-table \
--table-name gifnoc \
--attribute-definitions \
AttributeName=bucket,AttributeType=S \
AttributeName=id,AttributeType=S \
--key-schema \
AttributeName=bucket,KeyType=HASH \
AttributeName=id,KeyType=RANGE \
--provisioned-throughput \
ReadCapacityUnits=10,WriteCapacityUnits=5 \
--stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \
--region us-east-2 \
--output text
AWS_ACCESS_KEY_ID=accessKey AWS_SECRET_ACCESS_KEY=secretKey aws dynamodb \
--endpoint-url http://localhost:8000 --region us-east-2 update-time-to-live \
--table-name gifnoc --time-to-live-specification "Enabled=true, AttributeName=expires" \
--output text
fi

View File

@@ -1,165 +0,0 @@
---
prometheus:
defaultNamespace: xmidt
defaultSubsystem: argus
constLabels:
development: "true"
log:
file: stdout
level: DEBUG
health:
disableLogging: false
custom:
server: development
servers:
primary:
address: :6600
disableHTTPKeepAlives: true
header:
X-Midt-Server:
- argus
X-Midt-Version:
- development
metrics:
address: :6601
disableHTTPKeepAlives: true
header:
X-Midt-Server:
- argus
X-Midt-Version:
- development
health:
address: :6602
disableHTTPKeepAlives: true
header:
X-Midt-Server:
- argus
X-Midt-Version:
- development
#yugabyte:
# # hosts is and array of address and port used to connect to the cluster.
# hosts:
# - "localhost:9042"
# # database is the name of the database being connected to.
# database: "argus"
# # opTimeout is the timeout for database calls after argus is connected.
# # If the opTimeout is set to 0, it defaults to 10s.
# # (Optional) defaults to 10s
# opTimeout: 100ms
# # username is the username to use when connecting to the database.
# # (Optional)
# username: "cassandra"
#
# # password is the password to use when connecting to the database.
# # (Optional)
# password: "cassandra"
#
# # SSLRootCert is the root cert to use when connecting to the database.
# # The SSLKey and SSLCert must also be provided in order to connect securely.
# # (Optional)
# #sslRootCert: "/etc/argus/ca.crt"
#
# # SSLKey is the SSL key to use when connecting to the database. The
# # SSLRootCert and SSLCert must also be provided in order to connect securely.
# # (Optional)
# #sslKey: "/etc/argus/node.0.0.0.0.key"
#
# # SSLCert is the SSL cert to use when connecting to the database. The SSLKey
# # and SSLRootCert must also be provided in order to connect securely.
# # (Optional)
# #sslCert: "/etc/argus/node.0.0.0.0.crt"
#
# # If you want to verify the hostname and server cert (like a wildcard for cass cluster) then you should turn this on
# # This option is basically the inverse of InSecureSkipVerify
# # See InSecureSkipVerify in http://golang.org/pkg/crypto/tls/ for more info
# # (Optional) defaults to false
# #enableHostVerification: false
# dyanmo is the configuration block to communicate with dynamoDB.
dynamo:
# endpoint is used to set a custom aws endpoint.
# (Optional)
endpoint: http://dynamodb:8000
# table is the name of the table that is already configured with bucket and id as the key.
table: "gifnoc"
# region is where request should go to.
region: "us-east-2"
# maxRetires is the maximum times the application will retry the request to the db.
# (Optional) default: 3
maxRetries: 3
# accessKey is the AWS accessKey to access dynamodb.
accessKey: "accessKey"
# secretKey is the AWS secretKey to go with the accessKey to access dynamodb.
secretKey: "secretKey"
# request is a config section related to operation authorization
# and request validation.
request:
authorization:
# adminToken serves as a master key which allows performing operations on any
# item regardless of their ownership status.
adminToken: "Hzu1WpIe7S8G"
validation:
# maxTTL specifies the cap for the TTL of items when values are specified.
maxTTL: "24h"
##############################################################################
# Authorization Credentials
##############################################################################
# authHeader is a list of Basic Auth credentials intended to be used for local testing purposes
# WARNING! Be sure to remove this from your production config
authHeader: ["dXNlcjpwYXNz"]
# jwtValidator provides Bearer auth configuration
jwtValidator:
keys:
Factory:
uri: "http://themis:6500/keys/local"
purpose: 0
updateInterval: 24h
# capabilityCheck provides the details needed for checking an incoming JWT's
# capabilities. If the type of check isn't provided, no checking is done. The
# type can be "monitor" or "enforce". If it is empty or a different value, no
# checking is done. If "monitor" is provided, the capabilities are checked but
# the request isn't rejected when there isn't a valid capability for the
# request. Instead, a message is logged. When "enforce" is provided, a request
# that doesn't have the needed capability is rejected.
#
# The capability is expected to have the format:
#
# {prefix}{endpoint}:{method}
#
# The prefix can be a regular expression. If it's empty, no capability check
# is done. The endpoint is a regular expression that should match the endpoint
# the request was sent to. The method is usually the method of the request, such as
# GET. The accept all method is a catchall string that indicates the capability
# is approved for all methods.
# (Optional)
#capabilityCheck:
# # type provides the mode for capability checking.
# type: "monitor"
# # prefix provides the regex to match the capability before the endpoint.
# prefix: "xmidt"
# # acceptAllMethod provides a way to have a capability that allows all
# # methods for a specific endpoint.
# acceptAllMethod: "all"
# # endpointBuckets provides regular expressions to use against the request
# # endpoint in order to group requests for a metric label.
# endpointBuckets:
# - "store\\b"
# - "store/.*\\b"

View File

@@ -1,84 +0,0 @@
---
primary:
address: ":6000"
health:
address: ":6001"
options:
- "PayloadsOverZero"
- "PayloadsOverHundred"
- "PayloadsOverThousand"
- "PayloadsOverTenThousand"
pprof:
address: ":6002"
metric:
address: ":6003"
metricsOptions:
namespace: "xmidt"
subsystem: "caduceus"
log:
file: "stdout"
level: "DEBUG"
json: true
env: test
fqdn: caduceus
scheme: http
numWorkerThreads: 10
jobQueueSize: 10
sender:
numWorkersPerSender: 5000
queueSizePerSender: 100000
cutOffPeriod: 10s
linger: 180s
clientTimeout: 60s
deliveryRetries: 1
deliveryInterval: 10ms
responseHeaderTimeout: 10s
profilerFrequency: 15
profilerDuration: 15
profilerQueueSize: 100
totalIncomingPayloadSizeBuckets:
- 100
- 1000
- 10000
perSourceIncomingPayloadSizeBuckets:
- 100
- 1000
- 10000
authHeader: ["dXNlcjpwYXNz"]
webhook:
argus:
bucket: webhooks
address: http://argus:6600
pullInterval: 5s
adminToken: Hzu1WpIe7S8G
auth:
Basic: Basic dXNlcjpwYXNz
service:
defaultScheme: http
consul:
client:
address: "consul0:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
vnodeCount: 211
registrations:
-
id: "caduceus"
name: "caduceus"
tags:
- "stage=dev"
- "flavor=docker"
address: "http://caduceus"
scheme: "http"
port: 6000
checks:
-
checkID: "caduceus:http"
http: "http://caduceus:6001/health"
interval: "30s"
deregisterCriticalServiceAfter: "70s"

View File

@@ -1,58 +0,0 @@
---
fqdn: petasos
env: test
scheme: http
primary:
address: ":6400"
health:
address: ":6401"
options:
- "PayloadsOverZero"
- "PayloadsOverHundred"
- "PayloadsOverThousand"
- "PayloadsOverTenThousand"
pprof:
address: ":6402"
metric:
address: ":6403"
metricsOptions:
namespace: "xmidt"
subsystem: "petasos"
control:
address: ":6404"
log:
file: "stdout"
level: "debug"
json: true
service:
defaultScheme: http
consul:
client:
address: "consul0:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
watches:
-
service: "talaria"
passingOnly: true
vnodeCount: 211
redundancy:
dc1:
defaultScheme: http
consul:
client:
address: "consul1:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
watches:
-
service: "talaria"
passingOnly: true
vnodeCount: 211

View File

@@ -59,7 +59,7 @@ scrape_configs:
# scheme defaults to 'http'.
static_configs:
- targets: ['talaria-0:6204', 'talaria-1:6214', 'talaria-2:6224']
- targets: ['talaria-0:6204', 'talaria-1:6204', 'talaria-2:6204']
- job_name: 'tr1d1um'
# metrics_path defaults to '/metrics'
@@ -74,10 +74,10 @@ scrape_configs:
static_configs:
- targets: ['argus:6601']
- job_name: 'themis'
static_configs:
- targets: ['themis:6502']
- targets: ['themis:6503']
- job_name: 'consul'
metrics_path: "/v1/agent/metrics"

View File

@@ -1,81 +0,0 @@
---
fqdn: scytale
env: test
scheme: http
primary:
address: ":6300"
health:
address: ":6301"
options:
- "PayloadsOverZero"
- "PayloadsOverHundred"
- "PayloadsOverThousand"
- "PayloadsOverTenThousand"
pprof:
address: ":6302"
metric:
address: ":6303"
metricsOptions:
namespace: "xmidt"
subsystem: "scytale"
log:
file: "stdout"
level: "DEBUG"
json: true
fanout:
endpoints: [ "http://petasos:6400/api/v2/device/send" ]
authorization: dXNlcjpwYXNz
fanoutTimeout: "5s"
clientTimeout: "5s"
concurrency: 10
service:
consul:
client:
address: "consul0:8500"
scheme: "http"
disableGenerateID: true
vnodeCount: 211
watches:
-
service: "talaria"
allDatacenters: true
tags:
- "dev"
- "docker"
passingOnly: true
registrations:
-
id: "scytale"
name: "scytale"
tags:
- "stage=dev"
- "flavor=docker"
address: "http://scytale"
scheme: "http"
port: 6200
checks:
-
checkID: "talaria-0:http"
http: "http://scytale:6301/health"
interval: "30s"
deregisterCriticalServiceAfter: "70s"
aws:
accessKey: "supbro"
secretKey: "nahbro"
env: local-dev
sns:
awsEndpoint: http://goaws:4100
region: "us-east-1"
topicArn: arn:aws:sns:us-east-1:000000000000:xmidt-local-caduceus
urlPath: "/api/v2/aws/sns"
waitForDns: 0
authHeader: ["dXNlcjpwYXNz"]
start:
duration: 1
apiPath: http://caduceus:6000/hooks
authHeader: dXNlcjpwYXNz

View File

@@ -1,122 +0,0 @@
---
fqdn: talaria
env: test
scheme: http
primary:
address: ":6200"
health:
address: ":6201"
pprof:
address: ":6202"
control:
address: ":6203"
metric:
address: ":6204"
metricsOptions:
namespace: "xmidt"
subsystem: "talaria"
log:
file: "stdout"
level: "debug"
json: true
device:
manager:
wrpSourceCheck:
type: enforce
upgrader:
handshakeTimeout: "10s"
maxDevices: 2000
deviceMessageQueueSize: 100
pingPeriod: "45s"
idlePeriod: "135s"
requestTimeout: "15s"
rehasher:
services:
- talaria
outbound:
method: "POST"
eventEndpoints:
default: http://caduceus:6000/api/v3/notify
requestTimeout: "125s"
defaultScheme: "http"
allowedSchemes:
- "http"
- "https"
outboundQueueSize: 1000
workerPoolSize: 100
transport:
maxIdleConns: 0
maxIdleConnsPerHost: 100
idleConnTimeout: "120s"
clientTimeout: "160s"
authKey: dXNlcjpwYXNz
inbound:
authKey: dXNlcjpwYXNz
eventMap:
default: http://caduceus:6000/api/v3/notify
jwtValidator:
keys:
Factory:
uri: "http://themis:6500/keys/local"
purpose: 0
updateInterval: 24h
deviceAccessCheck:
type: enforce
checks:
-
name: PartnerID
deviceCredentialPath: partner-id
op: contains
wrpCredentialPath: PartnerIDs
inversed: true
-
name: Trusted Device
deviceCredentialPath: trust
op: "gt"
inputValue: 999
service:
defaultScheme: http
consul:
client:
address: "consul0:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
vnodeCount: 211
watches:
-
service: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
-
service: "caduceus"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
registrations:
-
id: "talaria-0"
name: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
address: "http://talaria-0"
scheme: "http"
port: 6200
checks:
-
checkID: "talaria-0:http"
http: "http://talaria-0:6201/health"
interval: "30s"
deregisterCriticalServiceAfter: "70s"

View File

@@ -1,123 +0,0 @@
---
fqdn: talaria
env: test
scheme: http
primary:
address: ":6210"
health:
address: ":6211"
pprof:
address: ":6212"
control:
address: ":6213"
metric:
address: ":6214"
metricsOptions:
namespace: "xmidt"
subsystem: "talaria"
log:
file: "stdout"
level: "debug"
json: true
device:
manager:
wrpSourceCheck:
type: enforce
upgrader:
handshakeTimeout: "10s"
maxDevices: 2000
deviceMessageQueueSize: 100
pingPeriod: "45s"
idlePeriod: "135s"
requestTimeout: "15s"
rehasher:
services:
- talaria
outbound:
method: "POST"
eventEndpoints:
default: http://caduceus:6000/api/v3/notify
requestTimeout: "125s"
defaultScheme: "http"
allowedSchemes:
- "http"
- "https"
outboundQueueSize: 1000
workerPoolSize: 100
transport:
maxIdleConns: 0
maxIdleConnsPerHost: 100
idleConnTimeout: "120s"
clientTimeout: "160s"
authKey: dXNlcjpwYXNz
inbound:
authKey: dXNlcjpwYXNz
eventMap:
default: http://caduceus:6000/api/v3/notify
jwtValidator:
keys:
Factory:
uri: "http://themis:6500/keys/local"
purpose: 0
updateInterval: 24h
deviceAccessCheck:
type: enforce
checks:
-
name: PartnerID
deviceCredentialPath: partner-id
op: contains
wrpCredentialPath: PartnerIDs
inversed: true
-
name: Trusted Device
deviceCredentialPath: trust
op: "gt"
inputValue: 999
service:
defaultScheme: http
consul:
client:
address: "consul0:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
vnodeCount: 211
watches:
-
service: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
-
service: "caduceus"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
registrations:
-
id: "talaria-1"
name: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
address: "http://talaria-1"
scheme: "http"
port: 6210
checks:
-
checkID: "talaria-1:http"
http: "http://talaria-1:6211/health"
interval: "30s"
deregisterCriticalServiceAfter: "70s"

View File

@@ -1,123 +0,0 @@
---
fqdn: talaria
env: test
scheme: http
primary:
address: ":6220"
health:
address: ":6221"
pprof:
address: ":6222"
control:
address: ":6223"
metric:
address: ":6224"
metricsOptions:
namespace: "xmidt"
subsystem: "talaria"
log:
file: "stdout"
level: "debug"
json: false
device:
manager:
wrpSourceCheck:
type: enforce
upgrader:
handshakeTimeout: "10s"
maxDevices: 2000
deviceMessageQueueSize: 100
pingPeriod: "45s"
idlePeriod: "135s"
requestTimeout: "15s"
rehasher:
services:
- talaria
outbound:
method: "POST"
eventEndpoints:
default: http://caduceus:6000/api/v3/notify
requestTimeout: "125s"
defaultScheme: "http"
allowedSchemes:
- "http"
- "https"
outboundQueueSize: 1000
workerPoolSize: 100
transport:
maxIdleConns: 0
maxIdleConnsPerHost: 100
idleConnTimeout: "120s"
clientTimeout: "160s"
authKey: dXNlcjpwYXNz
inbound:
authKey: dXNlcjpwYXNz
eventMap:
default: http://caduceus:6000/api/v3/notify
jwtValidator:
keys:
Factory:
uri: "http://themis:6500/keys/local"
purpose: 0
updateInterval: 24h
deviceAccessCheck:
type: enforce
checks:
-
name: PartnerID
deviceCredentialPath: partner-id
op: contains
wrpCredentialPath: PartnerIDs
inversed: true
-
name: Trusted Device
deviceCredentialPath: trust
op: "gt"
inputValue: 999
service:
defaultScheme: http
consul:
client:
address: "consul1:8500"
scheme: "http"
waitTime: "30s"
disableGenerateID: true
vnodeCount: 211
watches:
-
service: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
-
service: "caduceus"
tags:
- "stage=dev"
- "flavor=docker"
passingOnly: true
registrations:
-
id: "talaria-2"
name: "talaria"
tags:
- "stage=dev"
- "flavor=docker"
address: "http://talaria-2"
scheme: "http"
port: 6220
checks:
-
checkID: "talaria-2:http"
http: "http://talaria-2:6221/health"
interval: "30s"
deregisterCriticalServiceAfter: "70s"

View File

@@ -1,53 +0,0 @@
---
servers:
key:
address: :6500
issuer:
address: :6501
metrics:
address: :6502
health:
address: :6503
health:
disableLogging: false
custom:
server: "themis"
prometheus:
defaultNamespace: xmidt
defaultSubsystem: themis
token:
alg: RS256
nonce: true
notBeforeDelta: -15s
duration: 2h
claims:
iss:
value: "themis"
trust:
value: 1000
capabilities:
value:
- xmidt:issuer:test:.*:all
sub:
value: client:supplied
partnerID:
claim: partner-id
header: X-Midt-Partner-ID
parameter: pid
default: comcast
key:
kid: local
type: rsa
bits: 2048
log:
file: "stdout"
level: "DEBUG"

View File

@@ -1,54 +0,0 @@
---
fqdn: tr1d1um
env: test
scheme: http
hooksScheme: http
primary:
address: ":6100"
health:
address: ":6101"
options:
- "PayloadsOverZero"
- "PayloadsOverHundred"
- "PayloadsOverThousand"
- "PayloadsOverTenThousand"
readTimeout: "15s"
idleTimeout: "15s"
pprof:
address: ":6102"
readTimeout: "15s"
idleTimeout: "15s"
metric:
address: ":6103"
metricsOptions:
namespace: "webpa"
subsystem: "tr1d1um"
readTimeout: "15s"
idleTimeout: "15s"
log:
file: "stdout"
level: "INFO"
json: false
reducedLoggingResponseCodes: [200, 504]
webhook:
argus:
bucket: webhooks
address: http://argus:6600
pullInterval: 5s
adminToken: Hzu1WpIe7S8G
auth:
Basic: Basic dXNlcjpwYXNz
authHeader: ["dXNlcjpwYXNz"]
targetURL: http://scytale:6300
WRPSource: "dns:tr1d1um.example.net"
supportedServices:
- "config"
clientTimeout: "135s"
respWaitTimeout: "129s"
netDialerTimeout: "5s"
requestRetryInterval: "2s"
requestMaxRetries: 2

View File

@@ -1,109 +1,102 @@
version: '3.4'
version: '3.8'
services:
caduceus:
image: xmidt/caduceus:${CADUCEUS_VERSION}
ports:
- 6000:6000
- 6001:6001
- 6002:6002
- 6003:6003
- "6000-6003:6000-6003"
environment:
- CONSUL_HOST=consul0:8500
- ARGUS_HOST=http://argus:6600
depends_on:
- argus
volumes:
- ./docFiles/caduceus.yaml:/etc/caduceus/caduceus.yaml
networks:
- xmidt
tr1d1um:
image: xmidt/tr1d1um:${TR1D1UM_VERSION}
environment:
- CONSUL_HOST=consul0:8500
- ARGUS_HOST=http://argus:6600
ports:
- 6100:6100
- 6101:6101
- 6102:6102
- "6100-6103:6100-6103"
depends_on:
- argus
- scytale
volumes:
- ./docFiles/tr1d1um.yaml:/etc/tr1d1um/tr1d1um.yaml
networks:
- xmidt
# Mark Talaria Services
talaria-0: &talaria
image: xmidt/talaria:${TALARIA_VERSION}
environment:
- CONSUL_HOST=consul0:8500
ports:
- 6200:6200
- 6201:6201
- 6202:6202
- 6203:6203
- 6204:6204
- "6200-6204:6200-6204"
depends_on:
- consul0
- themis
volumes:
- ./docFiles/talaria-0.yaml:/etc/talaria/talaria.yaml
networks:
- xmidt
talaria-1:
<<: *talaria
environment:
- CONSUL_HOST=consul0:8500
ports:
- 6210:6210
- 6211:6211
- 6212:6212
- 6213:6213
- 6214:6214
volumes:
- ./docFiles/talaria-1.yaml:/etc/talaria/talaria.yaml
- "6210-6214:6200-6204"
talaria-2:
<<: *talaria
environment:
- CONSUL_HOST=consul1:8500
ports:
- 6220:6220
- 6221:6221
- 6222:6222
- 6223:6223
- 6224:6224
volumes:
- ./docFiles/talaria-2.yaml:/etc/talaria/talaria.yaml
- "6220-6224:6200-6204"
scytale:
image: xmidt/scytale:${SCYTALE_VERSION}
environment:
- CONSUL_HOST=consul0:8500
ports:
- 6300:6300
- 6301:6301
- 6302:6302
- 6303:6303
- "6300-6303:6300-6303"
depends_on:
- petasos
volumes:
- ./docFiles/scytale.yaml:/etc/scytale/scytale.yaml
networks:
- xmidt
# Mark petasos Services
petasos: &petasos
image: xmidt/petasos:${PETASOS_VERSION}
environment:
- CONSUL_HOST=consul0:8500
ports:
- 6400:6400
- 6401:6401
- 6402:6402
- 6403:6403
- 6404:6404
- "6400-6403:6400-6403"
depends_on:
- consul0
volumes:
- ./docFiles/petasos.yaml:/etc/petasos/petasos.yaml
networks:
- xmidt
themis:
image: xmidt/themis:${THEMIS_VERSION}
environment:
- CONSUL_HOST=consul0:8500
ports:
- 6500:6500
- 6501:6501
- 6502:6502
- 6503:6503
volumes:
- ./docFiles/themis.yaml:/themis.yaml
- "6500-6504:6500-6504"
networks:
- xmidt
argus:
image: xmidt/argus:${ARGUS_VERSION}
environment:
- "AWS_ENDPOINT=http://dynamodb:8000"
ports:
- "6600-6603:6600-6603"
depends_on:
- dynamodb
networks:
- xmidt
dynamodb:
image: amazon/dynamodb-local
hostname: dynamodb
ports:
- "8000:8000"
networks:
- xmidt
@@ -123,7 +116,7 @@ services:
# Mark rdkb-simulator Services
simulator: &simulator
image: simulator:${SIMULATOR_VERSION}
image: xmidt/simulator:${SIMULATOR_VERSION}
depends_on:
- talaria-0
- talaria-1
@@ -164,19 +157,6 @@ services:
volumes:
- ./docFiles/consul-1.json:/consul.json
command: "agent -server -bootstrap-expect 1 -ui -client 0.0.0.0 -config-file consul.json"
argus:
image: xmidt/argus:${ARGUS_VERSION}
ports:
- 6600:6600
- 6601:6601
- 6602:6602
depends_on:
- dynamodb
volumes:
- ./docFiles/argus.yaml:/etc/argus/argus.yaml
networks:
- xmidt
dynamodb:
image: amazon/dynamodb-local