Skip to content

Install on gandi simple hosting #217

@JLuc

Description

@JLuc

I opened an instance of gandi python simple hosting platform.

Le dossier racine du site par défaut est /srv/data/web/vhosts/default. Il n'y a donc pas de www comme dans la doc d'install, mais je suppose que default est l'équivalent de www. Il y a d'autre différences qui ont nécessité de petites adaptations

  • le dossier vhosts n'est pas accessible en écriture donc j'ai fait le pytition_venv dans default (avec du recul je comprend que j'aurais mieux du le mettre en dehors de l'espace accessible sur le web, par exemple dans /srv/data/home où on peut écrire aussi )
  • /srv/data/var/log/www/ existe bien mais il est réservé aux logs de gandi, et pip ne peut pas y écrire son fichier de log, ce qui déclenche une palanquée d'erreurs lors de l'install, mais ça ne bloque pas l'install. Peut-on/comment configurer la destination des logs ? cf piplogerrors.txt

À cette étape, ç'a a l'air un peu en place puisque django-admin --version renvoie : 2.2.11

Après c'est plus coton. Il n'y a pas de fichier settings.py à l'endroit indiqué par la doc d'install, et je n'en connais pas le format. Une recherche sur internet me donne des pistes. La doc pourrait elle donner un fichier settings.py exemple ? Est ce normal qu'il n'existe pas au début ? Je copie plus loin le fichier auquel j'aboutis après quelques recherches.

J'ai alors galéré à essayer de trouver comment le faire prendre en compte pour django-admin car il y avait le message en rouge : Note that only Django core commands are listed as settings are not properly configured (error: No module named 'pytition').. J'ai notamment essayé avec DJANGO_SETTINGS_MODULE='/srv/data/web/vhosts/default/pytition/pytition/pytition/settings.py' et idem sans py, mais ça donné : Note that only Django core commands are listed as settings are not properly configured (error: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.).

Puis j'ai vu qu'il était correctement positionné à l'intérieur même du code de manage.py alors j'ai laissé tomber le pb de django-admin.

Donc je fais python3 manage.py migrate, et j'ai l'erreur _mysql_exceptions.OperationalError: (1045, "Access denied for user 'hosting-user'@'localhost' (using password: NO)") qui semble indiquer que le fichier de settings n'est pas pris en compte.

Que faut il faire ?

mon my.cnf

[client]
database = "pytitionbdd"
user = "xxxxxxx"
password = "pytitionmdp"
default-character-set = utf8

Rq : j'ai au préalable créé la base de donnée.

mon settings.py :

"""
Django settings - créé par JLuc 
...
"""
...
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
SECRET_KEY = 'uneclesecrete'
ALLOWED_HOSTS = ['mywebsite.ext']
DATABASES = DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {
            'read_default_file': '/srv/data/web/vhosts/default/pytition/my.cnf',
            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
        },
    }
}
STATIC_ROOT = '/srv/data/web/vhosts/default/static'

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions