首页 > 解决方案 > phpmyadmin:fpm-alpine Docker 图像渲染问题与 Nginx 和 Docker-Compose

问题描述

当我运行我的 docker compose 文件时,我得到了一个奇怪的 phpMyAdmin 渲染,我尝试了不同的网络浏览器来清除缓存,但问题是一样的: 在此处输入图像描述

这是我的 docker-compose.yml:

version: "3.9"

services:
  aspnetcoreapp:
    container_name: aspnetcoreapp
    build:
      context: ./aspnetcoreapp
      dockerfile: Dockerfile
    expose:
      - "5080"
    restart: always
    depends_on:
      - mysql
    networks:
      - mynet

  nginx:
    container_name: nginx
    build:
      context: ./nginx
      dockerfile: Dockerfile
    volumes:
      - ./src:/var/www/php:ro
      - phpmyadmin_data:/var/www/html/:ro
    restart: always
    ports:
      - "60000:8282"
      - "60001:8383"
    depends_on:
      - aspnetcoreapp
      - phpmyadmin
      - mysql
    networks:
      - mynet

  mysql:
    container_name: mysql
    image: mysql:8.0.26
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootPass
      MYSQL_DATABASE: demoHello
    volumes:
      - sql_data:/var/lib/mysql
    ports:
      - 42333:3306
    networks:
      - mynet

  phpmyadmin:
    container_name: phpmyadmin
    image: phpmyadmin/phpmyadmin:fpm-alpine
    restart: always
    environment:
      PMA_USER: root
      PMA_PASSWORD: rootPass
      PMA_HOST: mysql
      MYSQL_ROOT_PASSWORD: rootPass
    expose:
      - "9000"
    depends_on:
      - mysql
    volumes:
      - phpmyadmin_data:/var/www/html/
    networks:
      - mynet

volumes:
  sql_data:
  phpmyadmin_data:

networks:
  mynet:
    driver: bridge

还有我的 Nginx Dockerfile:

FROM nginx:1.21-alpine AS base

ENV TERM xterm
RUN apk update && apk add vim

WORKDIR /
COPY nginx.conf /etc/nginx/nginx.conf

最后是我的 nginx.conf:

worker_processes 5;

events { worker_connections 1024; }

http {
    sendfile on;

    upstream docker_aspnetcoreapp {
        server aspnetcoreapp:5080;
    }

    server {
        listen 8282;
        # server_name www.domain.com;
        location / {
            proxy_pass http://docker_aspnetcoreapp;
        }
    }

    resolver 127.0.0.11 valid=15s;
    
    server {
        listen 8383;
        #server_name williamdes.local default_server;
        root /var/www/html/;
        index index.php index.html index.htm;
        set $upstream phpmyadmin:9000;

        location ^~ /pma {
            rewrite /pma/(.*) /$1 last;
            try_files $uri = 404;
            fastcgi_pass $upstream;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
        }

        location ~ \.php$ {
            try_files $uri = 404;
            fastcgi_pass $upstream;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
        }
    }
}

我是 Nginx 的新手,所以无法弄清楚出了什么问题!

知道是什么导致了这个问题吗?

标签: dockernginxdocker-composephpmyadminfpm

解决方案


推荐阅读