Comment obtenir un mot de passe d'une base de données ?

Bonjour ! Lorsque j’installe Discourse (Docker), je ne vois pas quel mot de passe est défini pour ma base de données.
J’en ai besoin car je veux utiliser une connexion à distance à la base de données et je pense que Discourse définit un mot de passe pour toutes les images Docker.

1 « J'aime »

Salut moschino :wave:,

Je ne m’y connais pas beaucoup en choses techniques, mais je pense que lorsque vous êtes à l’intérieur du conteneur, vous pouvez vous connecter à la base de données en utilisant le nom d’utilisateur discourse sans mot de passe.

Faites-moi savoir si cela vous aide :

./launcher enter app
su - discourse
psql
1 « J'aime »

Pourquoi voulez-vous faire cela ? Normalement, l’explorateur de données est une meilleure façon de le faire.

Par défaut, la base de données n’est pas exposée à un port.

Si vous voulez vraiment exposer votre base de données au monde, réinstallez avec une configuration à deux conteneurs (discourse-setup --two-container). S’il est plus facile de le faire sur un nouveau serveur, mais il existe des sujets sur la façon de changer.

C’est presque certainement une mauvaise idée. Utilisez l’explorateur de données ou l’API.

7 « J'aime »

Quel est donc le bon contenu de config/database.yml ? Pouvez-vous partager un exemple de production ?

Je ne vois aucune base de données listée là-bas et Ruby échoue dans certaines tâches (comme l’exportation de override_translations). Je soupçonne que mon installation a quelque chose de cassé.

Actuellement, je ne vois que les bases de données dev et test dans config/database.yml et je veux en fait corriger le schéma de base de données fonctionnel actuel :slight_smile:

Je peux lire la base de données de production dans pslq sur une instance Discourse conteneurisée.

Comment avez-vous installé Discourse ?

Quel problème essayez-vous de résoudre ?

Quelle est la preuve que quelque chose ne va pas ?

Peut-être que vous verrez ce que fait une commande
rake db:migrate
?

Le nom de la base de données est dans une variable d’environnement.

1 « J'aime »

Je ne peux pas exporter la langue personnalisée es_XX et je soupçonne que cela pourrait être lié à une mauvaise configuration, mais je vois ensuite que le mot de passe de production et l’hôte ne semblent pas être déclarés dans les fichiers yml.

J’ai essayé de jouer avec LANG et DISCOURSE_DEFAULT_LOCALE mais cela n’a pas suffi.

Actuellement, j’ai LANG = en_US.UTF-8 et DISCOURSE_DEFAULT_LOCALE = es (et cela me permet de corriger problème de niveau de confiance sur locale personnalisée comme solution de contournement).

Je suppose que ce n’est pas une installation standard.

Oui, c’est le cas, mais je pense que j’ai mélangé le développement avec la production ou quelque chose comme ça.

Peut-être que j’ai des problèmes avec les emojis dans les chaînes de localisation personnalisées, je vais vérifier cela.