Installation¶
Note
davos has been written with Docker at the forefront regarding installation and deployment. This means that you should consider using the pre-built Docker image that LinuxServer have provided for this application.
With Docker¶
This is the recommended method of installation and deployment.
Install Docker¶
Firstly, you’ll need to install Docker, a container engine that is used to fire up user-space virtual containers. I recommend using Docker’s official guide on installing the latest version of Docker CE on your machine, as the steps differ depending on your platform.
Build the container¶
Create a new container from LinuxServer’s image.
docker create \
--name=davos \
-v <path to config>:/config \
-v <path to downloads folder>:/download
-e PGID=<gid> -e PUID=<uid> \
-p 8080:8080 \
linuxserver/davos
Params¶
<path to config>
- The folder on your machine where davos will place its configuration and log files.
Typically this will be somewhere like
/home/me/davos
, but it can be anywhere.
<path to downloads folder>
- The folder on your machine that davos can download files to. This is the volume mount point that davos is aware of for all file downloads.
<uid>
- The id of the user you’d like davos to run as. All files downloaded by davos will be owned by this user.
<gid>
- The id of the group you’d like to attribute to the user davos runs as. All files downloaded by davos will be owned by this group.
Warning
Docker will run all containers as root
by default. Omitting PUID
and PGID
is not recommended.
Run the container¶
Once the container has been created, you can run it.
docker start davos
After about 30 seconds, the application will be running and will be accessible on http://localhost:8080
. If you are running
davos on a remote server, substitute localhost
with the server’s IP address.
Without Docker¶
This is not the recommended method of installation and deployment, but has the potential for being the most configurable and flexible. Davos does not have any prebuilt binaries, so you’ll need to get the source and build it yourself (another reason to use Docker instead).
Get the source¶
wget https://github.com/linuxserver/davos/archive/LatestRelease.zip
unzip LatestRelease.zip -d davos
Configure the application¶
By default, davos is configured to place all of its configuration in /config
, which may
not be preferable if you’re running the application on bare metal. Firstly, reconfigure davos
to use your own defined directory for its database.
In conf/release/application.properties
, change spring.datasource.url
, e.g.:
spring.datasource.url=jdbc:h2:file:/home/me/davos
You’ll also need to do the same in conf/release/log4j2.xml
, this time for the appender:
<RollingFile name="File" fileName="/home/me/davos/logs/davos.log" filePattern="/config/logs/${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH}-%i.log">
Build davos¶
Note
davos requires the Java 8 SDK to build.
Once you’ve updated the configuration locations, you can build the binary.
./gradlew build -Penv=release
This will create “davos-2.2.0.jar” in build/libs
. You should move this somewhere more fitting for an executable (/var/lib
, for example).
It may also be worth renaming the .jar to “davos.jar”, although this is not necessary.
Run davos¶
Note
davos requires the Java 8 JRE to build. This is not required if you already have the SDK installed.
To run the application, run the following command:
java -jar davos.jar