• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed docker-compose i mongodb, użytkownicy

VPS Starter Arubacloud
+1 głos
203 wizyt
pytanie zadane 19 maja 2021 w Inne języki przez Jakub 0 Pasjonat (23,120 p.)
zamknięte 19 maja 2021 przez Jakub 0

Witam, mam następujący plik docker-compose.yml:

version: "3.7"
services:
  mongodb_container:
    image: mongo:latest
    environment:
      - MONGO_INITDB_DATABASE=notebook
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=secret
    ports:
      - 27018:27017
    volumes:
      - data:/data/db
      - ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro

volumes:
  data:

oraz plik mongo-init.js:

db.createUser({
  user: 'jakub',
  pwd: 'secret',
  roles: [
    {
      role: 'dbOwner',
      db: 'notebook',
    },
  ],
});

Teraz powinienem mieć użytkownika root oraz jakub. Uruchamiam:

docker compose up

Kiedy używam MongoDB Compass, to działa poniższe połączenie:

mongodb://root:secret@127.0.0.1:27018

nie działa jednak połączenie do konkretnej bazy i dla użytkownika jakub (stworzonego wewnątrz mongo-init.js) :

mongodb://jakub:secret@127.0.0.1:27018/notebook

Mam powiadomienie, że uwierzytelnienie się nie powiodło. W logach jest komunikat:

Could not find user "jakub" for db "admin"

Nie wiem, czemu łączy się z bazą admin skoro wpisałem notebook.

Morduje się z tym od wczoraj i już powoli nerwy mi siadają... jak ktoś mi pomoże i zakończy moje cierpienie to będę bardzo wdzięczny laugh

Pozdrawiam serdecznie smiley

komentarz zamknięcia: Moja znajomość MongoDB jest na wątpliwym poziomie (rozwiązałem)
komentarz 19 maja 2021 przez Jakub 0 Pasjonat (23,120 p.)

Jak ktoś by chciał jeszcze pomóc, to dodam że ogólnie użytkownicy działają z poziomu mongo shell. Działa zarówno dla:

mongo -u root

jak i:

mongo -u jakub notebook

Problem jest tylko z URL'em. Działa tylko dla root:secret ale już nie dla jakub:secret.

2 odpowiedzi

0 głosów
odpowiedź 19 maja 2021 przez niezalogowany
komentarz 19 maja 2021 przez Jakub 0 Pasjonat (23,120 p.)

Niestety, po przeczytaniu tego wydaje mi się, że wszystko mam dobrze.

Jak tego nie naprawę to cóż, zawsze mogę z roota tylko się łączyć...

1
komentarz 19 maja 2021 przez niezalogowany

no cóż próbowałem wink

Powodzenia życzę.yes

0 głosów
odpowiedź 19 maja 2021 przez Jakub 0 Pasjonat (23,120 p.)

Ruszyło mi w następującej formie:

mongodb://jakub:secret@127.0.0.1:27018/notebook?authSource=notebook

musiałem dodać dodatkowo parametr query authSource=notebook.

Więcej informacji: https://stackoverflow.com/questions/57434521/mongodb-could-not-find-user-userdatabase/57436441

Podobne pytania

0 głosów
0 odpowiedzi 86 wizyt
pytanie zadane 2 stycznia 2020 w Inne języki przez kevin Mądrala (5,010 p.)
0 głosów
1 odpowiedź 243 wizyt
pytanie zadane 3 stycznia 2018 w Inne języki przez gromula Stary wyjadacz (10,070 p.)
0 głosów
0 odpowiedzi 228 wizyt
pytanie zadane 30 września 2019 w PHP przez michal_php Stary wyjadacz (13,700 p.)

92,452 zapytań

141,262 odpowiedzi

319,077 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...