Find app.yml on unsupported-install

I am running a development version of Discourse because I am writing a plugin and I cannot afford another droplet for production. Basically, I need to edit the SMTP details in order for the plugin to be able to send mail, because my local server doesn’t support sendmail.

Since it isn’t Docker, I have no containers directory, which means I cannot find the app.yml. I have looked in ~/discourse/config/ but there is no app.yml there.

I realize you don’t usually support development versions, but it is your software and I think you should help given that I am just trying to make my plugin work without messing up my production installation. Thank you for your consideration.

If you can only afford a single droplet, you should use that for a (supported) production install and do your development locally (for example in a VM or with Docker) :slight_smile:

Using a development installation for a public instance will very quickly get you into trouble.


But I am using a VM. I already have a production instance running on port 80 of the VM, so I installed the non-docker version so that I could have two installs. I don’t plan on making it public, just private for plugin testing. Can you help me find the app.yml or not?

Oh, I see.
Development installs normally aren’t set up to actually send emails but use MailCatcher to simulate it. Here’s how you start it:


Yeah I set that up as part of the installation process. That works fine for simulating the emails, but I need the emails to actually show up in my inbox to make sure that the style is working properly (and such).

I know the SMTP details for my SendGrid account (which I also use on my production install, both the DigitalOcean droplet and the local version) and I know it works. I just need to be able to use them on the development version. I just need to know where I can edit these details (app.yml would make sense). I have searched every directory I can find but no luck, so if it’s simply not possible please let me know. Otherwise I want to know where to find and edit the file.

Do you have a

No as he its using the dev install in prod.

@aspn3 why not use vagrant for development and docker for prod?


Also, not sure if this is of any interest to you, but I use a $5 instance at vultr for my sandbox. I typically load it with $50 credit and then destroy the instance when I want to save some cash so it doesn’t cost me anything and spin up a new one (and latest version of Discourse) when I want to play around. You get 1 GB of RAM, so I setup swap with it, but for pure testing purposes only, it suits my need for a “as close to production” server for very cheap.


How are you starting your dev server? All of the SMTP configuration settings are environment variables (as is everything else under env in app.yml, so you could just pass them to Discourse on the command line:

DISCOURSE_SMTP_USER_NAME=foo <command here>
1 Like

Why are you doing development on your server? Write your plugin locally, and then deploy it when you’re ready…don’t deploy developent stuff into production…do your development OFF OF your production server.

Also, why are you not using mailcatcher?

Others have told you that you can either use Vagrant or Docker…and there’s documentation for how to use it – just read it!