This repository contains images for the TrueCommerce OneTime Middle Tier
Prior to running the container the application requires an Administrator Certificate from Foundry Platform. One way this can be obtained is by running the associated tool from the Foundry Security Tools. Follow the steps in the "Generate authentication certificate" and save the output.
This is an example of a full production deployment docker-compose file. Assumes RabbitMQ is provided and avaialble. Redis caching is recommended for a production environment.
version: '3.4'
services:
onetimecore:
image: truecommerce/tc.onetime.middletier:0.5
container_name: OneTime-Core
restart: unless-stopped
environment:
- ASPNETCORE_ENVIRONMENT=Production
- MiddleTier__CorsOriginAllowed=http://localhost:30000;${MT_HOST}:${MT_PORT}
- MiddleTier__Caching__Provider=${CACHE_PROVIDER}
- MiddleTier__Caching__Redis_Configuration__Connection=${REDIS_CONNECTION}
- MiddleTier__Caching__Redis_Configuration__InstanceName=${REDIS_INSTANCE}
- MiddleTier__Caching__Redis_Configuration__UseWithNHibernate=${USE_REDIS_NHIBERNATE}
- MiddleTier__Registration__AgentName=${AGENT_NAME}
- MiddleTier__Registration__UseHttps=${USE_HTTPS}
- MiddleTier__Registration__ProvidersHost=${PROVIDER_HOST}:${PROVIDER_PORT}
- MiddleTier__Registration__MiddleTierHost=${MT_HOST}:${MT_PORT}
- MiddleTier__Registration__SupportsAlerts=${SUPPORTS_ALERTS}
- MiddleTier__Registration__SupportsMetadata=${SUPPORTS_METADATA}
- MiddleTier__Registration__SupportsScheduledTasks=${SUPPORTS_SCHEDULED_TASKS}
- MiddleTier__Registration__RegisterGlobalTenant=${REGISTER_GLOBAL_TENANT}
- MiddleTier__Registration__MobileApplication__AlwaysDeploy=${ALWAYS_DEPLOY}
- MiddleTier__Registration__MobileApplication__PackagePath=${DEPLOY_PACKAGE_PATH}
- MiddleTier__InitializationCertificate=${INITIALISATION_CERT}
- Foundry__RabbitMQ__Host=${RABBIT_CONNECTION}
- Foundry__RabbitMQ__Username=${RABBIT_USER}
- Foundry__RabbitMQ__Password=${RABBIT_PASSWORD}
- Foundry__Security__RootUrl=${SECURITY_MICROSERVICE_HOST}
- ApiCredentialSettings__Request=${REQUEST_HEADER}
- ApiCredentialSettings__Url=${REQUEST_URL}
- ApiCredentialSettings__UserName=${REQUEST_USER}
- ApiCredentialSettings__Password=${REQUEST_PASSWORD}
- ApiCredentialSettings__Token=${REQUEST_TOKEN}
- Logging__LogLevel__Default=Information
- Foundry__CoreOData__RootUrl=${COREODATA_HOST}
ports:
- ${MT_PORT}:80
links:
- ${REDIS_CONNECTION}
| Variable Name | Description | Example |
|---|---|---|
| IMAGE_VERSION | Version component of the tag | 1.0.200.0000 |
| INITIALIZATION_CERT | Initialization certificate generated by security tools | |
| COREODATA_HOST | Location of the Core OData (MSI) services | https://localhost:30000 |
| SECURITY_MICROSERVICE_HOST | Location of the Security Microservice | https://localhost:30100 |
| RABBIT_CONNECTION | Connection string for RabbitMQ instance used by Foundry | rabbitmq://localhost |
| RABBIT_USER | The username for the Foundry RabbitMQ connection | tc |
| RABBIT_PASSWORD | The password for the Foundry RabbitMQ connection | tc |
| RABBIT_TIMEOUT | A default timeout for RabbitMQ messages | 0.00:00:15 |
| CACHE_PROVIDER | Mechanism to use for distributed caching. One of 'Redis' or 'InMemory' | Redis |
| REDIS_INSTANCE | Name of the instance used for Redis when CACHE_PROVIDER is Redis | OneTime-Cache |
| USE_REDIS_NHIBERNATE | 'true' if Redis should be used for 2nd level caching in NHibernate and 'false' otherwise | false |
| PROVIDER_HOST | External name or IP where provider microservice will be run | localhost |
| PROVIDER_PORT | External port used to load balance and proxy for provider microservice middle tier | 12755 |
| REQUEST_HEADER | The request header | REQUEST= |
| REQUEST_URL | The URL to send SSO requests to | |
| AGENT_NAME | The Foundry agent to deploy to | System Agent |
| USE_HTTPS | Use HTTPs to deploy | true |
| SUPPORTS_ALERTS | 'true' if the MT supports alerts | false |
| SUPPORTS_METADATA | 'true' if the MT supports metadata | true |
| SUPPORTS_SCHEDULED_TASKS | 'true' if the MT supports scheduled tasks | false |
| REGISTER_GLOBAL_TENANT | 'true' to deploy to the global tenant | true |
| ALWAYS_DEPLOY | 'true' to always attempt deployment on startup | true |
| DEPLOY_PACKAGE_PATH | The path in the image to the mobile UI | /Deploy/ModuleUi.a1pkg |
Content type
Image
Digest
Size
96.7 MB
Last updated
almost 5 years ago
docker pull truecommerce/tc.onetime.middletier