How on Earth do you get Ghost Memberships and Newsletters working with Cloudron
-
@jdaviescoates OK, so, when a user subscribes, do you see anything in the app logs? IIRC, it displays some emails errors in the ghost logs.
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
Also, the mailgun stuff, iirc, is not actually used other than to send the newsletters. i.e it is not used when a member subscribes.
Yes, I know.
But that doesn't help me resolve why no one can subscribe.
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
@jdaviescoates OK, so, when a user subscribes, do you see anything in the app logs? IIRC, it displays some emails errors in the ghost logs.
Aha:
May 17 17:55:23 Error: Mail command failed: 550 Authenticated user ghost.app@ud.coop cannot send mail as noreply@ghost.ud.coop
But that's confusing as masquerading is enabled. But perhaps it's not enabled for the ghost. subdomain or something?
-
@jdaviescoates aha!
From the docs:
Support email address - defaults to noreply@app.example.com ... When trying to change the above addresses, to say support@example.com, Ghost will send a confirmation mail from noreply@example.com to support@example.com
The noreply address subtly changed (the second references does not have
@app.example,com
) ! Checking, why... -
@jdaviescoates said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
But that's confusing as masquerading is enabled. But perhaps it's not enabled for the ghost. subdomain or something?
OK, so I went and added ghost.ud.coop as a domain in domains and then enabled maquerading and it works! FINALLY!
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
The noreply address subtly changed (the second references does not have @app.example,com) ! Checking, why...
I think it was just because I'm using a subdomain.
-
@jdaviescoates thanks, updating the docs. They keep changing this email address stuff every 3 versions
It seems support address is also so hidden. Took me 15 minutes to find it! It's here
/ghost/#/settings/members?showPortalSettings=true
-
@jdaviescoates said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
OK, so I went and added ghost.ud.coop as a domain in domains and then enabled maquerading and it works! FINALLY!
But that seems like quite a few hoops to have to jump through.
Could we make masquerading work across subdomains by default too @girish ? Or change something in the app package so that this extra step of adding another subdomain domain isn't needed?
If not, I guess something about it needs to be added to the docs.
-
@jdaviescoates It seems that subdomain thing is hardcoded in the code (i.e the default email addresses don't come from the database), so looks like we have to make the email server allow sending subdomains as you suggested.
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
@jdaviescoates It seems that subdomain thing is hardcoded in the code (i.e the default email addresses don't come from the database), so looks like we have to make the email server allow sending subdomains as you suggested.
Unless, if I'd already changed the support address (I hadn't in this instance), then perhaps it wouldn't have still tried to send via noreply@ghost.ud.coop at all and I wouldn't've needed to get masqureading working on the subdomain
-
@jdaviescoates I just tested a fresh install now. What I found is, it's not needed to add the subdomain at all.
If you configure the email address (support or the newsletter) to
blah@some.domain.com
, then Ghost is hardcoded to send emails fromnoreply@some.domain.com
toblah@some.domain.com
. This means that if you change the email address tonewsletter@example.com
, it will only try to send email asnoreply@email.com
.I am not sure why it tried to send email from a subdomain in your case. Do you think you might have tried to put in a subdomain email address ?
-
@jdaviescoates said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
Unless, if I'd already changed the support address (I hadn't in this instance), then perhaps it wouldn't have still tried to send via noreply@ghost.ud.coop at all and I wouldn't've needed to get masqureading working on the subdomain
Yeah, even if you've installed on a subdomain, if change the support address you don't also have to add and then enable masquerading on the subdomain.
So the steps in the docs were all actually correct, I think, it was just the subdomain issue, coupled with Ghost changing where to change stuff had got me all confuddled.
But perhaps the docs could also be clearer too.
Things you need to do in order to get Ghost working.
-
You can get as much as you can ready before installing ghost.
- In Cloudron, enable email on the domain you want to install Ghost on
- create support@ and newsletter@ email boxes
- enable email masquerading
- sign-up to Mailgun, configure DNS as instructed, have your mg.example.coop domain and private API ready
-
Install Ghost
-
Go to example.coop/ghost and set-up admin account
-
Click Explore Ghost admin then Cog at bottom of left column to get into Ghost settings
-
In Ghost Settings, go to Membership -> Portal Settings -> Customize Portal -> Account page settings
- Edit the email to your previously created suppport@ email address.
- Click Save and close (top right)
- Click on the confirmation email sent to support@ to confirm.
-
Go back to Ghost Setting, then into Email newsletter -> Newsletter -> Customize -> Email addresses -> Sender email address
- edit the email to your previously created newsletter@ email address.
- Click Save and close (top right)
- Click on the confirmation email sent to newsletter@ to confirm.
-
Back in Ghost Setting -> Email newsletter
- scroll down to General Settings expand and complete Mailgun configuration by
- choose your region,
- add your domain e.g.
mg.domain.coop
(without thehttps://
works fine, maybe it'd work with it too, not tested yet). - paste in your Mailgun Private API key
- Click Save (top right)
-
Go into Members (note this is not Settings -> Membership /ghost/#/settings/members/ it's just /ghost/#/members/) and click on the Add yourself as a member to test.
-
Also sign-up using another email address by browsing to your domain and clicking on the Subscribe button. Open that email address and confirm your subscription.
-
Create a post, click Publish, then Publish and send, then Publish and send again.
Both members should receive an email with the post you just published and sent.
-
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
I am not sure why it tried to send email from a subdomain in your case. Do you think you might have tried to put in a subdomain email address ?
In this particular instance (somehow I've tried and failed this multiple times for different reasons!) I think I'd just not found and edited that setting! (in my point 5 above)
-
@jdaviescoates thanks! I have fixed up the existing docs slightly and also linked in your guide here.
-
@girish said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
https://docs.cloudron.io/apps/ghost/#email has the tricky information to setup email in ghost. Note that mailgun is required, no way around it.
can you also mention WHY Mailgun is required? This is quite anti-self hosting.
-
@robi yes, linked to https://ghost.org/docs/faq/mailgun-newsletters/
-
@robi said in How on Earth do you get Ghost Memberships and Newsletters working with Cloudron:
what OSS bulk-mailing API can we add to Cloudron and invite Ghost to add support for it being configurable.
possibly listmonk could do the job?
-
@jdaviescoates good idea!
Seems it would require some hacking to get working in Ghost, a good suggestion for the upstream devs.
The API seems mostly undocumented, hence would be useful to know if they followed a particular pattern of another API mail provider.
-