#mysql #docker #docker-compose #mariadb
#mysql #docker #docker-compose #mariadb
Вопрос:
Я настроил Docker-compose, который запускает несколько приложений. В основном это сводится к тому, что все приложения могут подключаться к контейнеру / базе данных MariaDB.
В MariaDB есть переменная, вызываемая MYSQL_ROOT_PASSWORD
для изменения пароля root. Но всякий раз, когда я меняю его и использую этот пароль, скажем, с WordPress, я получаю ошибки отказа в доступе. Но когда я затем переключаю пароль, который использует WordPress, обратно на «root», это работает.
Я надеюсь, что кто-нибудь может сказать мне, что я делаю не так! 🙂
Вот мой docker-compose.yml:
version: "3.2"
services:
mariadb:
image: "mariadb"
container_name: mariadb
volumes:
- "./mariadb:/var/lib/mysql"
networks:
- front
environment:
- MYSQL_DATABASE=mariadb
- MYSQL_USER=mariadb
- MYSQL_PASSWORD=mariadb
- MYSQL_ROOT_PASSWORD=321verysecurerootpassword123
wordpress:
depends_on:
- mariadb
image: "wordpress"
container_name: wordpress
links:
- 'mariadb:mysql'
volumes:
- "./wordpress/:/var/www/html"
networks:
- front
ports:
- "80:80"
environment:
WORDPRESS_DB_PASSWORD: root
firefly:
depends_on:
- mariadb
image: "jc5x/firefly-iii:latest"
container_name: firefly
networks:
- front
ports:
- "8080:8080"
volumes:
- "./firefly:/var/www/html/storage/upload"
environment:
- APP_KEY=dRZ1lRipw1htgeanQrmjRcD3PGGJjvlk
- DB_CONNECTION=mysql
- DB_DATABASE=firefly
- DB_USERNAME=root
- DB_PASSWORD=root
- DB_HOST=mariadb
- DB_PORT=3306
orangehrm:
depends_on:
- mariadb
image: "docker.io/bitnami/orangehrm:4-debian-10"
container_name: orangehrm
networks:
- front
ports:
- "8081:80"
- "443:443"
volumes:
- "./orangehrm:/bitnami"
environment:
ORANGEHRM_DATABASE_NAME: orangehrm
ORANGEHRM_DATABASE_USER: root
ORANGEHRM_DATABASE_PASSWORD: root
ORANGEHRM_USERNAME: orangehrmuser
ORANGEHRM_PASSWORD: orangehrmpassword
networks:
front:
external: false
Ответ №1:
Я уже нашел ответ.
Я не могу изменить пароль на ходу, мне пришлось удалить старый том, который использовали MariaDB и WordPress, и создать их заново. Тогда это сработает.