mirror of
https://github.com/Cian-H/I-Form_Research_Server_Stack.git
synced 2026-04-04 20:47:59 +01:00
Test of substack based deployment
This commit is contained in:
111
frontend.yaml
Normal file
111
frontend.yaml
Normal file
@@ -0,0 +1,111 @@
|
||||
version: "3.8"
|
||||
|
||||
include:
|
||||
- volumes.yaml
|
||||
- networks.yaml
|
||||
- secrets.yaml
|
||||
|
||||
services:
|
||||
# This service runs a grafana instance for hosting dashboards
|
||||
grafana:
|
||||
image: grafana/grafana:latest
|
||||
ports:
|
||||
- "3000:3000"
|
||||
volumes:
|
||||
- grafana:/var/lib/grafana
|
||||
deploy:
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
networks:
|
||||
- i-form_research_server_stack
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.go.rule=Path(`/`)"
|
||||
- "traefik.http.services.go.loadbalancer.server.port=3000"
|
||||
# Then, we add neodash as a service that can be used to visualize the neo4j database
|
||||
# This should provide the real AI assisted punching power for this stack
|
||||
neodash:
|
||||
image: neo4jlabs/neodash:latest
|
||||
depends_on:
|
||||
- neo4j
|
||||
ports:
|
||||
- "5005:5005"
|
||||
deploy:
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
networks:
|
||||
- i-form_research_server_stack
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.go.rule=Path(`/`)"
|
||||
- "traefik.http.services.go.loadbalancer.server.port=5005"
|
||||
# Lastly, we need a LIMS system, but we're not sure which one to use yet
|
||||
# As a test, we'll run senaite, with elabftw for lab notebook functionality
|
||||
senaite:
|
||||
image: senaite/senaite:edge
|
||||
ports:
|
||||
- "8082:8080"
|
||||
volumes:
|
||||
- senaite:/data
|
||||
networks:
|
||||
- i-form_research_server_stack
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.go.rule=Path(`/`)"
|
||||
- "traefik.http.services.go.loadbalancer.server.port=8080"
|
||||
# We also need to add a service for the elabftw instance and its database
|
||||
elabftw:
|
||||
image: elabftw/elabimg:latest
|
||||
# tty: true
|
||||
# stdin_open: true
|
||||
deploy:
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
depends_on:
|
||||
- mysql
|
||||
cap_drop:
|
||||
- ALL
|
||||
cap_add:
|
||||
- CHOWN
|
||||
- SETGID
|
||||
- SETUID
|
||||
- FOWNER
|
||||
- DAC_OVERRIDE
|
||||
secrets:
|
||||
- elabftw_sql_key
|
||||
- elabftw_secret_key
|
||||
environment:
|
||||
SECRET_KEY: /run/secrets/elabftw_secret_key
|
||||
DB_HOST: "localhost"
|
||||
DB_PORT: "3306"
|
||||
DB_NAME: "elabftw"
|
||||
DB_USER: "elabftw"
|
||||
DB_PASSWORD: "test" # "/run/secrets/elabftw_sql_key"
|
||||
# - DB_PASSWORD=$$DB_PASSWORD
|
||||
# DB_CERT_PATH: "/mysql-cert/cert.pem"
|
||||
PHP_TIMEZONE: "Europe/Paris"
|
||||
TZ: "Europe/Paris"
|
||||
SERVER_NAME: "I-Form eLabFTW"
|
||||
SITE_URL: "127.0.0.1:443" # "elab.i-form.ie"
|
||||
DISABLE_HTTPS: 1
|
||||
ENABLE_LETSENCRYPT: 0
|
||||
ports:
|
||||
- "3148:443"
|
||||
# - "443:443"
|
||||
volumes:
|
||||
- elabftw_uploads:/elabftw/uploads
|
||||
- elabftw_var:/var/elabftw
|
||||
- elabftw_etc:/etc/elabftw
|
||||
# if you have enabled letsencrypt, uncomment the line below
|
||||
# path to the folder with TLS certificate + private key
|
||||
# host:container
|
||||
#- /etc/letsencrypt:/ssl
|
||||
networks:
|
||||
- i-form_research_server_stack
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.go.rule=Path(`/`)"
|
||||
- "traefik.http.services.go.loadbalancer.server.port=443"
|
||||
Reference in New Issue
Block a user