Giter Club home page Giter Club logo

docker-redaxo's Introduction

Publish

Docker image for REDAXO

This image for REDAXO CMS is developed and maintained by Friends Of REDAXO.

Screenshot

It is published both on Docker Hub and on GitHub Container Registry, so you can choose between:

  • friendsofredaxo/redaxo
  • ghcr.io/friendsofredaxo/redaxo

Supported tags

We provide two image variants:

  • Stable: 5-stable, 5
    Contains the latest stable REDAXO 5.x version and the lowest PHP version with active support.
  • Edge: 5-edge
    Contains the latest REDAXO 5.x, even beta versions, and the latest PHP, even RC versions.
    Use this image for development and testing.

If you’re not sure, you probably want to go for friendsofredaxo/redaxo:5 🚀

Environment variables

System settings:

  • REDAXO_SERVER
  • REDAXO_SERVERNAME
  • REDAXO_ERROR_EMAIL
  • REDAXO_LANG
  • REDAXO_TIMEZONE

Database settings:

  • REDAXO_DB_HOST
  • REDAXO_DB_NAME
  • REDAXO_DB_LOGIN
  • REDAXO_DB_PASSWORD
  • REDAXO_DB_CHARSET: utf8mb4 charset is recommended for full emoji support 🙋 but requires at least MySQL 5.7.7 or MariaDB 10.2! Use utf8 with older database systems.

Admin user to be created:

  • REDAXO_ADMIN_USER
  • REDAXO_ADMIN_PASSWORD: must comply with the password policy (requires at least 8 chars)

(See examples for docker run and docker-compose below)

Usage

Note that we use friendsofredaxo/redaxo:5 for the code examples.

Remember that REDAXO requires a MySQL or MariaDB database. Could be either an external server or another Docker container.

$ docker run \
    --name my-redaxo-project \
    -d \
    -p 80:80 \
    -e REDAXO_SERVER='http://localhost' \
    -e REDAXO_SERVERNAME='My Website' \
    -e REDAXO_ERROR_EMAIL='[email protected]' \
    -e REDAXO_LANG='en_gb' \
    -e REDAXO_TIMEZONE='Europe/London' \
    -e REDAXO_DB_HOST='db' \
    -e REDAXO_DB_NAME='redaxo' \
    -e REDAXO_DB_LOGIN='redaxo' \
    -e REDAXO_DB_PASSWORD='s3cretpasswOrd!' \
    -e REDAXO_DB_CHARSET='utf8mb4' \
    -e REDAXO_ADMIN_USER='admin' \
    -e REDAXO_ADMIN_PASSWORD='PunKisNOT!dead' \
    friendsofredaxo/redaxo:5

Example for REDAXO container with MariaDB container:

version: '3'
services:

  redaxo:
    image: friendsofredaxo/redaxo:5
    ports:
      - 80:80
    volumes:
      - redaxo:/var/www/html
    environment:
      REDAXO_SERVER: http://localhost
      REDAXO_SERVERNAME: 'My Website'
      REDAXO_ERROR_EMAIL: [email protected]
      REDAXO_LANG: en_gb
      REDAXO_TIMEZONE: Europe/London
      REDAXO_DB_HOST: db
      REDAXO_DB_NAME: redaxo
      REDAXO_DB_LOGIN: redaxo
      REDAXO_DB_PASSWORD: 's3cretpasswOrd!'
      REDAXO_DB_CHARSET: utf8mb4
      REDAXO_ADMIN_USER: admin
      REDAXO_ADMIN_PASSWORD: 'PunKisNOT!dead'

  db:
    image: mariadb:10.11
    volumes:
      - db:/var/lib/mysql
    environment:
      MYSQL_DATABASE: redaxo
      MYSQL_USER: redaxo
      MYSQL_PASSWORD: 's3cretpasswOrd!'
      MYSQL_RANDOM_ROOT_PASSWORD: 'yes'

volumes:
  redaxo:
  db:

Recipes

🧁 See recipes section for further examples!

Need help?

If you have questions or need help, feel free to contact us in Slack Chat! You will receive an invitation here: https://redaxo.org/slack/

docker-redaxo's People

Contributors

schuer avatar friendsofredaxo-t avatar bloep avatar dgrothaus-mc avatar skerbis avatar thorol avatar ediathome avatar

Stargazers

 avatar Claudia Heyer avatar  avatar Wolfgang Bund avatar Gilbert Seilheimer avatar Stefan Dannfald avatar Peter Bickel avatar Marco Hanke avatar Tim avatar Gregor Harlan avatar Alex Platter avatar Oliver Hörold avatar Fernando Averanga avatar Hao Xi avatar  avatar Daniel Weitenauer avatar Jan Kristinus avatar  avatar  avatar  avatar Andreas Eberhard avatar Ingo Tegeder avatar Pascal Schuchmann avatar  avatar  avatar

