Sign inSign up

webkul/bagisto

By webkul

•Updated 4 days ago

Official Bagisto image — a simple, powerful Laravel eCommerce framework with Vue.js.

Image
0

10K+

webkul/bagisto repository overview

⁠Bagisto

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.

⁠Quick Start

⁠Pull
docker pull webkul/bagisto:latest
⁠Run
docker run -d -p 80:80 webkul/bagisto:latest

Open http://localhost — your store is live.

⁠Different port

If port 80 is already in use:

docker run -d -p 8080:80 webkul/bagisto:latest

Then visit http://localhost:8080

⁠Admin Panel

URL:      http://localhost/admin/login
Email:    [email protected]
Password: admin123

Change the default password immediately after first login.

⁠What's Inside

ComponentDetails
OSUbuntu 24.04
PHP8.3 FPM with bcmath, gd, intl, mbstring, mysql, xml, zip, imagick
Web ServerNginx on port 80
DatabaseMySQL 8.0 (internal, pre-configured)
Process ManagerSupervisor (manages nginx + php-fpm + mysql)
AppBagisto — fully installed, migrated, and seeded at build time

⁠Persistence (Optional)

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
VolumePathPurpose
bagisto-mysql/var/lib/mysqlDatabase files
bagisto-storage/var/www/bagisto/storageUploads, logs, sessions

⁠External Database

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.

⁠Environment Variables

VariableDefaultDescription
DB_HOST127.0.0.1Database host. Set to external address to use external MySQL.
DB_PORT3306Database port.
DB_DATABASEbagistoDatabase name.
DB_USERNAMEbagistoDatabase user.
DB_PASSWORDbagistoDatabase password.
APP_URLhttp://localhostPublic URL of the store.
APP_KEYauto-generatedLaravel encryption key.
APP_LOCALEenApplication locale.
APP_CURRENCYUSDDefault currency.
APP_TIMEZONEUTCTimezone.

⁠Database Details

SettingValue
ConnectionMySQL 8.0
Host127.0.0.1 (internal)
Port3306
Databasebagisto
Usernamebagisto
Passwordbagisto

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

⁠Support

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!

Tag summary

Content type

Image

Digest

sha256:625bae3fb…

Size

798.8 MB

Last updated

4 days ago

docker pull webkul/bagisto:2.5.0-beta6