ThingWorx Flow > 安装和配置 > 使用 ThingWorx Flow Docker > 构建并运行 ThingWorx Flow Docker 镜像
构建并运行 ThingWorx Flow Docker 镜像
构建 ThingWorx Flow Docker 镜像 
1. 启动 Docker 引擎。
2. ThingWorx Flow 9.0.17、9.1.12、9.2.8、9.3.3 中,于 ThingWorx-Platform-Flow-Dockerfiles\dockerfiles\rabbitmq\definitions.json 内使用用户名和密码添加 nameuserpassword,以用于 RabbitMQ 连接。
{
"users": [
{
"name": "<rabbitMQ username",
"password": "<RabbitMQ password>",
"tags": "administrator"
}
],
"vhosts": [
{
"name": "symphony"
}
],
"permissions": [
{
"user": "<RabbitMQ username>",
"vhost": "symphony",
"configure": ".*",
"write": ".*",
"read": ".*"
}
],
"parameters": [],
"policies": [],
"queues": [],
"exchanges": [],
"bindings": []
}
3. 浏览至 \ThingWorx-Flow-Dockerfiles-x-x-x\ThingWorx-Platform-Flow-Dockerfiles\dockerfiles 并运行 ./makeImages.sh 命令。
构建 ThingWorx Flow 9.0.17 Docker 镜像后 
构建完镜像后,在以下文件中添加用户名和密码。
文件
参数
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-mssql-and-flow-mssql.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-postgres.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-azure.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RABBITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
MSSQL_POSTGRES_PASSWORD
TWX_DATABSE_USERNAME
TWX_DATABSE_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
POSTGRES_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/security-common/keys.json
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/security-common/keys.json
MODEL_DB.connection.password
QUEUE.ADAPTERS.AMQP.CONFIG.credentials
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-h2-and-flow-postgres.yml
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
THINGWORX_INITIAL_ADMIN_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/docker-compose-twx-posgres-ha-and-flow-postgres.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
HAPROXY_STAT_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
ZK_SSL_TRUSTSTORE_PSWORD
IGNITE_KEYSTORE_PASSWORD
POSTGRES_USER
POSTGRES_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_TRUSTSTORE_PASSWORD
ZK_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_KEYSTORE_PASSWORD
POSTGRES_SSL_KEYSTORE_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/dockerfiles/rabbitmq/Dockerfile
RABBITMQ_USER
RABBITMQ_PASSWORD
构建 ThingWorx Flow 9.1.12 和更高版本的 Docker 镜像后 
构建完镜像后,在以下文件中添加用户名和密码。
文件
参数
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-mssql-and-flow-mssql.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-postgres.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-azure.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RABBITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
MSSQL_POSTGRES_PASSWORD
TWX_DATABSE_USERNAME
TWX_DATABSE_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
POSTGRES_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/security-common/keys.json
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/security-common/keys.json
MODEL_DB.connection.password
QUEUE.ADAPTERS.AMQP.CONFIG.credentials
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-h2-and-flow-postgres.yml
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
THINGWORX_INITIAL_ADMIN_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/docker-compose-twx-posgres-ha-and-flow-postgres.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
HAPROXY_STAT_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
ZK_SSL_TRUSTSTORE_PSWORD
IGNITE_KEYSTORE_PASSWORD
POSTGRES_USER
POSTGRES_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_TRUSTSTORE_PASSWORD
ZK_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_KEYSTORE_PASSWORD
POSTGRES_SSL_KEYSTORE_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/dockerfiles/rabbitmq/Dockerfile
RABBITMQ_USER
RABBITMQ_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/dockerfiles/db-seed/Dockerfile
POSTGRES_USER
POSTGRES_PASSWORD
构建 ThingWorx Flow 9.2.8 和更高版本的 Docker 镜像后 
构建完镜像后,在以下文件中添加用户名和密码。
文件
参数
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-mssql-and-flow-mssql.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-postgres.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-azure.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RABBITMQ_USERNAME
RABBITMQ_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
MSSQL_POSTGRES_PASSWORD
TWX_DATABSE_USERNAME
TWX_DATABSE_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
POSTGRES_PASSWORD
MSSQL_SA_PASSWORD
INFLUXDB_DATABASE_USERNAME
INFLUXDB_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-mqtt.override.yml
MOSQUITTO_USERNAME
MOSQUITTO_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/security-common/keys.json
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/security-common/keys.json
MODEL_DB.connection.password
QUEUE.ADAPTERS.AMQP.CONFIG.credentials
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-h2-and-flow-postgres.yml
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
THINGWORX_INITIAL_ADMIN_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/docker-compose-twx-posgres-ha-and-flow-postgres.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
HAPROXY_STAT_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
ZK_SSL_TRUSTSTORE_PSWORD
IGNITE_KEYSTORE_PASSWORD
POSTGRES_USER
POSTGRES_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_TRUSTSTORE_PASSWORD
ZK_SSL_KEYSTORE_PASSWORD
CXSERVER_SSL_KEYSTORE_PASSWORD
POSTGRES_SSL_KEYSTORE_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/dockerfiles/rabbitmq/Dockerfile
RABBITMQ_USER
RABBITMQ_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/dockerfiles/db-seed/Dockerfile
POSTGRES_USER
POSTGRES_PASSWORD
构建 ThingWorx Flow 9.3.3 和更高版本的 Docker 镜像后 
构建完镜像后,在以下文件中添加用户名和密码。
文件
参数
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-mssql-and-flow-mssql.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-postgres.yml
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-postgres-and-flow-azure.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RABBITMQ_USERNAME
RABBITMQ_PASSWORD
THINGWORX_INITIAL_METRICS_USER_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/.env
MODEL_DB_CONNECTION_PASSWORD
QUEUE_ADAPTERS_AMQP_CONFIG_CREDENTIALS
MSSQL_POSTGRES_PASSWORD
TWX_DATABSE_USERNAME
TWX_DATABSE_PASSWORD
PLATFORM_SSL_KEYSTORE_PASSWORD
POSTGRES_PASSWORD
MSSQL_SA_PASSWORD
INFLUXDB_DATABASE_USERNAME
INFLUXDB_DATABASE_PASSWORD
KEYSTORE_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-mqtt.override.yml
MOSQUITTO_USERNAME
MOSQUITTO_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/security-common/keys.json
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/security-common/keys.json
MODEL_DB.connection.password
QUEUE.ADAPTERS.AMQP.CONFIG.credentials
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single/docker-compose-twx-http-h2-and-flow-postgres.yml
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
TWX_DATABASE_USERNAME
TWX_DATABASE_PASSWORD
THINGWORX_INITIAL_ADMIN_PASSWORD
THINGWORX_INITIAL_METRICS_USER_PASSWORD
ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha/docker-compose-twx-posgres-ha-and-flow-postgres.yml
THINGWORX_INITIAL_ADMIN_PASSWORD
RAABITMQ_USERNAME
RABBITMQ_PASSWORD
HAPROXY_STAT_PASSWORD
THINGWORX_INITIAL_METRICS_USER_PASSWORD
运行 ThingWorx Flow Docker 镜像 
对于单一环境
1. 127.0.0.1 flow.local.rnd.ptc.com 添加到 /etc/hosts 文件。
无法修改此值:flow.local.rnd.ptc.com
2. 要启动 ThingWorx 与单一 ThingWorx Flow 引擎,请浏览至 /ThingWorx-Flow-Dockerfiles-x-x-x/ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single,并针对您的环境运行适当的命令:
环境
启动
ThingWorx Platform H2 与 ThingWorx Flow PostgreSQL
./startImages-twx-http-h2-and-flow-postgres.sh
ThingWorx Platform PostgreSQL 与 ThingWorx Flow PostgreSQL
./startImages-twx-http-postgres-and-flow-postgres.sh
ThingWorx Platform Microsoft SQL Server 与 ThingWorx Flow Microsoft SQL Server
./startImages-twx-http-mssql-and-flow-mssql.sh
ThingWorx Platform PostgreSQL 与 ThingWorx Flow Azure PostgreSQL
./startImages-twx-http-postgres-and-flow-azure.sh
3. Docker 镜像运行后,请在浏览器中转至 https://flow.local.rnd.ptc.com/Thingworx/Composer/
4. 从 ThingWorx Composer 执行 LoadOAuthConfiguration 服务,以将 OAuth 加载到 ThingWorx Flow 服务器中。
要停止 ThingWorx 与单一 ThingWorx Flow 引擎,请浏览至 /ThingWorx-Flow-Dockerfiles-x-x-x/ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-single,并针对您的环境运行适当的命令:
环境
停止
ThingWorx Platform H2 与 ThingWorx Flow PostgreSQL
./stopImages-twx-http-h2-and-flow-postgres.sh
ThingWorx Platform PostgreSQL 与 ThingWorx Flow PostgreSQL
./stopImages-twx-http-postgres-and-flow-postgres.sh
ThingWorx Platform Microsoft SQL Server 与 ThingWorx Flow Microsoft SQL Server
./stopImages-twx-http-mssql-and-flow-mssql.sh
ThingWorx Platform PostgreSQL 与 ThingWorx Flow Azure PostgreSQL
./stopImages-twx-http-postgres-and-flow-azure.sh
对于高可用性环境
1. 127.0.0.1 haproxy 添加到 /etc/hosts 文件。
默认情况下,将使用 haproxy。在更改此值之前,必须根据配置 ThingWorx Flow Docker 中的说明来修改 HAProxy host name 参数。
2. 要启动 ThingWorx 高可用性环境与单一 ThingWorx Flow 引擎,请浏览至 /ThingWorx-Flow-Dockerfiles-x-x-x/ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha 并运行 ./startImages-twx-ha-and-flow.sh 命令。
3. Docker 镜像启动并运行后,请在浏览器中转至 https://haproxy:8443/Thingworx/Composer/
4. 从 ThingWorx Composer 执行 LoadOAuthConfiguration 服务,以将 OAuth 加载到 ThingWorx Flow 服务器中。
要停止 ThingWorx 高可用性环境与单一 ThingWorx Flow 引擎,请浏览至 /ThingWorx-Flow-Dockerfiles-x-x-x/ThingWorx-Platform-Flow-Dockerfiles/docker-compose-files-ha 并运行 ./stopImages-twx-ha-and-flow.sh 命令。
查看日志
要查看所有日志,请运行以下命令:
docker compose -f <docker compose yml 文件名> logs -f
要查看特定容器的日志,请运行以下命令:
docker compose -f <docker compose yml 文件名> logs <容器名称>
输入 CTRL+C 以关闭日志。
这对您有帮助吗?