
and I've done that, and they all start, and look happy from their logs, but when I run migrate, I get the swoole error

This is the full error
Fatal error: Uncaught Swoole\Error: API must be called in the coroutine in /usr/src/code/app/init.php:928
Stack trace:
#0 /usr/src/code/app/init.php(928): PDO->__construct('mysql:host=mari...', 'apps', Object(SensitiveParameterValue), Array)
#1 /usr/src/code/vendor/utopia-php/registry/src/Registry/Registry.php(75): {closure}()
#2 /usr/src/code/src/Appwrite/Platform/Tasks/Migrate.php(98): Utopia\Registry\Registry->get('db', true)
#3 /usr/src/code/src/Appwrite/Platform/Tasks/Migrate.php(34): Appwrite\Platform\Tasks\Migrate->action('1.5.4', Object(Utopia\Cache\Cache), Object(Utopia\Database\Database), Object(Closure), Object(Utopia\Registry\Registry))
#4 /usr/src/code/vendor/utopia-php/cli/src/CLI/CLI.php(320): Appwrite\Platform\Tasks\Migrate->Appwrite\Platform\Tasks\{closure}('1.5.4', Object(Utopia\Cache\Cache), Object(Utopia\Database\Database), Object(Closure), Object(Utopia\Registry\Registry))
#5 /usr/src/code/app/cli.php(191): Utopia\CLI\CLI->run()
#6 {main}
thrown in /usr/src/code/app/init.php on line 928

In case anything in that stack trace is of any use

you should have called this from one of the existing test appwrite containers. is that what you did?

also you should update to 1.5.7

oh, right, let me flip this back to 1.5.7, I was hitting 1.5.4 because 1.5.7 didnt work. I thought maybe I needed to step version by version

I called migrate AFTER starting the test container using 1.5.7 Should the running container be 1.4.14 but I run migrate with the 1.5.7 app/src ?

running container should be 1.5.7

That was the case, but let me go back to 1.5.7 and validate

something seems wrong with your db connection

inspec the container and make sure the _APP_DB_*
env vars are correct and the user has full access to the db

Do you know if there is some command/file in the appwrite container that I could use to validate the sql connection from within the container? I assume mysql client is not there. But thought there might be an appwrite based php or node command I could run to validate DB connection

maybe the doctor command: https://appwrite.io/docs/advanced/self-hosting/debug#doctor-cli

but that might give the same error

I'll give it a shot

Does the main appwrite container use: _APP_OPENSSL_KEY_V1 now?

it always did 👀

once this is up, I'll try that as well. I didn't have that set on 1.4.x for the main appwrite container...

I bet it was pulling the default secret key and working for that reason


Doctor seems to be able to connect to the db

both console and Projects

👀 there isn't a default

this is the same container you ran the migrate command?

yes
Recommended threads
- Domain not working
My domain [fork-fable.appwrite.network](https://fork-fable.appwrite.network/) returns a 500 even after deleting and redeploying. Other domains added in domains ...
- File tokens regenerate each page reload
Hello, on appwrite 1.7.4, when I create a file token via the API Tokens(appwriteAdminClient)#createFileToken I get a secret, then when I check in the console t...
- Appwrite isn't accepting the api from se...
Error creating user: AppwriteException: Server Error type: 'general_unknown', response: '{"message":"Server Error","code":500,"type":"general_unknown","versi...
