1
0
mirror of https://github.com/fspc/Yellow-Bike-Database.git synced 2025-04-04 09:33:24 -04:00
9
Installation
Jonathan Rosenbaum edited this page 2018-05-06 03:08:22 -04:00

YBDB relies heavily on accurate time calculations.

Make sure you have installed time zone support for mysql or mariadb as explained here. In GNU/Linux you run the mysql_tzinfo_to_sql program from the commandline:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql

The Dockerfile may be found at https://github.com/fspc/ybdb. If you would prefer not to use Docker, you can follow the steps in the Dockerfile to perform a manual install. You may pull the repository (updated infrequently) from the Docker Hub Registry.

How to install with docker-compose

Run docker-compose pull and then docker-compose up -d. By default, your container will be available on port 88.

Advanced environmental changes

The docker-compose.yml file looks for a file called environment. I enjoy using docker-letsencrypt-nginx-proxy-companion, so here is what I add, after changing port in docker-compose.yml from 88:80 to 80:

environment
VIRTUAL_HOST=ybdb.bikelover.org
LETSENCRYPT_HOST=ybdb.bikelover.org
LETSENCRYPT_EMAIL="jr@bikelover.org"

Old Fashioned way

If you do not want to use docker-compose, you may pull the repository:

docker pull bikebike/ybdb

Then run the docker container:

Publish the container's port to the host:

format: ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort

docker run -d -p 88:80 --name="ybdb" bikebike/ybdb

How to test/develop inside the running container process

sudo docker exec -it ybdb /bin/bash

If it produces this error:

rpc error: code = 13 desc = invalid header field value "oci runtime error: exec failed: container_linux.go:247: starting container process caused \"process_linux.go:75: starting setns process caused \\\"fork/exec /proc/self/exe: no such file or directory\\\"\"\n"

then do this before attempting again:

docker stop ybdb
docker start ybdb

Etherpad

Etherpad is a powerful, useful feature. Complete directions are at EtherPad / EtherDraw, and configurations may be found in Connections/database_functions.php (USE Connections/local_configurations.php).