phpmyadmin / docker

Docker container for phpMyAdmin
https://hub.docker.com/_/phpmyadmin
GNU General Public License v3.0
675 stars 455 forks source link

Themes broken in 5.2.0 container? #367

Closed YouveGotMeowxy closed 2 years ago

YouveGotMeowxy commented 2 years ago

Describe the bug

A clear and concise description of what the bug is.

To Reproduce

Steps to reproduce the behavior:

Don't know. All I did was update the container to the latest and now themes wont load. I may be wrong, but it seems like the path is wrong? (see screenshot).

Expected behavior

Themes load.

Screenshots

image

Server configuration

williamdes commented 2 years ago

Hi @YouveGotMeowxy This is quite strange, can you share your docker-compose file ?

YouveGotMeowxy commented 2 years ago

Hi @YouveGotMeowxy This is quite strange, can you share your docker-compose file ?

Happy to. :)

  phpmyadmin:
    hostname: 'phpmyadmin'
    image: 'phpmyadmin/phpmyadmin:latest'
    environment:
      TZ: 'America/Chicago'
      PMA_HOST: 'mysql'
      MYSQL_ROOT_PASSWORD_FILE: '/run/secrets/MySQL-PW'
      PMA_ABSOLUTE_URI: 'https://phpmyadmin.redacted.com/'
    volumes:
      - '/opt/docker/configs/phpmyadmin/saved:/saved:rw'
      - '/opt/docker/configs/phpmyadmin/upload:/upload:rw'
      - '/opt/docker/configs/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php:ro'
      - '/opt/docker/configs/phpmyadmin/themes:/var/www/html/themes:ro'
    secrets:
      - 'MySQL-PW'
    networks:
      - 'mysql'
    deploy:
      mode: 'replicated'
      replicas: 1
      placement:
        constraints:
          - 'node.labels.Main == true'
      restart_policy:
        condition: 'any'
williamdes commented 2 years ago

So one of the first things I would advise is using the Docker official image (more to learn in #363)

- image: 'phpmyadmin/phpmyadmin:latest'
+ image: 'phpmyadmin:latest'

Then, you should check the permissions in /opt/docker/configs/phpmyadmin/themes for the container to be able to read them That said I would advise mounting only the theme you need if you only want to add one. It would allow the default themes to remain in the Docker image and will solve the issue you are having.

- - '/opt/docker/configs/phpmyadmin/themes:/var/www/html/themes:ro'
+ - '/opt/docker/configs/phpmyadmin/themes/favoritetheme:/var/www/html/themes/favoritetheme:ro'
YouveGotMeowxy commented 2 years ago

@williamdes THANK YOU!

I followed all 3 suggestions and it works now. I'm not sure which one did it, though, lol

I'm guessing the permissions. My entire phpmyadmin config mount is set as the docker user (1000), but somehow the themes folder got set to root (not being a linux user I didnt even think to look at perms, since it worked previously). I set it recursively to 1000 again so it matches the rest, and now everything loads again. wewt! :)

I appreciate it so much! Viva La Fronce! :-P