fix(docker): create standalone networks without the swarm driver

Use the default bridge network driver for standalone destinations and bump the Coolify version to 4.3.14.
This commit is contained in:
Andras Bacsai 2026-08-28 10:49:05 +02:00
parent 28fb694fcb
commit 51a8a97d87
6 changed files with 21 additions and 7 deletions

View file

@ -43,14 +43,20 @@ protected static function boot()
}
$server = $newStandaloneDocker->server;
$safeNetwork = escapeshellarg($newStandaloneDocker->network);
instant_remote_process([
"docker network inspect {$safeNetwork} >/dev/null 2>&1 || docker network create --driver overlay --attachable {$safeNetwork} >/dev/null",
$newStandaloneDocker->networkCreateCommand(),
], $server, false);
ConnectProxyToNetworksJob::dispatchSync($server);
});
}
public function networkCreateCommand(): string
{
$safeNetwork = escapeshellarg($this->network);
return "docker network inspect {$safeNetwork} >/dev/null 2>&1 || docker network create --attachable {$safeNetwork} >/dev/null";
}
public function setNetworkAttribute(string $value): void
{
if (! ValidationPatterns::isValidDockerNetwork($value)) {

View file

@ -2,7 +2,7 @@
return [
'coolify' => [
'version' => env('COOLIFY_VERSION') ?: '4.3.13',
'version' => env('COOLIFY_VERSION') ?: '4.3.14',
'helper_version' => '1.0.16',
'realtime_version' => '1.0.17',
'railpack_version' => '0.23.0',

View file

@ -1,7 +1,7 @@
{
"coolify": {
"v4": {
"version": "4.3.13"
"version": "4.3.14"
},
"nightly": {
"version": "4.4-rc.1"

View file

@ -27,6 +27,14 @@
'alphanumeric' => 'network123',
]);
it('creates standalone destinations with a bridge network', function () {
$model = new StandaloneDocker;
$model->network = 'test-network';
expect($model->networkCreateCommand())
->toBe("docker network inspect 'test-network' >/dev/null 2>&1 || docker network create --attachable 'test-network' >/dev/null");
});
it('SwarmDocker rejects network names with shell metacharacters', function (string $network) {
$model = new SwarmDocker;
$model->network = $network;

View file

@ -23,8 +23,8 @@
->toContain('ARG COOLIFY_VERSION')
->toContain('ENV COOLIFY_VERSION=${COOLIFY_VERSION}')
->and($constants)
->toContain("'version' => env('COOLIFY_VERSION') ?: '4.3.13'")
->and($versions['coolify']['v4']['version'])->toBe('4.3.13')
->toContain("'version' => env('COOLIFY_VERSION') ?: '4.3.14'")
->and($versions['coolify']['v4']['version'])->toBe('4.3.14')
->and($versions['coolify']['nightly']['version'])->toBe('4.4-rc.1')
->and($nightlyVersions)->toBe($versions);
});

View file

@ -1,7 +1,7 @@
{
"coolify": {
"v4": {
"version": "4.3.13"
"version": "4.3.14"
},
"nightly": {
"version": "4.4-rc.1"