Watchers

Peter Bickel avatar Oliver Kreischer avatar Thomas Blum avatar James Cloos avatar  avatar  avatar  avatar

docker-redaxo's Issues

Replace bash scripting with ZX?

Our update.sh makes use of bash scripting to generate the Docker files, which isn‘t very managable. To improve maintenance within our community, we could switch to ZX and use JavaScript.

Update Routine - Gedankenspielerei

Ich überlege seit ein paar Tagen, ob wir der Installationsroutine mitgeben können, dass sie gegebenenfalls ein Update vom Core macht. @bloep rein prinzipiell wäre das über die Konsole möglich oder?

@schuer aktuell wird geprüft, ob das www Verzeichnis leer ist. Ist es das, wird installiert. Wenn es das nicht ist, steigt das Script aus und startet den Apache. Wenn man an der Stelle nun raus kriegen würde, welche Redaxo Version installiert ist und welche Version über die docker-compose definiert ist, könnte das doch klappen.

Was meint ihr? Brauchbare/umsetzbare Idee?

REDAXO 5.16.0 Beta ergänzen

Eine erste Beta-Version wurde eben veröffentlicht: https://github.com/redaxo/redaxo/releases/tag/5.16.0-beta1

Vielleicht hat jemand Lust, das Docker-Image damit auszustatten? Das geht so:

  1. In der README den Abschnitt lesen: »REDAXO oder PHP aktualisieren«
  2. Projekt forken oder einen neuen Branch anlegen
  3. Die Angaben für die neue REDAXO-Beta in /source/images.yml aktualisieren. Weil es eine Beta-Version ist, statten wir nur das Edge-Image (unten) damit aus, nicht das Stable-Image (oben). Am Anfang der Datei steht, wie man mittels Curl den Hashwert ermittelt.
  4. Einen Pull Request starten
  5. Abwarten, bis die automatischen Tests durchgelaufen sind und um Review bitten

Sobald gemerged worden ist, sind 15-20 Minuten später die Images im Docker Hub und bei GitHub verfügbar. 🐳

Add recipes

…for common configs like Apache + MySQL, MariaDb, Nginx, Alpine stuff… et al

Provide AVIF support for REX 5.15 / PHP 8.1+

Since libavif-dev is broken in Debian Bullseye stable (0.8.4), we have to fetch a newer Backports version (0.9.3):

# add debian backports repository
# see https://wiki.debian.org/Backports
RUN echo 'deb http://deb.debian.org/debian bullseye-backports main' >> /etc/apt/sources.list
# install newer packages from backports
apt-get install -t bullseye-backports -y --quiet --no-install-recommends \
    # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=976349
    libavif-dev \
; \

Idea: remove alpine images + hotfix tags?

Alpine:
Wir bieten Alpine-Images an, weil es recht üblich ist und andere das auch so machen. Meine Vermutung ist aber, dass diese kaum mit REDAXO genutzt werden. Zudem machen sie uns merklichen Aufwand mit separaten Templates, Recherche und Testing.
Ich möchte deshalb vorschlagen, die Alpine-Images komplett zu entfernen. Wer sie unbedingt benötigt, könnte Forken und selbst publizieren oder einfach lokal mit unserem alten Code bauen.

Hotfix-Tags:
Aktuell nehmen wir alle REDAXO-Hotfix-Releases mit und bieten Tags an wie 5.13.1. Auch hier meine Vermutung, dass die vielen Zwischenversionen unnötig sind, und dass wir schlicht immer das letzte Hotfix-Release anbieten sollten unter dem jeweiligen Feature-Tag. Der Tag 5.13 würde dann REDAXO 5.13.1 enthalten, der Tag 5.12 entsprechend das aktuellste REX 5.12.x, usw.

Man könnte das sogar noch weiter reduzieren und nur noch den Major-Tag 5 verwenden, bei dem nur noch das aktuellste REDAXO-Release enthalten ist. Allerdings gibt es ja durchaus ein paar wichtige Meilensteine innerhalb der 5er-Historie, so dass man den Nutzern vielleicht die Möglichkeit nicht nehmen sollte, ältere REDAXO-Images zu installieren.

Was meinen die anderen?

  • Alpine entfernen?
  • Hotfix-Tags entfernen und nur noch Feature-Tags 5.x nutzen?
  • Oder sogar nur noch das aktuellste REDAXO mit dem Major-Tag 5 anbieten?

@bloep @gharlan und alle Mitlesenden?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.