Does the django_address module provide a way to seed the initial country data?

You can generate the countries yourself pretty easily with the pycountry package.

Since the code field on the Country model that is created has a maximum length of two characters then you'll want to use the alpha_2 code.

I usually use a custom management command for this sort of thing. Maybe add a check to see if any objects have already been created then handle as you'd like.

Usage from the shell python manage.py create_countries

from address.models import Country
from pycountry import countries
from django.core.management.base import BaseCommand

class Command(BaseCommand):
    help = 'Initialize Country model'

    def handle(self, *args, **kwargs):
        create_countries = [
            Country(name=country.name[:40], code=country.alpha_2)
            for country in countries
        ]
        Country.objects.bulk_create(create_countries)
        self.stdout.write(f'Created {len(countries)} countries.\n')

If the production server isn't running Python/Django then you could use pycountry to create a CSV file with the relevant data. Assuming you're using PostgreSQL then you could use the COPY FROM command to populate the database.

import csv
from pycountry import countries

with open('countries.csv', mode='w') as countries_file:
    # specify delimiter because some countries have a comma
    writer = csv.writer(countries_file, delimiter='\t')
    writer.writerow(['id', 'name', 'code'])
    writer.writerows([
        [index + 1, country.name, country.alpha_2]
        for index, country in enumerate(countries)
    ])