Docker environment for developing, deploying, and running Frappe applications (ERPNext and custom apps) in production and development
Find a file
2026-05-08 16:41:30 +02:00
.github fix(workflows): allow stable env update push 2026-04-24 17:29:39 +02:00
.vscode chore(lint): Run prettier 2021-12-10 11:53:43 +03:00
devcontainer-example chore(compose): use MariaDB 11.8 and remove obsolete MariaDB 10.6 workaround 2026-04-18 21:18:22 +02:00
development chore(vscode): show git folder 2026-04-15 12:44:03 +02:00
docs Reapply "feat(images): toggle chromium installation" 2026-05-08 16:38:52 +02:00
images Reapply "fix all entrypoint.sh permissions to 755" 2026-05-08 16:41:30 +02:00
overrides feat(migrator): add multi-site support to migration 2026-04-30 23:15:58 +02:00
resources/core fix(assets): link assets at container init 2026-04-30 13:32:25 +02:00
tests style: fix linting issues with black 2026-03-18 10:14:54 +07:00
.dockerignore Global refactoring (#617) 2022-03-14 11:23:03 +05:30
.editorconfig chore: Use pre-commit framework (#604) 2021-12-10 11:48:00 +03:00
.gitignore fix(lint): resolve pre-commit formatting 2026-03-19 11:57:06 +01:00
.pre-commit-config.yaml chore(pre-commit): exclude docs pnpm lockfile from prettier 2026-03-19 12:25:24 +01:00
.shellcheckrc chore(lint): Take hooks configs out so linting works without pre-commit too (#609) 2021-12-10 12:31:44 +03:00
CODE_OF_CONDUCT.md #1402 Environment variables for custom image (#1403) 2024-06-08 00:21:17 +05:30
compose.yaml fix: update compose.yaml 2026-04-02 18:55:05 +02:00
CONTRIBUTING.md feat(ci): split core image workflows and publish base images to ghcr 2026-04-21 19:05:00 +02:00
docker-bake.hcl feat(ci): split core image workflows and publish base images to ghcr 2026-04-21 19:05:00 +02:00
example.env chore: Update example.env 2026-05-05 17:03:26 +00:00
install_x11_deps.sh Cypress UI Test service and updates to installer.py (#1250) 2023-10-26 08:35:31 +05:30
LICENSE chore: Rename LICENSE.md to LICENSE (#608) 2021-12-10 16:25:57 +05:30
MAINTAINERS.md docs: add MAINTAINERS.md to document project maintainers 2026-04-12 15:12:42 +02:00
pwd.yml chore: Update example.env 2026-05-05 17:03:26 +00:00
README.md docs(readme): refresh README header and overview 2026-04-22 15:28:45 +02:00
requirements-test.txt chore(deps): bump pytest from 9.0.2 to 9.0.3 2026-04-08 08:24:16 +00:00
setup.cfg Use pytest (#705) 2022-03-24 10:40:56 +03:00

Frappe Docker

Frappe Docker

Docker images and orchestration for Frappe applications.

Build Stable Build Develop Docs

What is this?

This repository is the official container setup for Frappe applications.

It provides Docker images, Compose configurations, and documentation for running Frappe applications, including ERPNext, CRM, Helpdesk, and other Frappe apps, in containers.

Use it if you want to:

  • run ERPNext, CRM, Helpdesk, or other Frappe apps with Docker
  • start from a quick demo setup
  • use production-ready Docker images and Compose setups
  • build custom app images
  • deploy and operate Frappe in production

Repository Structure

frappe_docker/
├── docs/                 # Complete documentation
├── overrides/            # Docker Compose configurations for different scenarios
├── compose.yaml          # Base Compose File for production setups
├── pwd.yml               # Single Compose File for quick disposable demo
├── images/               # Dockerfiles for building Frappe images
├── development/          # Development environment configurations
├── devcontainer-example/ # VS Code devcontainer setup
└── resources/            # Helper scripts and configuration templates

This section describes the structure of this repository, not the Frappe framework itself.

Key Components

  • docs/ - Canonical documentation for all deployment and operational workflows
  • overrides/ - Opinionated Compose overrides for common deployment patterns
  • compose.yaml - Base compose file for production setups (production)
  • pwd.yml - Disposable demo environment (non-production)

Documentation

The full frappe_docker documentation is available in docs/ and published at frappe.github.io/frappe_docker.

Recommended entry points:

Prerequisites

For Docker basics and best practices refer to Docker's documentation

Demo setup

The fastest way to try Frappe locally is with the single-file demo setup in pwd.yml.

Try on your environment

⚠️ Disposable demo only

This setup is intended for short-lived evaluation only. You will not be able to install custom apps to this setup. For production deployments, custom configurations, and detailed explanations, see the full documentation.

First clone the repo:

git clone https://github.com/frappe/frappe_docker
cd frappe_docker

Then run:

docker compose -f pwd.yml up -d

Wait for a couple of minutes for ERPNext site to be created or check create-site container logs before opening browser on port 8080. (username: Administrator, password: admin)

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

This repository is only for container related stuff. You also might want to contribute to:

Resources

License

This repository is licensed under the MIT License. See LICENSE for details.