Using Ghost Docker Image without Email Integration

Hi,

Just starting to put together my first Ghost blog (via docker compose), and I’m running into an issue. When I log out of the dashboard for the first time, I can’t log back into my admin account. When I do, it sends me an error:

“Failed to send email. Please check your site configuration and try again”

When I check the logs, I get the same message.

I’ve already added a “security__staffDeviceVerification": false” variable to the compose file, but that didn’t seem to fix it on it’s own.

I know the obvious solution here is to properly set up email integration, but that’s something I’m not really interested in doing. I don’t have a mailing list or a member page, and my blog is locked behind a pangolin login anyway, so I’m not very worried from a security standpoint about disabling email authentication.

In short, is there any way to set up my instance without any email integration? I don’t want to have to set up email just so that I can log in to my admin panel from different machines.

Thanks!

It seems like you’ve set the right variable in the environment that it should work without sending any emails.

This would take some debugging to figure out what’s going on… and the easiest way to do that might be to enable SMTP email sending at least temporarily.

That would allow you to confirm which email is being sent, and from there you could work backwards in the code to see if there’s a way to disable it.

Personally, I would go ahead and email SMTP email sending. It’s not that much of a hassle and is separate from Mailgun.

Whatever email service you already have, there’s likely a way you send out occasional emails out through it to yourself.

If you run ghost cms on docker you should add options to .env file. Because Ghost automatically picks up these variables. There’s no need to edit config.production.json manually—that’s a thing of the past, like rotary phones.

So if you try to edit config.production.json it will not work.

But if try to add options “staffDeviceVerification”: false and mail__transport=Direct. It should works without e-mail integrations…

1 Like