hello everyone!
Because I need to add some features to temporal, I cannot use docker img to build a production environment. I downloaded the server code from Releases · temporalio/temporal · GitHub. When I started the temporal server, I found that the database and schema were not automatically created. When I used temporal-sql-tool to build the database and schema, I found that there was no database. Configuration file.
I would like to ask you how to deal with it here?
tk
I feel very confused when dealing with it here, why not automatically initialize the database and the schema used according to yaml when the server is initialized.
You can use auto-setup docker image: Docker Hub
Following docker-compose files should work:
services:
cassandra:
image: cassandra:3.11.9
logging:
driver: none
ports:
- "9042:9042"
temporal:
image: temporaliotest/auto-setup
ports:
- "7233:7233"
- "7234:7234"
- "7235:7235"
- "7239:7239"
- "6933:6933"
- "6934:6934"
- "6935:6935"
- "6939:6939"
environment:
- "CASSANDRA_SEEDS=cassandra"
- "DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development.yaml"
depends_on:
- cassandra
or
version: "3.5"
services:
cassandra:
container_name: temporal-cassandra
image: cassandra:3.11.9
networks:
- temporal-network
ports:
- 9042:9042
temporal:
container_name: temporal
depends_on:
- cassandra
environment:
- CASSANDRA_SEEDS=cassandra
- DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development.yaml
image: temporalio/auto-setup:1.13.1
networks:
- temporal-network
ports:
- 7233:7233
volumes:
- ./dynamicconfig:/etc/temporal/config/dynamicconfig
temporal-admin-tools:
container_name: temporal-admin-tools
depends_on:
- temporal
environment:
- TEMPORAL_CLI_ADDRESS=temporal:7233
image: temporalio/admin-tools:1.13.1
networks:
- temporal-network
stdin_open: true
tty: true
temporal-web:
container_name: temporal-web
depends_on:
- temporal
environment:
- TEMPORAL_GRPC_ENDPOINT=temporal:7233
- TEMPORAL_PERMIT_WRITE_API=true
image: temporalio/web:1.13.0
networks:
- temporal-network
ports:
- 8088:8088
networks:
temporal-network:
driver: bridge
name: temporal-network
This brings up temporal-web too that you can after start access at localhost:8088
You can specify image version too, for example: image: temporalio/auto-setup:1.13.1
Then run
docker compose -f myDocker.yaml up
Temporal provides a number of docker compose files here.
thanks tihomir for your help.I saw that the docker-pose deployment is a development environment, but I want to deploy a production environment. I use the docker mirror auto-setup, but when I start the mirror, it shows that mysql cannot be connected. Have you ever encountered this situation? Is it because I am missing any environment variables?
Thank you very much brother. I followed what you said to use docker-compose to start docker successfully
I would like to ask, I want to deploy multiple servers, but I want them to share a mysql. Where should the host address be configured
Configuring two independent clusters on top of a single db is not supported.
They can however share one physical db server (host), each needing own keyspace/db.
See sample here