This assumes that you have Docker (version 17.05 or greater) and Docker Compose (version 1.6.0 or greater) already installed.
-
Download the
oxibooru
sourceThe latest release can be downloaded from the releases page. Alternatively, you can clone the repository with
user@host:~$ git clone https://github.com/liamw1/oxibooru
However, by doing this you are opting out of stability. The master branch uses the
latest
images, which are updated frequently. Behavior may change when youpull
the images again.Enter the
oxibooru
directory:user@host:~$ cd oxibooru
-
Configure the application
user@host:oxibooru$ cp server/config.toml.dist server/config.toml user@host:oxibooru$ edit server/config.toml
Pay extra attention to these fields:
- password_secret
- content_secret
-
Configure Docker Compose
user@host:oxibooru$ cp doc/example.env .env user@host:oxibooru$ edit .env
Change the values of the variables in
.env
as needed. Read the comments to guide you. Note that.env
should be in the root directory of this repository. -
Pull the containers This pulls the latest containers from docker.io:
user@host:oxibooru$ docker-compose pull
If you have modified the application's source and would like to manually build it, follow the instructions in Building instead, then read here once you're done.
-
Give mount directories permissions
Set owner of mount directories (MOUNT_DATA and MOUNT_SQL in the .env) to the user with id 1000:
user@host:oxibooru$ sudo chown -R 1000:1000 <MOUNT_DATA> user@host:oxibooru$ sudo chown -R 1000:1000 <MOUNT_SQL>
-
Run it!
To start all containers:
user@host:oxibooru$ docker-compose up -d
To view/monitor the application logs:
user@host:oxibooru$ docker-compose logs -f # (CTRL+C to exit)
-
Build the containers
First, start database container:
user@host:oxibooru$ docker-compose up -d sql
Then, build the client and server containers:
user@host:oxibooru$ docker-compose build
Note: If your changes are not taking effect in your builds, consider building
with --no-cache
.