4.3 KiB
Everything about Frappe and ERPNext in containers.
Getting Started
To get started you need Docker, docker-compose, and git setup on your machine. For Docker basics and best practices refer to Docker's documentation. After that, clone this repo:
git clone https://github.com/frappe/frappe_docker
cd frappe_docker
Try in Play With Docker

Wait for 5 minutes for ERPNext site to be created or check create-site
container logs before opening browser on port 8080. (username: Administrator
, password: admin
)
Documentation
Production
- List of containers
- Single Compose Setup
- Environment Variables
- Single Server Example
- Setup Options
- Site Operations
- Backup and Push Cron Job
- Port Based Multi Tenancy
- Migrate from multi-image setup
- running on linux/mac
Custom Images
Development
Troubleshoot
Shiloh Setup
based on: https://raw.githubusercontent.com/frappe/bench/develop/easy-install.py
clone frappe-docker repo
sites = [erp.sprinklersnorthwest.com] email = support@lasthourhosting.org admin_pass db_pass
cd frappe-docker
cp example.env .env
Write inside of env: f"ERPNEXT_VERSION={erpnext_version}\n", f"DB_PASSWORD={db_pass}\n", "DB_HOST=db\n", "DB_PORT=3306\n", "REDIS_CACHE=redis-cache:6379\n", "REDIS_QUEUE=redis-queue:6379\n", "REDIS_SOCKETIO=redis-socketio:6379\n", f"LETSENCRYPT_EMAIL={email}\n", f"SITE_ADMIN_PASS={admin_pass}\n", f"SITES={quoted_sites}\n",
sudo docker compose --project-name brotherton -f compose.yaml -f overrides/compose.mariadb.yaml -f overrides/compose.redis.yaml -f overrides/compose.https.yaml --env-file .env config
Make images/production/Containerfile available as a package on githaven? need to replace the erpnext repo argument inside it. inside of compose.yaml, replace "image: frappe/erpnext" with the above package.
. .env
sudo docker compose -p brotherton -f compose.yaml up -d
The "erpnext" in this command is probably fine, I think the bench get-app inside the docker compose gets the erpnext repository and puts it into an erpnext "app", regardless of what the erpnext repo env variable is. This command only works if SITES contains a single site.
sudo docker compose -p brotherton exec backend bench new-site "$SITES" --no-mariadb-socket --db-root-password "$DB_PASSWORD" --admin-password "$SITE_ADMIN_PASS" --install-app erpnext --set-default
Contributing
If you want to contribute to this repo refer to CONTRIBUTING.md
This repository is only for container related stuff. You also might want to contribute to: