Laravel Vite + Sail shows default vite page only
Hello all,
Recently switched my existing application from a homestead based development to Sail. It was going fine till I decided to develop some frontend. Vite says it compiles etc but when I go an address I used to, I see the vite default page
I used to be able to just go to my url like myappapi.test/test and see the page but now it is myappapi.test:5173/test which is whatever I guess but even then I only see the default Vite page that says things like ?
This is the Vite development server that provides Hot Module Replacement for your Laravel application.
To access your Laravel application, you will need to run a local development server.
Which is misleading because I am able to make requests to that same local site. I am very confused. Every other address returns 404 or that same page
version: "3"
services:
laravel.test:
build:
context: ./vendor/laravel/sail/runtimes/8.2
dockerfile: Dockerfile
args:
WWWGROUP: "${WWWGROUP}"
image: sail-8.2/app
extra_hosts:
- "host.docker.internal:host-gateway"
ports:
- "${APP_PORT:-80}:80"
- "${VITE_PORT:-5173}:${VITE_PORT:-5173}"
- "${LARAVEL_WEBSOCKETS_PORT:-6001}:6001"
environment:
WWWUSER: "${WWWUSER}"
LARAVEL_SAIL: 1
XDEBUG_MODE: "${SAIL_XDEBUG_MODE:-off}"
XDEBUG_CONFIG: "${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}"
IGNITION_LOCAL_SITES_PATH: "${PWD}"
volumes:
- ".:/var/www/html"
networks:
- sail
depends_on:
- mariadb
mariadb:
image: "mariadb:10"
ports:
- "${FORWARD_DB_PORT:-3306}:3306"
environment:
MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}"
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: "${DB_DATABASE}"
MYSQL_USER: "${DB_USERNAME}"
MYSQL_PASSWORD: "${DB_PASSWORD}"
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
volumes:
- "sail-mariadb:/var/lib/mysql"
- "./vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh"
networks:
- sail
healthcheck:
test:
- CMD
- mysqladmin
- ping
- "-p${DB_PASSWORD}"
retries: 3
timeout: 5s
networks:
sail:
driver: bridge
volumes:
sail-mariadb:
driver: local
and my vite config
import { defineConfig } from "vite"
import laravel from "laravel-vite-plugin"
import react from "@vitejs/plugin-react"
export default defineConfig({
plugins: [
laravel({
input: "resources/js/app.jsx",
refresh: true,
}),
react({ include: "**/*.tsx" }),
],
})
Please or to participate in this conversation.