diff --git a/.env b/.env index fa8059a4a8..0ff7c34a16 100644 --- a/.env +++ b/.env @@ -22,8 +22,9 @@ _APP_REDIS_HOST=redis _APP_REDIS_PORT=6379 _APP_REDIS_PASS= _APP_REDIS_USER= -_APP_DB_HOST=mariadb -_APP_DB_PORT=3306 +_APP_DB_ADAPTER=mariadb-proxy +_APP_DB_HOST=database-proxy +_APP_DB_PORT=80 _APP_DB_SCHEMA=appwrite _APP_DB_USER=user _APP_DB_PASS=password @@ -104,8 +105,5 @@ _APP_MESSAGE_EMAIL_TEST_DSN= _APP_MESSAGE_PUSH_TEST_DSN= _APP_WEBHOOK_MAX_FAILED_ATTEMPTS=10 _APP_PROJECT_REGIONS=default - -_APP_DATABASE_PROXY_SECRET=secret-key -_APP_DATABASE_PROXY_CONNECTION=mariadb://user:password@mariadb:3306/appwrite?pool_size=128 -_APP_CONNECTIONS_DB_PROJECT=db_main=mariadb-proxy://secret-key@database-proxy/appwrite -_APP_CONNECTIONS_DB_CONSOLE=db_main=mariadb-proxy://secret-key@database-proxy/appwrite \ No newline at end of file +_APP_DATABASE_PROXY_SECRET=password +_APP_DATABASE_PROXY_CONNECTION=mariadb://user:password@mariadb:3306/appwrite?pool_size=128 \ No newline at end of file diff --git a/app/init.php b/app/init.php index 2249d5d40a..96fce26d41 100644 --- a/app/init.php +++ b/app/init.php @@ -740,7 +740,7 @@ $register->set('pools', function () { $group = new Group(); $fallbackForDB = 'db_main=' . AppwriteURL::unparse([ - 'scheme' => 'mariadb', + 'scheme' => App::getEnv('_APP_DB_ADAPTER', 'mariadb'), 'host' => App::getEnv('_APP_DB_HOST', 'mariadb'), 'port' => App::getEnv('_APP_DB_PORT', '3306'), 'user' => App::getEnv('_APP_DB_USER', ''), @@ -843,10 +843,15 @@ $register->set('pools', function () { */ switch ($dsnScheme) { case 'mariadb-proxy': + $host = $dsnHost; + if($dsnPort) { + $host .= ':' . $dsnPort; + } + // Ignore port and password (user = password) $resource = [ - 'endpoint' => 'http://' . $dsnHost . '/v1', - 'secret' => $dsnUser, + 'endpoint' => 'http://' . $host . '/v1', + 'secret' => $dsnPass, 'database' => $dsnDatabase ]; break; diff --git a/docker-compose.yml b/docker-compose.yml index 439988fba2..bd6b1af583 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -116,6 +116,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -231,6 +232,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -263,6 +265,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -292,6 +295,7 @@ services: - _APP_WORKER_PER_CORE - _APP_OPENSSL_KEY_V1 - _APP_SYSTEM_SECURITY_EMAIL_ADDRESS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -333,6 +337,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -387,6 +392,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -424,6 +430,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -493,6 +500,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -525,6 +533,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -599,6 +608,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -637,6 +647,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -672,6 +683,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -705,6 +717,7 @@ services: - _APP_ENV - _APP_WORKER_PER_CORE - _APP_OPENSSL_KEY_V1 + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -738,6 +751,7 @@ services: - _APP_ENV - _APP_WORKER_PER_CORE - _APP_OPENSSL_KEY_V1 + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -775,6 +789,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -804,6 +819,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -837,6 +853,7 @@ services: - _APP_ENV - _APP_WORKER_PER_CORE - _APP_OPENSSL_KEY_V1 + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT @@ -871,6 +888,7 @@ services: - _APP_REDIS_PORT - _APP_REDIS_USER - _APP_REDIS_PASS + - _APP_DB_ADAPTER - _APP_DB_HOST - _APP_CONNECTIONS_DB_CONSOLE - _APP_CONNECTIONS_DB_PROJECT