docker.recipes

nopCommerce

intermediate

.NET based open-source e-commerce.

Overview

nopCommerce is a leading open-source e-commerce platform built on ASP.NET Core that has powered over 60,000 online stores since 2008. Developed with enterprise-grade architecture, it offers multi-store management, extensive plugin ecosystem, and mobile-responsive themes while maintaining complete source code access for unlimited customization. The platform supports complex B2B and B2C scenarios with features like multi-vendor marketplaces, subscription products, and advanced inventory management. nopCommerce requires Microsoft SQL Server as its primary database engine, making this containerized stack particularly valuable for development teams and businesses wanting enterprise-level e-commerce capabilities without Windows server licensing costs. The SQL Server 2022 container provides full database functionality including stored procedures, triggers, and advanced indexing that nopCommerce leverages for product catalog management, order processing, and customer data analytics. This configuration targets mid-market retailers, software agencies building client solutions, and developers creating custom e-commerce applications who need the power of .NET ecosystem with professional database backing. Unlike PHP-based alternatives, this stack delivers superior performance for catalog-heavy sites and integrates naturally with Microsoft business applications like Dynamics, Office 365, and Azure services.

Key Features

  • Multi-store management with shared customer base and separate product catalogs
  • Advanced product attribute system supporting unlimited custom fields and variants
  • Built-in multi-vendor marketplace functionality with commission tracking
  • Sophisticated pricing engine with customer roles, discounts, and tier-based pricing
  • Comprehensive order management with partial shipping and return processing
  • Plugin architecture with 1,500+ marketplace extensions for payment gateways and integrations
  • Mobile-first responsive themes with drag-and-drop page builder
  • Advanced SEO tools including URL rewriting, meta tag management, and sitemap generation

Common Use Cases

  • 1Enterprise retailers migrating from legacy .NET applications to modern containerized infrastructure
  • 2Digital agencies developing custom e-commerce solutions for clients in manufacturing or wholesale
  • 3B2B companies requiring complex pricing structures and customer-specific catalogs
  • 4Multi-brand retailers managing separate storefronts with centralized inventory
  • 5Software vendors building white-label e-commerce platforms with extensive customization
  • 6Educational institutions creating online bookstores or merchandise shops with student discounts
  • 7Subscription box services requiring recurring billing and inventory automation

Prerequisites

  • Minimum 4GB RAM allocated to Docker (nopCommerce requires 2GB, SQL Server needs 2GB)
  • Strong SQL Server Administrator password meeting complexity requirements (8+ chars, uppercase, number, special character)
  • Port 8080 available on host system for nopCommerce web interface
  • Basic understanding of ASP.NET Core application configuration and IIS concepts
  • Familiarity with SQL Server Management Studio or Azure Data Studio for database administration
  • SSL certificate knowledge for production deployments requiring HTTPS termination

For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms

docker-compose.yml

docker-compose.yml
1services:
2 nopcommerce:
3 image: nopcommerceteam/nopcommerce:latest
4 container_name: nopcommerce
5 restart: unless-stopped
6 environment:
7 ASPNETCORE_ENVIRONMENT: Production
8 volumes:
9 - nopcommerce_data:/app/App_Data
10 ports:
11 - "8080:80"
12 depends_on:
13 - mssql
14 networks:
15 - nopcommerce
16
17 mssql:
18 image: mcr.microsoft.com/mssql/server:2022-latest
19 container_name: nopcommerce-mssql
20 environment:
21 ACCEPT_EULA: "Y"
22 MSSQL_SA_PASSWORD: ${SA_PASSWORD}
23 volumes:
24 - mssql_data:/var/opt/mssql
25 networks:
26 - nopcommerce
27
28volumes:
29 nopcommerce_data:
30 mssql_data:
31
32networks:
33 nopcommerce:
34 driver: bridge

.env Template

.env
1SA_PASSWORD=YourStrong@Password123

Usage Notes

  1. 1Docs: https://docs.nopcommerce.com/
  2. 2Access at http://localhost:8080 - complete installation wizard
  3. 3Built on ASP.NET Core - requires SQL Server (MSSQL)
  4. 4SA_PASSWORD must meet complexity requirements (uppercase, number, special)
  5. 5Admin panel created during installation wizard
  6. 6Plugin marketplace at nopcommerce.com for extensions

Individual Services(2 services)

Copy individual services to mix and match with your existing compose files.

nopcommerce
nopcommerce:
  image: nopcommerceteam/nopcommerce:latest
  container_name: nopcommerce
  restart: unless-stopped
  environment:
    ASPNETCORE_ENVIRONMENT: Production
  volumes:
    - nopcommerce_data:/app/App_Data
  ports:
    - "8080:80"
  depends_on:
    - mssql
  networks:
    - nopcommerce
mssql
mssql:
  image: mcr.microsoft.com/mssql/server:2022-latest
  container_name: nopcommerce-mssql
  environment:
    ACCEPT_EULA: "Y"
    MSSQL_SA_PASSWORD: ${SA_PASSWORD}
  volumes:
    - mssql_data:/var/opt/mssql
  networks:
    - nopcommerce

Quick Start

terminal
1# 1. Create the compose file
2cat > docker-compose.yml << 'EOF'
3services:
4 nopcommerce:
5 image: nopcommerceteam/nopcommerce:latest
6 container_name: nopcommerce
7 restart: unless-stopped
8 environment:
9 ASPNETCORE_ENVIRONMENT: Production
10 volumes:
11 - nopcommerce_data:/app/App_Data
12 ports:
13 - "8080:80"
14 depends_on:
15 - mssql
16 networks:
17 - nopcommerce
18
19 mssql:
20 image: mcr.microsoft.com/mssql/server:2022-latest
21 container_name: nopcommerce-mssql
22 environment:
23 ACCEPT_EULA: "Y"
24 MSSQL_SA_PASSWORD: ${SA_PASSWORD}
25 volumes:
26 - mssql_data:/var/opt/mssql
27 networks:
28 - nopcommerce
29
30volumes:
31 nopcommerce_data:
32 mssql_data:
33
34networks:
35 nopcommerce:
36 driver: bridge
37EOF
38
39# 2. Create the .env file
40cat > .env << 'EOF'
41SA_PASSWORD=YourStrong@Password123
42EOF
43
44# 3. Start the services
45docker compose up -d
46
47# 4. View logs
48docker compose logs -f

One-Liner

Run this command to download and set up the recipe in one step:

terminal
1curl -fsSL https://docker.recipes/api/recipes/nopcommerce/run | bash

Troubleshooting

  • Login failed for user 'sa': Verify SA_PASSWORD environment variable meets SQL Server complexity requirements and container has fully started
  • nopCommerce installation wizard shows database connection error: Wait 60-90 seconds for SQL Server container initialization before accessing http://localhost:8080
  • Application returns 500 errors after installation: Check nopcommerce_data volume permissions and ensure ASPNETCORE_ENVIRONMENT is set correctly
  • Performance issues with large catalogs: Increase SQL Server memory allocation and enable SQL Server Agent for automated maintenance tasks
  • Plugin installation fails: Verify nopcommerce_data volume is writable and restart nopCommerce container after plugin uploads
  • Theme changes not reflected: Clear nopCommerce cache through admin panel and check if custom CSS files are properly uploaded to App_Data/Themes

Community Notes

Loading...
Loading notes...

Download Recipe Kit

Get all files in a ready-to-deploy package

Includes docker-compose.yml, .env template, README, and license

Ad Space