docker не могу получить доступ к mysql - PullRequest
1 голос
/ 24 апреля 2020

Я пытаюсь до 3 дней создать БД из docker compose. Я уже выполнил процедуру на Ubuntu 18.04 LTS, но на OSX catalina у меня возникли некоторые проблемы.

version: "3.2" 

services:
  view-mongodb:
    image: xxxx/view-mongodb:3.6
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints:
          - node.labels.db == true
    volumes:
      #- /opt/mongodb-data:/data/db
      - /Users/danilo/configurazione-view-locale/maria-db-data:/data/db
    networks:
      - view-network
    ports:
      - "27017:27017" 
    logging:
      driver: "json-file"
      options:
        max-size: "50M"
        max-file: "10"

  view-mariadb:
    image: xxxxx/view-mariadb:10.2
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints:
          - node.labels.db == true
    volumes:
      #- /opt/mariadb-data:/var/lib/mysql
      - /Users/danilo/configurazione-view-locale/maria-db-data:/var/lib/mysql
    environment:
       - MYSQL_ROOT_PASSWORD=/run/secrets/VIEW_MYSQL_ROOT_PWD
    secrets:
       - VIEW_MYSQL_ROOT_PWD
       - VIEW_DB_PWD
    networks:
      - view-network
    ports:
      - "3306:3306" 
    logging:
      driver: "json-file"
      options:
        max-size: "50M"
        max-file: "10"

networks:
  view-network:
    driver: overlay
    ipam:
      driver: default
      config:
        - subnet: 10.10.10.0/24

secrets:
  VIEW_MYSQL_ROOT_PWD:
    external: true
  VIEW_DB_PWD:
    external: true

Прежде всего, если я хочу смонтировать том на / opt / mongodb-data docker не могу записать файл туда, я уже пытаюсь дать разрешение, используя chown 777, но он не работает. Так что я изменил путь (работает), и когда мне нужно exe c контейнер, используя

docker exec -it <ID container> sh /opt/init.sh 

, у меня есть эта ошибка

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Я открыл с помощью sh init . sh и убедитесь, что путь к секрету работает (я использовал также прямое сообщение)

есть секрет, который я использовал, может быть, я что-то понимаю, но, повторяю, процесс работает в Ubuntu 18.04 LTS

$ echo "view-mariadb" | docker secret create VIEW_DB_HOST -$ echo "3306" | docker secret create VIEW_DB_PORT -$ echo "view" | docker secret create VIEW_DB_VIEW -$ echo "webstudio" | docker secret create VIEW_DB_DOK -$ echo "view" | docker secret create VIEW_DB_USER -

echo "password" | docker secret create VIEW_MYSQL_ROOT_PWD - echo "password" | docker secret create VIEW_DB_PWD -

Кто-то может помочь? (Я цензурировал названия изображений, потому что они владеют моей компанией)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...