fix: manually create network for services
This commit is contained in:
		@@ -13,11 +13,13 @@ class StartService
 | 
				
			|||||||
        $service->saveComposeConfigs();
 | 
					        $service->saveComposeConfigs();
 | 
				
			||||||
        $commands[] = "cd " . $service->workdir();
 | 
					        $commands[] = "cd " . $service->workdir();
 | 
				
			||||||
        $commands[] = "echo '####### Saved configuration files to {$service->workdir()}.'";
 | 
					        $commands[] = "echo '####### Saved configuration files to {$service->workdir()}.'";
 | 
				
			||||||
 | 
					        $commands[] = "echo '####### Creating Docker network.'";
 | 
				
			||||||
 | 
					        $commands[] = "docker network create --attachable {$service->uuid} >/dev/null 2>/dev/null || true";
 | 
				
			||||||
        $commands[] = "echo '####### Starting service {$service->name} on {$service->server->name}.'";
 | 
					        $commands[] = "echo '####### Starting service {$service->name} on {$service->server->name}.'";
 | 
				
			||||||
        $commands[] = "echo '####### Pulling images.'";
 | 
					        $commands[] = "echo '####### Pulling images.'";
 | 
				
			||||||
        $commands[] = "docker compose pull";
 | 
					        $commands[] = "docker compose pull";
 | 
				
			||||||
        $commands[] = "echo '####### Starting containers.'";
 | 
					        $commands[] = "echo '####### Starting containers.'";
 | 
				
			||||||
        $commands[] = "docker compose up -d --remove-orphans";
 | 
					        $commands[] = "docker compose up -d --remove-orphans --force-recreate";
 | 
				
			||||||
        $commands[] = "docker network connect $service->uuid coolify-proxy 2>/dev/null || true";
 | 
					        $commands[] = "docker network connect $service->uuid coolify-proxy 2>/dev/null || true";
 | 
				
			||||||
        $activity = remote_process($commands, $service->server);
 | 
					        $activity = remote_process($commands, $service->server);
 | 
				
			||||||
        return $activity;
 | 
					        return $activity;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,5 +21,6 @@ class StopService
 | 
				
			|||||||
            $db->update(['status' => 'exited']);
 | 
					            $db->update(['status' => 'exited']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        instant_remote_process(["docker network disconnect {$service->uuid} coolify-proxy 2>/dev/null"], $service->server, false);
 | 
					        instant_remote_process(["docker network disconnect {$service->uuid} coolify-proxy 2>/dev/null"], $service->server, false);
 | 
				
			||||||
 | 
					        instant_remote_process(["docker network rm {$service->uuid} 2>/dev/null"], $service->server, false);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -41,6 +41,7 @@ class Service extends BaseModel
 | 
				
			|||||||
                    instant_remote_process(["docker volume rm -f $storage->name"], $service->server, false);
 | 
					                    instant_remote_process(["docker volume rm -f $storage->name"], $service->server, false);
 | 
				
			||||||
                });
 | 
					                });
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					            instant_remote_process(["docker network rm {$service->uuid}"], $service->server, false);
 | 
				
			||||||
        });
 | 
					        });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    public function type()
 | 
					    public function type()
 | 
				
			||||||
@@ -262,7 +263,7 @@ class Service extends BaseModel
 | 
				
			|||||||
                if (!$definedNetworkExists) {
 | 
					                if (!$definedNetworkExists) {
 | 
				
			||||||
                    $topLevelNetworks->put($definedNetwork, [
 | 
					                    $topLevelNetworks->put($definedNetwork, [
 | 
				
			||||||
                        'name' => $definedNetwork,
 | 
					                        'name' => $definedNetwork,
 | 
				
			||||||
                        'external' => false
 | 
					                        'external' => true
 | 
				
			||||||
                    ]);
 | 
					                    ]);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                $networks = $serviceNetworks->toArray();
 | 
					                $networks = $serviceNetworks->toArray();
 | 
				
			||||||
@@ -366,7 +367,7 @@ class Service extends BaseModel
 | 
				
			|||||||
                        if (is_null(data_get($savedService, 'fqdn'))) {
 | 
					                        if (is_null(data_get($savedService, 'fqdn'))) {
 | 
				
			||||||
                            $sslip = $this->sslip($this->server);
 | 
					                            $sslip = $this->sslip($this->server);
 | 
				
			||||||
                            $fqdn = "http://$containerName.$sslip";
 | 
					                            $fqdn = "http://$containerName.$sslip";
 | 
				
			||||||
                            if (substr_count($key->value(),'_') === 2) {
 | 
					                            if (substr_count($key->value(),'_') === 2 && $key->contains("=")) {
 | 
				
			||||||
                                $path = $value->value();
 | 
					                                $path = $value->value();
 | 
				
			||||||
                                if ($generatedServiceFQDNS->count() > 0) {
 | 
					                                if ($generatedServiceFQDNS->count() > 0) {
 | 
				
			||||||
                                    $alreadyGenerated = $generatedServiceFQDNS->has($key->value());
 | 
					                                    $alreadyGenerated = $generatedServiceFQDNS->has($key->value());
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user