Home

Awesome

Main-Docker Go Report Card Maintainability Docker Image Size (latest semver)

<h1><a href="https://github.com/aceberg/exercisediary"> <img src="https://raw.githubusercontent.com/aceberg/exercisediary/main/assets/logo.png" width="35" /> </a>Exercise Diary</h1>

Workout diary with GitHub-style year visualization

Screenshot

Quick start

docker run --name exdiary \
-e "TZ=Asia/Novosibirsk" \
-v ~/.dockerdata/ExerciseDiary:/data/ExerciseDiary \
-p 8851:8851 \
aceberg/exercisediary

Or use docker-compose.yml

Binary

PPA for amd64 .deb is here. For other binary options plese look at the latest release.

Config

Configuration can be done through config file or environment variables

VariableDescriptionDefault
AUTHEnable Session-Cookie authenticationfalse
AUTH_EXPIRESession expiration time. A number and suffix: m, h, d or M.7d
AUTH_USERUsername""
AUTH_PASSWORDEncrypted password (bcrypt). How to encrypt password with bcrypt?""
HOSTListen address0.0.0.0
PORTPort for web GUI8851
THEMEAny theme name from https://bootswatch.com in lowcase or additional (emerald, grass, grayscale, ocean, sand, wood)grass
COLORBackground color: light or darklight
HEATCOLORHeatMap color#03a70c
PAGESTEPItems on one page10
TZSet your timezone for correct time""

Options

KeyDescriptionDefault
-dPath to config dir/data/ExerciseDiary
-nPath to local JS and Themes (node-bootstrap)""

Local network only

By default, this app pulls themes, icons and fonts from the internet. But, in some cases, it may be useful to have an independent from global network setup. I created a separate image with all necessary modules and fonts.

docker run --name node-bootstrap       \
    -v ~/.dockerdata/icons:/app/icons  \ # For local images
    -p 8850:8850                       \
    aceberg/node-bootstrap
docker run --name exdiary \
    -v ~/.dockerdata/ExerciseDiary:/data/ExerciseDiary \
    -p 8851:8851 \
    aceberg/exercisediary -n "http://$YOUR_IP:8850"

Or use docker-compose

Roadmap

Moved to docs/ROADMAP.md

Thanks