Я начинаю с докера и у меня есть некоторые проблемы, чтобы сделать правильный конфиг.
Фреймворку нужен скрипт для работы бэкэнда.
Это требует подключения SQL. Я нашел способ заставить phpmyadmin работать, но скрипт не может подключиться к базе данных mysql.
Если кто-то с большим пониманием Docker может дать мне совет, если что-то не так.
myhomepage-mysql:
image: mysql:5.7
container_name: myhomepage-mysql
environment:
- MYSQL_ROOT_PASSWORD=toor
- MYSQL_DATABASE=MyHomepage
- MYSQL_USER=homepage_admin
- MYSQL_PASSWORD=admin123
myhomepage-webserver:
image: phpdockerio/nginx:latest
container_name: myhomepage-webserver
volumes:
- ..:/var/www/myhomepage
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
ports:
- "8080:80"links:
- myhomepage-php-fpm
myhomepage-php-fpm:
build: .
dockerfile: php-fpm/Dockerfile
container_name: myhomepage-php-fpm
volumes:
- ..:/var/www/myhomepage
- ./php-fpm/php-ini-overrides.ini:/etc/php/7.1/fpm/conf.d/99-overrides.ini
links:
- myhomepage-mysql
myhomepage-phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
container_name: myhomepage-phpmyadmin
environment:
PMA_USER: root
PMA_PASSWORD: toor
PMA_HOST: mysql
MYSQL_ROOT_PASSWORD: toor
ports:
- "8181:80"volumes:
- /sessions
links:
- myhomepage-mysql:mysql
Вторая проблема заключается в том, что phpmyadmin выдает это сообщение:
Your PHP MySQL library version 10.1.20-MariaDB differs from your MySQL server version 5.7.17. This may cause unpredictable behavior.
Могу ли я получить доступ к phpmyadmin из HTTP: // локальный: 8080 / PHPMyAdmin не из HTTP: // локальный: 8181 / ?
На данный момент этот конфиг работает:
project-nginx:
container_name: project-webserver
image: nginx:latest
volumes:
- ..:/var/www/project
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
- ./nginx/phpmyadmin.conf:/etc/nginx/conf.d/phpmyadmin.conf
ports:
- 80:80
links:
- project-php
- project-phpmyadmin
project-php:
build: .
dockerfile: php-fpm/Dockerfile
container_name: project-php
expose:
- 9000
volumes:
- ..:/var/www/project
- ./php-fpm/php-ini-overrides.ini:/etc/php/7.1/fpm/conf.d/99-overrides.ini
links:
- project-mysql
project-mysql:
image: mysql
container_name: project-mysql
volumes:
- /var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=toor
- MYSQL_DATABASE=project
- MYSQL_USER=project_admin
- MYSQL_PASSWORD=admin123
project-phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: project-phpmyadmin
environment:
- "PMA_HOST: project-mysql"- "PMA_USER : root"- "PMA_PASSWORD: toor"links:
- project-mysql:db
volumes:
- /sessions
- ./phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php
Других решений пока нет …