我有一个存储库,其中有多个服务器正在运行。像这样的结构
// Golang Apps
- account = port 4001
- event = port 4002
- place = port 4003
// Node js
- gateway = port 4000
我通常使用这样的脚本在本地运行
// script.sh here:
#!/bin/bash
EnvAPP="${ENV_APP:-dev}"
function cleanup {
kill "$ACCOUNTS_PID"
kill "$EVENTS_PID"
kill "$PLACES_PID"
}
trap cleanup EXIT
go build -tags $EnvAPP -o ./tmp/srv-accounts ./cmd/server/accounts
go build -tags $EnvAPP -o ./tmp/srv-events ./cmd/server/events
go build -tags $EnvAPP -o ./tmp/srv-places ./cmd/server/places
./tmp/srv-accounts &
ACCOUNTS_PID=$!
./tmp/srv-events &
EVENTS_PID=$!
./tmp/srv-places &
PLACES_PID=$!
sleep 1
node ./cmd/gateway/index.js
有没有可能我为这种情况创建一个 Docker 文件进入生产环境?在这种情况下,我应该在 Docker 文件中运行 script.sh 吗?我应该在多克文件中使用的图像怎么样?我不知道这种情况使用docker,因为在一个代码库中运行多个服务器,并且问题还端口运行服务器
也许你们中的一个人曾经有过这种情况?知道如何解决这个问题会很棒
在这种情况下,我正在使用图形QL联合( Go ),所以我有多个服务和网关 ( NodeJS )
我想针对此问题将其部署到生产环境中
烙印99
相关分类