forked from platypush/platypush
Fabio Manganiello
9ebe251d46
- Reduced size of the Ubuntu image by removing some unneeded packages (docutils, manpages, babel, fonts, python-pil etc.) that take a lot of space. - Better self-documented docker-compose.yml. - Added reference to the registry.platypush.tech/platypush image in docker-compose.yml (README reference will follow). - Fixed grep condition in the Docker prepare script. - Pass `--no-deps` to `pip install platypush`. The dependencies of the application, now that `marshmallow_dataclasses` has been removed, are all available in the package managers of the supported images (with the exception for croniter in Alpine Linux for now), so they can all be installed via system package manager rather than pip. This also prevents Ubuntu builds from breaking because system-installed packages are being overwritten with pip-installed copies.
56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
services:
|
|
platypush:
|
|
# Replace the build section with the next line if instead of building the
|
|
# image from a local checkout you want to pull the latest base
|
|
# (Alpine-based) image from the remote registry
|
|
# image: "registry.platypush.tech/platypush:latest"
|
|
|
|
build:
|
|
context: .
|
|
# Alpine base image
|
|
dockerfile: ./platypush/install/docker/alpine.Dockerfile
|
|
# Debian base image
|
|
# dockerfile: ./platypush/install/docker/debian.Dockerfile
|
|
# Ubuntu base image
|
|
# dockerfile: ./platypush/install/docker/ubuntu.Dockerfile
|
|
# Fedora base image
|
|
# dockerfile: ./platypush/install/docker/fedora.Dockerfile
|
|
|
|
restart: "always"
|
|
command:
|
|
- platypush
|
|
- --redis-host
|
|
- redis
|
|
# Or, if you want to run Redis from the same container as Platypush,
|
|
# replace --redis-host redis with the line below
|
|
# - --start-redis
|
|
|
|
# Custom list of host devices that should be accessible to the container -
|
|
# e.g. an Arduino, an ESP-compatible microcontroller, a joystick etc.
|
|
# devices:
|
|
# - /dev/ttyUSB0
|
|
|
|
# Uncomment if you need plugins that require access to low-level hardware
|
|
# (e.g. Bluetooth BLE or GPIO/SPI/I2C) if access to individual devices is
|
|
# not enough or isn't practical
|
|
# privileged: true
|
|
|
|
# Copy .env.example to .env and modify as needed
|
|
# env_file:
|
|
# - .env
|
|
|
|
ports:
|
|
# Comment if you don't have the HTTP backend enable or you don't want to
|
|
# expose it
|
|
- "8008:8008"
|
|
|
|
# volumes:
|
|
# Replace with a path that contains/will contain your config.yaml file
|
|
# - /path/to/your/config:/etc/platypush
|
|
# Replace with a path that contains/will contain your working directory
|
|
# - /path/to/a/workdir:/var/lib/platypush
|
|
# Optionally, use an external volume for the cache
|
|
# - /path/to/a/cachedir:/var/cache/platypush
|
|
|
|
redis:
|
|
image: redis
|