/docker-fittrackee

Primary LanguageDockerfileGNU General Public License v3.0GPL-3.0

docker-fittrackee

Docker sample to install FitTrackee


FitTrackee is a self-hosted application, allowing you to track your outdoor activities (workouts) from gpx files and keep your data on your own server.

  • To install FitTrackee with database initialisation and run the application:
  $ git clone https://github.com/SamR1/docker-fittrackee.git
  $ cd docker-fittrackee
  $ $EDITOR db/create.sql  # update fittrackee user password
  $ cp .env.example .env
  $ mkdir [FITTRACKEE_LOG_DIR]  # create a directory to store fittrackee logs
  $ $EDITOR .env  # update environment variables (see Documentation)
  $ make build up init

With default configuration (no EMAIL_URL set), email sending is disabled.

  • Open http://localhost:5000 and register.

  • To set admin rights to the newly created account, use the following command: Note: it also activates account.

   $ make set-admin USERNAME=<username>
  • To stop docker containers:
    $ make stop
  • To start docker containers:
    $ make up
  • To start Fittrackee application:
    $ make run
  • To start Fittrackee application and dramatiq workers (with Redis) in order to send emails:
    $ make run-all

Warning: EMAIL_URL must be initialized.

  • To update FitTrackee
    $ make stop-all
    $ make update migrate 
    $ make run-all  # after checking update and migration went well
  • To run shell inside Fittrackee container (with virtualenv):
    $ make shell

Notes:

  • Important: all uncommented variables present in .env must be initialized. Otherwise, the application may not start.
  • If you just want to evaluate FitTrackee, ready to use docker files are available in FitTrackee repository (see Documentation).

Troubleshooting:

  • If installation or startup fails, check the environment variables.
  • The commands can be run separately when debugging, for instance:
$ make build
$ make up
$ make migrate
$ make run

make up can be replaced with docker-compose up (without detach option to prevent containers from running in background and to display some errors).