Official Bagisto image — a simple, powerful Laravel eCommerce framework with Vue.js.
10K+
Bagisto is an open-source Laravel eCommerce framework built on Laravel and Vue.js.
This image is a single-container, ready-to-boot Bagisto setup. It includes Nginx, PHP 8.3 FPM, MySQL 8.0, and Supervisor — all pre-installed. No manual setup required. Just run and open your browser.
docker pull webkul/bagisto:latest
docker run -d -p 80:80 webkul/bagisto:latest
Open http://localhost — your store is live.
If port 80 is already in use:
docker run -d -p 8080:80 webkul/bagisto:latest
Then visit http://localhost:8080
URL: http://localhost/admin/login
Email: [email protected]
Password: admin123
Change the default password immediately after first login.
| Component | Details |
|---|---|
| OS | Ubuntu 24.04 |
| PHP | 8.3 FPM with bcmath, gd, intl, mbstring, mysql, xml, zip, imagick |
| Web Server | Nginx on port 80 |
| Database | MySQL 8.0 (internal, pre-configured) |
| Process Manager | Supervisor (manages nginx + php-fpm + mysql) |
| App | Bagisto — fully installed, migrated, and seeded at build time |
By default all data lives inside the container. To persist across container restarts and recreations:
docker run -d -p 80:80 \
-v bagisto-mysql:/var/lib/mysql \
-v bagisto-storage:/var/www/bagisto/storage \
webkul/bagisto:latest
| Volume | Path | Purpose |
|---|---|---|
bagisto-mysql | /var/lib/mysql | Database files |
bagisto-storage | /var/www/bagisto/storage | Uploads, logs, sessions |
To use an external MySQL server instead of the built-in one:
docker run -d -p 80:80 \
-e DB_HOST=your-db-host.com \
-e DB_PORT=3306 \
-e DB_DATABASE=bagisto \
-e DB_USERNAME=bagisto_user \
-e DB_PASSWORD=your_password \
-e APP_URL=https://your-domain.com \
webkul/bagisto:latest
When DB_HOST is set to anything other than 127.0.0.1 or localhost, the internal MySQL is automatically disabled.
| Variable | Default | Description |
|---|---|---|
DB_HOST | 127.0.0.1 | Database host. Set to external address to use external MySQL. |
DB_PORT | 3306 | Database port. |
DB_DATABASE | bagisto | Database name. |
DB_USERNAME | bagisto | Database user. |
DB_PASSWORD | bagisto | Database password. |
APP_URL | http://localhost | Public URL of the store. |
APP_KEY | auto-generated | Laravel encryption key. |
APP_LOCALE | en | Application locale. |
APP_CURRENCY | USD | Default currency. |
APP_TIMEZONE | UTC | Timezone. |
| Setting | Value |
|---|---|
| Connection | MySQL 8.0 |
| Host | 127.0.0.1 (internal) |
| Port | 3306 |
| Database | bagisto |
| Username | bagisto |
| Password | bagisto |
Internal MySQL is only accessible from inside the container. To access it externally for debugging, map port 3306:
docker run -d -p 80:80 -p 3306:3306 webkul/bagisto:latest
If you have any issues, please contact us at [email protected] or raise a ticket at https://webkul.uvdesk.com/.
You can also visit our Bagisto Developer Documentation for more information.
Thank you for choosing Bagisto!
Content type
Image
Digest
sha256:625bae3fb…
Size
798.8 MB
Last updated
4 days ago
docker pull webkul/bagisto:2.5.0-beta6