Skip to content

MTES-MCT/grist-buildpack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

grist-buildpack

Scalingo Grist buildpack

This buildpack aims at installing a Grist instance on Scalingo and let you configure it at your convenance.

Usage

Add this buildpack environment variable to your Scalingo application to install the Grist server:

BUILDPACK_URL=https://github.com/MTES-MCT/grist-buildpack

Default version Grist is latest found in github releases, but you can choose another one:

scalingo env-set GRIST_VERSION=1.1.10

Warning: container image could be big and build time long.

Configuration

  • Stateless: By default /persist docs are in /tmp folder which is lost at restart.

  • Statefull: You should have an add-on database postgresql, an external S3 storage object (outside) and an OIDC server (e.g. Keycloak-buildpack)

Environment variables are listed in Grist repo

Hacking

Environment variables are set in a .env file. You copy the sample one:

cp docker/stateless/.env.sample .env
# or
cp docker/statefull/.env.sample .env

Run an interactive docker scalingo stack:

# stateless
docker run --name grist -it -p 8484:8484 -v "$(pwd)"/docker/stateless/.env:/env/.env -v "$(pwd)":/buildpack scalingo/scalingo-22:latest bash
# or statefull
docker run --name grist -it -p 8484:8484 -v "$(pwd)"/docker/statefull/.env:/env/.env -v "$(pwd)":/buildpack scalingo/scalingo-22:latest bash

And test in it:

bash buildpack/bin/detect
bash buildpack/lib/env.sh /env/.env /env
bash buildpack/bin/compile /build /cache /env
bash buildpack/bin/release

Run Grist server:

sh /build/grist/boot.sh # http://localhost:8484

You can also use docker-compose stack:

# stateless
docker-compose --env-file docker/stateless/.env -f docker/stateless/docker-compose.yml up --build -d
docker-compose --env-file docker/stateless/.env -f docker/stateless/docker-compose.yml down
# or statefull
docker-compose --env-file docker/statefull/.env -f docker/statefull/docker-compose.yml up --build -d
# You must create bucket in minio server, a user grist and its access key, set in .env then restart grist server
docker-compose --env-file docker/statefull/.env -f docker/statefull/docker-compose.yml down

About

Scalingo Grist buildpack

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages