Skip to content

Plone 6 Backend PIP based with RelStorage, RestAPI, Memcached, Graylog, Sentry support (and more)

Notifications You must be signed in to change notification settings

eduard-fironda/plone-backend

This branch is 19 commits ahead of, 7 commits behind eea/plone-backend:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f70f62d · Feb 14, 2025
Feb 14, 2025
Oct 8, 2024
Jul 31, 2023
Feb 6, 2024
Nov 10, 2021
Feb 23, 2022
Feb 4, 2025
Feb 14, 2025
Feb 8, 2025
Jun 1, 2023
Feb 23, 2022
Mar 2, 2022
Feb 4, 2025
Oct 15, 2024

Repository files navigation

Plone 6 (pip) based with RelStorage, RestAPI, Memcached, Graylog, Sentry support (and more)

5.x 6.x Release

Plone 6 (pip) with built-in support for:

  • RelStorage
  • RestAPI
  • LDAP
  • Memcached
  • Graylog
  • Sentry

This image is generic, thus you can obviously re-use it within your own projects.

See 5.x branch for Plone 5.

Releases

Base docker image

Source code

Simple Usage

RestAPI

$ docker run -it --rm -p 8080:8080 -e SITE=Plone eeacms/plone-backend

$ curl -i http://localhost:8080/Plone/++api++ -H 'Accept: application/json'

ZEO

See plone/plone-backend ZEO Server

RelStorage (PostgreSQL)

See plone/plone-backend Relational Database

Now, ask for http://localhost:8080/ in your workstation web browser and add a Plone site (default credentials admin:admin).

See more about Plone at plone-backend

Extending this image

For this you'll have to provide the following custom files:

  • requirements.txt
  • constraints.txt
  • Dockerfile

Below is an example on how to build a custom version of Plone with some add-ons based on this image:

requirements.txt:

eea.facetednavigation
collective.elasticsearch
collective.taxonomy

constraints.txt

eea.facetednavigation==16.0a1
collective.elasticsearch==5.0.0
collective.taxonomy==3.1

Dockerfile:

FROM eeacms/plone-backend

COPY requirements.txt constraints.txt /app
RUN pip install -r requirements.txt -c constraints.txt

and then run

$ docker build -t eeacms/custom-backend .

See for example EEA Main Website backend (Plone 6)

Supported environment variables

See plone/plone-backend Configuration Variables

Graylog

  • GRAYLOG Configure zope inside container to send logs to Graylog. Default logcentral.eea.europa.eu:12201 (e.g.: GRAYLOG=logs.example.com:12201)
  • GRAYLOG_FACILITY Custom GrayLog facility. Default eea.docker.plone (e.g.: GRAYLOG_FACILITY=staging.example.com)

Sentry

  • SENTRY_DSN Send python tracebacks to sentry.io or your custom Sentry installation (e.g.: SENTRY_DSN=https://<public_key>:<secret_key>@sentry.example.com)
  • SENTRY_SITE, SERVER_NAME Add site tag to Sentry logs (e.g.: SENTRY_SITE=foo.example.com)
  • SENTRY_RELEASE Add release tag to Sentry logs (e.g.: SENTRY_RELEASE=5.1.5-34)
  • SENTRY_ENVIRONMENT Add environment tag to Sentry logs. Leave empty to automatically get it from rancher-metadata (e.g.: SENTRY_ENVIRONMENT=staging)

Develop

See develop

Release

See release

Copyright and license

The Initial Owner of the Original Code is European Environment Agency (EEA). All Rights Reserved.

The Original Code is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Funding

European Environment Agency (EU)

About

Plone 6 Backend PIP based with RelStorage, RestAPI, Memcached, Graylog, Sentry support (and more)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 76.8%
  • Makefile 10.1%
  • Dockerfile 7.2%
  • Python 5.9%