Не могу подключиться к докеру mongo в gitlab

У меня есть следующий образ докера, созданный следующей командой docker-compose

services:
    give_sync_test:
        image: mongo:4.2.10
        restart: always
        environment:
            MONGO_INITDB_DATABASE: mybase
            MONGO_INITDB_ROOT_PASSWORD: admin
            MONGO_INITDB_DATABASE: password
        ports:
            - 27017:27017

который я использую на следующем шаге gitlab:

test:
    stage: test
    dependencies:
        - maven_build_snapshot
    image: 'my_image:latest'
    before_script:
        - apt-get update
        - apt-get -y install git
        - mongo "mongodb://localhost:27017/mybase" < ./utils/test

содержимое utils/test просто:

use myBase;

никаких действий в этом нет, настоящая проблема в том, что я получаю следующую ошибку от gitlab-ci:

присоединенный к: mongodb://localhost:27017/give?compressors=disabled&gssapiServiceName=mongodb 2020-12-09T14:44:21.828+0000 E QUERY [js] Ошибка: не удалось подключиться к серверу localhost: 27017, попытка подключения не удалась: SocketException: Ошибка подключения к локальному хосту: 27017 (127.0.0.1:27017) ::, вызванная :: В соединении отказано: connect@src/mongo/shell/mongo.js:353:17 @(connect):2:6 2020-12-09T14:44:21.830+0000 F - [основная] исключение: не удалось подключиться 2020-12-09T14:44:21.830+0000 E -
[основной] выход с кодом 1

Я уже пробовал строку монго с некоторой аутентификацией. mongodb://admin:пароль@localhost:27017/mybase

Кто-нибудь знает, что я делаю неправильно?

Использование JavaScript и MongoDB
Использование JavaScript и MongoDB
Сегодня я собираюсь вкратце рассказать о прототипах в JavaScript, а также представить и объяснить вам работу с базой данных MongoDB.
2
0
374
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны использовать alias из services для подключения к контейнерам. В этом случае вы можете получить доступ к монго, используя эту строку подключения mongodb://admin:password@give_sync_test:27017/mybase

Другие вопросы по теме