mirror of
https://github.com/daledavies/jump.git
synced 2026-08-05 19:31:17 +02:00
Add Kubernetes documentation (#115)
This commit is contained in:
97
README.md
97
README.md
@@ -31,7 +31,8 @@ Note - the demo instance is hosted on a render.com free tier so may take a few s
|
||||
|
||||
Get the container image from Docker Hub (https://hub.docker.com/r/daledavies/jump).
|
||||
|
||||
The following will start Jump and serve the page at http://localhost:8123 with a custom site name, Open Weather Map support, and volumes to map Jump's "backgrounds", "favicon", "search" and "sites" directories to local directories on your machine (`OWMAPIKEY` and `LATLONG` values below are just for example)...
|
||||
The following will start Jump and serve the page at http://localhost:8123 with a custom site name, Open Weather Map support, and volumes to map Jump's "backgrounds", "favicon", "search" and "sites" directories to local directories on your machine.
|
||||
`OWMAPIKEY` and `LATLONG` values below are just for example - refer to the [environment variables](https://github.com/daledavies/jump?tab=readme-ov-file#environment-variables).
|
||||
|
||||
```yaml
|
||||
version: '3'
|
||||
@@ -51,6 +52,66 @@ services:
|
||||
LATLONG: '51.509865,-0.118092'
|
||||
```
|
||||
|
||||
#### Volume Mapping
|
||||
|
||||
You can map the "backgrounds", "favicon", "search" and "sites" directories to local directories as shown in the Docker Compose example above. Your local directories will be populated with Jump's default files when the container is next started unless the local directories already contain files, in which case the local files will be used by Jump instead.
|
||||
|
||||
#### Docker
|
||||
|
||||
The same can be achieved just using Docker CLI...
|
||||
|
||||
```bash
|
||||
docker run -d -p 8123:8080 \
|
||||
--volume <path/to/backgrounds>:/backgrounds \
|
||||
--volume <path/to/favicon>:/favicon \
|
||||
--volume <path/to/sites>:/sites \
|
||||
--volume <path/to/search>:/search \
|
||||
--env SITENAME='Custom site name' \
|
||||
--env OWMAPIKEY='<open weather api key>' \
|
||||
--env LATLONG='<lat,long>' \
|
||||
--name jump docker.io/daledavies/jump
|
||||
```
|
||||
|
||||
### Kubernetes
|
||||
|
||||
There is a [Helm chart for Jump](https://artifacthub.io/packages/helm/djjudas21/jump), provided by @djjudas21.
|
||||
|
||||
Enable the Helm repo:
|
||||
|
||||
```sh
|
||||
helm repo add djjudas21 https://djjudas21.github.io/charts/
|
||||
```
|
||||
|
||||
Check out the default [values.yaml](https://github.com/djjudas21/charts/blob/main/charts/jump/values.yaml) and make your own copy,
|
||||
overriding the values are necessary. All the same [environment variables](https://github.com/daledavies/jump?tab=readme-ov-file#environment-variables)
|
||||
are supported.
|
||||
|
||||
The key difference is that there is no need to create and mount `sites.json` and `search.json`. Enter your sites and search engines config
|
||||
as YAML in `values.yaml` and Helm will create Kubernetes [ConfigMap](https://kubernetes.io/docs/concepts/configuration/configmap/) resources
|
||||
and mount them into the container as virtual files.
|
||||
|
||||
Finally, install Jump with Helm:
|
||||
|
||||
```sh
|
||||
helm install my-jump djjudas21/jump -f values.yaml
|
||||
```
|
||||
|
||||
### Without Docker
|
||||
|
||||
Clone this repository and copy everything within the `jumpapp` directory to your server, edit `config.php` accordingly.
|
||||
|
||||
Install dependencies via composer by running the following command within the web root...
|
||||
|
||||
```bash
|
||||
composer install --no-dev
|
||||
```
|
||||
|
||||
Make sure you have created a cache directory and given the web user permission to write to it, the cache directory should match your `config.php` entry for `cachedir`.
|
||||
|
||||
## Configuration
|
||||
|
||||
### Environment variables
|
||||
|
||||
You can use the following optional environment variables to configure/customise your Jump site...
|
||||
|
||||
- `SITENAME` - Custom site name.
|
||||
@@ -83,40 +144,6 @@ You can use the following optional environment variables to configure/customise
|
||||
|
||||
**NOTE:** The `OWMAPIKEY` and `LATLONG` config options must be defined together. `DOCKERSOCKET` and `DOCKERPROXYURL` are mutually exclusive.
|
||||
|
||||
#### Volume Mapping
|
||||
|
||||
You can map the "backgrounds", "favicon", "search" and "sites" directories to local directories as shown in the Docker Compose example above. Your local directories will be populated with Jump's default files when the container is next started unless the local directories already contain files, in which case the local files will be used by Jump instead.
|
||||
|
||||
#### Docker
|
||||
|
||||
The same can be achieved just using Docker CLI...
|
||||
|
||||
```bash
|
||||
docker run -d -p 8123:8080 \
|
||||
--volume <path/to/backgrounds>:/backgrounds \
|
||||
--volume <path/to/favicon>:/favicon \
|
||||
--volume <path/to/sites>:/sites \
|
||||
--volume <path/to/search>:/search \
|
||||
--env SITENAME='Custom site name' \
|
||||
--env OWMAPIKEY='<open weather api key>' \
|
||||
--env LATLONG='<lat,long>' \
|
||||
--name jump docker.io/daledavies/jump
|
||||
```
|
||||
|
||||
### Without Docker
|
||||
|
||||
Clone this repository and copy everything within the `jumpapp` directory to your server, edit `config.php` accordingly.
|
||||
|
||||
Install dependencies via composer by running the following command within the web root...
|
||||
|
||||
```bash
|
||||
composer install --no-dev
|
||||
```
|
||||
|
||||
Make sure you have created a cache directory and given the web user permission to write to it, the cache directory should match your `config.php` entry for `cachedir`.
|
||||
|
||||
## Configuration
|
||||
|
||||
### Open Weather Map
|
||||
|
||||
You can configure Jump to get local time and weather updates by adding an Open Weather Map API key to `config.php` or passing the `OWMAPIKEY ` environment variable to the Docker container (as described above).
|
||||
|
||||
Reference in New Issue
Block a user