InvenTree/docker/docker-compose.dev.yml

70 lines
2.6 KiB
YAML
Raw Normal View History

version: "3.8"
# Docker compose recipe for InvenTree development server
# - Runs sqlite3 as the database backend
# - Uses built-in django webserver
# IMPORANT NOTE:
# The InvenTree docker image does not clone source code from git.
# Instead, you must specify *where* the source code is located,
# (on your local machine).
# The django server will auto-detect any code changes and reload the server.
services:
# InvenTree web server services
# Uses gunicorn as the web server
inventree-server:
container_name: inventree-server
image: inventree/inventree:latest
entrypoint: ./start_dev_server.sh
ports:
- 8000
depends_on:
- inventree-db
volumes:
# Ensure you specify the location of the 'src' directory at the end of this file
- src:/home/inventree/src
- data:/home/inventree/data
- static:/home/inventree/static
environment:
# Configure a simple sqlite server for development
# Note: You can always change to a different database backend if required!
- INVENTREE_DB_ENGINE=sqlite
- INVENTREE_DB_NAME=inventree
restart: unless-stopped
# Background worker process handles long-running or periodic tasks
inventree-worker:
container_name: inventree-worker
image: inventree/inventree:latest
entrypoint: ./start_worker.sh
depends_on:
- inventree-db
- inventree-server
volumes:
# Ensure you specify the location of the 'src' directory at the end of this file
- data:/home/inventree/data
- static:/home/inventree/static
environment:
# Configure a simple sqlite server for development
# Note: You can always change to a different database backend if required!
- INVENTREE_DB_ENGINE=sqlite
- INVENTREE_DB_NAME=inventree
restart: unless-stopped
volumes:
# NOTE: Change /path/to/src to a directory on your local machine, where the InvenTree source code is located
# This directory must conatin the file *manage.py*
# Persistent data, stored external to the container(s)
src:
driver: local
driver_opts:
type: none
o: bind
# This directory specified where InvenTree source code is stored "outside" the docker containers
# Note: This directory must conatin the file *manage.py*
device: /path/to/src
# Uploaded data / media files, shared between containers
data:
# Static files, shared between containers
static: