datasquirel/package-shared/utils/setup-global-network.ts
Benjamin Toby c37d105dee Updates
2025-07-09 20:30:45 +01:00

26 lines
886 B
TypeScript

import { execSync } from "child_process";
import grabInstanceGlobalNetWorkName from "./grab-instance-global-network-name";
import grabIPAddresses from "./backend/names/grab-ip-addresses";
export default function setupGlobalNetwork() {
const globalNetworkName = grabInstanceGlobalNetWorkName();
const { globalIPPrefix } = grabIPAddresses();
try {
execSync(`docker network rm ${globalNetworkName}`, {});
} catch (error) {}
try {
let newNtwkCmd = `docker network create`;
newNtwkCmd += ` --driver bridge`;
newNtwkCmd += ` --subnet ${globalIPPrefix}.0/24`;
newNtwkCmd += ` --gateway ${globalIPPrefix}.1`;
newNtwkCmd += ` ${globalNetworkName}`;
execSync(newNtwkCmd);
} catch (error) {
console.log(`Failed to create global network ${globalNetworkName}`);
console.log(globalIPPrefix);
}
}