This is a docker image of a agendav caldav frontend. The Project can be found on https://github.com/adobo/agendav/.
It is configured to use a postgres database and a caldav server that is reachable via docker container linking.
I have two versions of a agendav container:
latest is a current development snapshot. As the developer
of agendav has decided to replace nearly all code in recent
versions expect this to be buggy zo unuseable. (see
https://github.com/adobo/agendav/issues/133 for example)old is a snapshot from 2012 that "mostly" work. It is
based on the agendav_running branch of my forked repo at
https://github.com/janLo/agendav/tree/agendav_runningThe following documentation applies to the latest image. For
documentation of the old version see
https://github.com/janLo/dockerfiles/blob/agendav_old/agendav/README.md
Configuration is done using some environment variables:
DAVICAL_SERVER_NAMEThe Server name to use. It is used for the apache2 config
AGENDAV_TITLEThe title of the agendav installation
AGENDAV_FOOTERThe Footer text of the installation
AGENDAV_DB_NAMEThe name of the database
AGENDAV_DB_USERThe database user
AGENDAV_DB_PASSWORDThe database password
AGENDAV_ENC_KEYThe encryption key for the instance
AGENDAV_CALDAV_SERVERThe caldav url for public caldav links
AGENDAV_TIMEZONEThe timezone
AGENDAV_LANGThe language to use
Create the Database user and tables (assuming you are using the official postgres docker image)
$ docker run -it --rm \
--link davical-postgres:postgres \
postgres \
sh -c 'exec psql -h "$POSTGRES_PORT_5432_TCP_ADDR" -p "$POSTGRES_PORT_5432_TCP_PORT" -U postgres '
$ postgres=# CREATE USER agendav WITH PASSWORD 'xxx';
$ postgres=# CREATE DATABASE agendav ENCODING 'UTF8';
$ postgres=# GRANT ALL PRIVILEGES ON DATABASE agendav TO agendav;
$ postgres=# \q
Create the database tables
$ docker run --rm -ti \
-e AGENDAV_TITLE="My Agendav" \
-e AGENDAV_FOOTER="Simple calendar server" \
-e AGENDAV_DB_NAME="agendav" \
-e AGENDAV_DB_USER="agendav" \
-e AGENDAV_DB_PASSWORD="xxx" \
-e AGENDAV_ENC_KEY="emaePie2thi5aipaizee" \
-e AGENDAV_CALDAV_SERVER="https://my.caldav.com/" \
-e AGENDAV_TIMEZONE="Europe/Berlin" \
-e AGENDAV_LANG="de" \
--link davical-postgres:postgres \
--link boring_nobel:caldav \
agendav \
bash -c "cd /var/www/agendav/bin && ./agendavcli migrations:migrate"
Run the webserver
$ docker run -P -d \
--name agendav \
-e AGENDAV_TITLE="My Agendav" \
-e AGENDAV_FOOTER="Simple calendar server" \
-e AGENDAV_DB_NAME="agendav" \
-e AGENDAV_DB_USER="agendav" \
-e AGENDAV_DB_PASSWORD="xxx" \
-e AGENDAV_ENC_KEY="emaePie2thi5aipaizee" \
-e AGENDAV_CALDAV_SERVER="https://my.caldav.com/" \
-e AGENDAV_TIMEZONE="Europe/Berlin" \
-e AGENDAV_LANG="de" \
--link postgres:postgres \
--link caldav:caldav \
janlo/agendav
Content type
Image
Digest
sha256:053a15816…
Size
110 MB
Last updated
over 9 years ago
docker pull janlo/agendav