Configuring MediaGoblin¶
So! You’ve got MediaGoblin up and running, but you need to adjust some configuration parameters. Well you’ve come to the right place!
MediaGoblin’s config files¶
There are two main files used to configure MediaGoblin:
mediagoblin.ini
This is the main config file for MediaGoblin. If you want to tweak any settings for MediaGoblin, you’ll usually do that here. This file is copied from
mediagoblin.example.ini
the first time MediaGoblin runs. Keep this in mind if you ever need to refer back to the original settings.paste.ini
This is primarily a server configuration file, on the Python side (specifically, on the WSGI side, via paste deploy / paste script). It also sets up some middleware that you can mostly ignore, except to configure sessions… more on that later. If you are adding a different Python server other than Waitress / plain HTTP, you might configure it here. You probably won’t need to change this file very much.
Changes to these two files only take effect after restarting MediaGoblin. If you
followed your deployment guide, see the section on restarting MediaGoblin. If you’re using lazyserver.sh
or
lazycelery.sh
, first quit with Ctrl-c
and then re-run the command.
Enabling extra media types or plugins may require an update to the database, so after making changes, it is also a good idea to run:
$ ./bin/gmg dbupdate
Common changes¶
Enabling email notifications¶
You’ll almost certainly want to enable sending email. By default, MediaGoblin doesn’t really do this… for the sake of developer convenience, it runs in “email debug mode”.
To make MediaGoblin send email, you need a mailer daemon.
Change this in your mediagoblin.ini
file:
email_debug_mode = false
You should also change the “from” email address by setting
email_sender_address
. For example:
email_sender_address = "foo@example.com"
If you have more custom SMTP settings, you also have the following options at your disposal, which are all optional, and do exactly what they sound like.
email_smtp_host
email_smtp_port
email_smtp_user
email_smtp_pass
email_smtp_use_ssl
(default isFalse
)email_smtp_force_starttls
(default isFalse
)
Changing the data directory¶
MediaGoblin by default stores your data in wherever data_basedir
.
This can be changed by changing the value in your mediagoblin.ini
file
for example:
[DEFAULT]
data_basedir = "/var/mediagoblin/user_data"
For efficiency reasons MediaGoblin doesn’t serve these files itself and
instead leaves that to the webserver. You will have to alter the location
to match the path in data_basedir
.
If you use lazyserver.sh
you need to change the paste.ini
file:
[app:mediagoblin]
/mgoblin_media = /var/mediagoblin/user_data
If you use Nginx you need to change the config:
# Instance specific media:
location /mgoblin_media/ {
alias /var/mediagoblin/user_data;
}
Once you have done this you will need to move any existing media you had in the old directory to the new directory so existing media still can be displayed.
Displaying camera EXIF metadata¶
To display available EXIF metadata, set exif_visible = true
in the
[mediagoblin]
section of your mediagoblin.ini
file:
[mediagoblin]
exif_visible = true
All other configuration changes¶
There are a number of other settings which aren’t documented here. Currently,
the best reference for these options is mediagoblin/config_spec.ini
and the
additional config specifications for each media type eg.
mediagoblin/media_types/video/config_spec.ini
. These files are the
specification for mediagoblin.ini
and define the types and default values
for each configuration option.