-
-
Notifications
You must be signed in to change notification settings - Fork 266
Description
Current Behavior
Installer fails to save configured admin user at the end of the installer if the MariaDB driver is used in a Docker environment, leading to a 500 Server Error and no eligible user to login with on a fresh install. This issue does not occur when using the SQLite driver. I tested while using the Redis driver for everything else, but I'm not sure if it has any influence.
Expected Behavior
Installer behaves and completes properly without error, no matter which drivers are utilized, and a valid admin user account is available for use at the end.
Steps to Reproduce
- Use this Docker Compose (Traefik reverse proxy network and labels can likely be removed without affecting the issue. I have already confirmed the Panel container can see and connect to the MariaDB container):
services:
pelican-panel:
image: ghcr.io/pelican-dev/panel:latest
restart: unless-stopped
networks:
- proxy
depends_on:
- pelican-cache
- pelican-db
volumes:
- pelican-data:/pelican-data
- pelican-logs:/var/www/html/storage/logs
env_file: stack.env # Provided by Portainer
environment:
APP_ENV: "production"
APP_DEBUG: "false"
APP_URL: "https://${PANEL_DOMAIN}"
BEHIND_PROXY: true
XDG_DATA_HOME: /pelican-data
CACHE_STORE: "redis"
SESSION_DRIVER: "redis"
QUEUE_CONNECTION: "redis"
REDIS_HOST: "pelican-cache"
DB_CONNECTION: "mariadb"
DB_HOST: "pelican-db"
DB_PORT: "3306"
DB_USERNAME: ${PANEL_DB_USER}
DB_PASSWORD: ${PANEL_DB_PASSWORD}
DB_DATABASE: ${PANEL_DB_DATABASE}
labels:
- "traefik.enable=true"
- "traefik.http.routers.pelican.entrypoints=http"
- "traefik.http.routers.pelican.rule=Host(`${PANEL_DOMAIN}`)"
- "traefik.http.routers.pelican.middlewares=redirect-http-to-https@file"
- "traefik.http.routers.pelican-secure.entrypoints=https"
- "traefik.http.routers.pelican-secure.rule=Host(`${PANEL_DOMAIN}`)"
- "traefik.http.routers.pelican-secure.tls=true"
- "traefik.http.routers.pelican-secure.middlewares=internal-ipwhitelist@file"
- "traefik.http.routers.pelican-secure.service=pelican"
- "traefik.http.services.pelican.loadbalancer.server.port=80"
pelican-cache:
image: redis:alpine
restart: unless-stopped
networks:
- proxy
pelican-db:
image: mariadb:12.1.2
restart: unless-stopped
networks:
- proxy
volumes:
- pelican-db:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: ${PANEL_DB_ROOT_PASSWORD}
MYSQL_USER: ${PANEL_DB_USER}
MYSQL_PASSWORD: ${PANEL_DB_PASSWORD}
MYSQL_DATABASE: ${PANEL_DB_DATABASE}
volumes:
pelican-data:
pelican-logs:
pelican-db:
networks:
proxy:
external: true- Navigate to
https://panel-domain.tld/installerand go through the installer steps (if it's important, I usedRed-Thirtenas my username). It should be noted that the Database selection page is glitched out when you setDB_CONNECTION="mariadb". If you click on anything, the browser says the "Page is expired" and forces you to reload it. When you do, it will visually show MariaDB as selected, but it will act like SQLite is selected. You have to press SQLite and then press back to MariaDB for it to not be glitched anymore. - Click finish on the final installer step. It will appear to be frozen for quite some time, before eventually refreshing to a 500 Server Error page.
- If you try navigating to
https://panel-domain.tldand logging in, the admin user you configured during the installer will not be a valid user and you cannot log in.
The logs indicate an error occurs when the configured admin user is saved to the DB because the configured email is null for some reason (not sure why; I filled it out in the installer).
Lastly, please note that this issue cropped up sometime after PR #2150 was merged (not saying this PR caused it; just sometime after because the last time I tested was before this PR and it worked).
Panel Version
v1.0.0-beta32
Wings Version
N/A
Games and/or Eggs Affected
N/A
Docker Image
N/A
Error Logs
https://logs.pelican.dev/7c3806caIs there an existing issue for this?
- I have searched the existing issues before opening this issue.
- I have provided all relevant details, including the specific game and Docker images I am using if this issue is related to running a server.
- I have checked in the Discord server and believe this is a bug with the software, and not a configuration issue with my specific system.