12 Commits

Author SHA1 Message Date
8168ce327b chore(Gitea): Upgrade to 1.15.5
https://github.com/go-gitea/gitea/releases/tag/v1.15.4
https://github.com/go-gitea/gitea/releases/tag/v1.15.5
2021-10-25 09:52:26 +02:00
50f2b22523 docs: Add more documentation 2021-10-23 00:45:25 +02:00
88af04b233 feat(Hedgedoc): Add configuration variables
https://docs.hedgedoc.org/configuration/
2021-10-11 09:23:11 +02:00
671d8e0d6d feat(Hedgedoc): Add authentication variable
https://docs.hedgedoc.org/configuration/
2021-10-11 09:09:57 +02:00
d1b92e0a17 feat(Directus): Add variable for Traefik router name 2021-10-08 12:50:31 +02:00
6c4c387234 Merge pull request 'feat(Directus): Add new service' (#4) from directus into master
Reviewed-on: https://git.weko.io/weko/services/pulls/4
2021-10-08 12:33:23 +02:00
f204561f5f feat(Directus): Add new service 2021-10-08 12:30:49 +02:00
2fbb7ca0ca chore(Gitea): Upgrade to 1.15.3
https://github.com/go-gitea/gitea/releases/tag/v1.15.3
2021-09-27 11:06:54 +02:00
9f4327cae2 chore(Traefik): Upgrade to 2.5.3
https://github.com/traefik/traefik/releases/tag/v2.5.3
2021-09-27 10:54:56 +02:00
0d52bdfd59 chore(Grafana): Upgrade to 8.1.5
https://github.com/grafana/grafana/releases/tag/v8.1.5
2021-09-27 10:43:16 +02:00
c8f242428a chore(Hedgedoc): Upgrade to 1.9.0
https://github.com/linuxserver/docker-hedgedoc/releases/tag/1.9.0-ls31
2021-09-27 10:27:14 +02:00
b22d545ed6 fix(Hedgedoc): Backup uploaded files
Environment variables take precedence over configurations from the config files, so don't backup it.
2021-09-15 22:38:23 +02:00
11 changed files with 118 additions and 12 deletions

View File

@ -1,6 +1,6 @@
# Services
Vous trouverez dans ce dépôt l'ensemble des services Open Source que j'utilise et mets à jour quotidiennement.
Vous trouverez dans ce dépôt l'ensemble des services Open Source que RésiLien utilise et mets à jour de façon presque hebdomadaire. L'ensemble des variable d'environnement enregistré dans les fichiers `.env` sont présent pour une logique d'exemple et n'ont jamais été utilisé en production. Nous vous conseillons de jamais le faire si vous utilisez le dépôt.
## Liste des services
@ -8,21 +8,22 @@ Vous trouverez dans ce dépôt l'ensemble des services Open Source que j'utilise
- [HedgeDoc](./hedgedoc) : Prise de note en Markdown collaborative en temps réel
- [Nextcloud](./nextcloud) : Site d'hébergement de fichiers et une plateforme de collaboration
- [Directus](./directus) : Permet d'administrer une base de données
### Pour les devs / ops
- [Drone](./drone) `en pause` : Un service d'intégration continue
- [Drone](./drone) ⏸️ `en pause` : Un service d'intégration continue
- [Gitea](./gitea) : Un service Git auto-hébergé très simple à installer et à utiliser. Il est similaire à GitHub, Bitbucket ou Gitlab.
- [Grafana](./grafana) : Un outil de supervision simple et élégant
- [PostgreSQL](./postgres) : PostgreSQL est un système de gestion de base de données relationnelle et objet.
- [Prometheus](./prometheus) : Un logiciel de surveillance informatique
- [Docker Registry](./registry) : Une application qui permet de distribuer des images Docker
- [Traefik](./traefik) : Traefik, un reverse-proxy pour vos conteneurs
- [Watchtower](./watchtower) `en pause` : Automatiser la mise à jour d'image docker
- [Watchtower](./watchtower) : Automatiser la mise à jour d'image docker
## Comment ça marche ?
Vous pouvez réutiliser ce dépôt pour votre infrastructure. J'ai mis une documentation dans le dossier [_examples_](./examples).
Vous pouvez réutiliser ce dépôt pour vos services, une documentation dans le dossier [_examples_](./examples).
### Docker et Docker Compose
@ -35,6 +36,8 @@ Voici les commandes de base :
### ./run
> 🚧 RésiLien a changé de façon de faire et nous n'utilisons plus les scripts `run`. Nous passons maintenant par Ansible. Les scripts ne seront plus mise à jour et finirons peut être par être supprimé. Utilisez les avec précaution.
Vous pourrez trouver dans les dossiers des services un script bash `run`. Le principe est de faciliter la maintenance de chaque service.
Vous pouvez lancer le script sans paramètre pour afficher la documentation du script.
@ -55,6 +58,8 @@ En haut de chaque script il y a `set -eu` qui veut dire :
## Tâches
> 🚧 Ses tâches ne sont pas à jour
Général :
- [ ] Mettre en place une rotation des logs

30
directus/.env Normal file
View File

@ -0,0 +1,30 @@
########
# DOCKER
#DOCKER_CONTEXT=
#DOCKER_HOST=
SERVICES_DIR=..
COMPOSE_FILE=./docker-compose.yml:${SERVICES_DIR}/postgres/docker-compose.yml:${SERVICES_DIR}/redis/docker-compose.yml:${SERVICES_DIR}/traefik/docker-compose.network.yml
#COMPOSE_PROJECT_NAME=
##########
# DIRECTUS
#
# see https://github.com/directus/directus/blob/main/api/example.env
DIRECTUS_DOMAIN=directus.cool.life
DIRECTUS_KEY=255d861b-5ea1-5996-9aa3-922530ec40b1
DIRECTUS_SECRET=6116487b-cda1-52c2-b5b5-c8022c45e263
DIRECTUS_ADMIN_EMAIL=admin@example.com
DIRECTUS_ADMIN_PASSWORD=d1r3ctu5
# DIRECTUS_PUID=
# DIRECTUS_PGID=
##########
# POSTGRES
POSTGRES_USER=user-example
POSTGRES_PASSWORD=password-example
POSTGRES_DB=postgres-database-name-example
POSTGRES_CONTAINER_NAME=directus-postgres
POSTGRES_VOLUME_NAME=directus-postgres

18
directus/README.md Normal file
View File

@ -0,0 +1,18 @@
# Directus
> Directus wraps your new or existing SQL database with a realtime GraphQL+REST API for developers, and an intuitive admin app for non-technical users.
## Configuration
[De nombreuses variables d'environnement][documentation] peuvent être précisé pour configurer Directus.
## Liens
- [Site officiel][website]
- [Github][github]
- [L'image Docker][docker]
[website]: https://directus.io/
[docker]: https://hub.docker.com/r/directus/directus
[github]: https://github.com/directus/directus/
[documentation]: https://docs.directus.io/reference/environment-variables/

View File

@ -0,0 +1,46 @@
---
version: "3.8"
volumes:
directus:
name: ${DIRECTUS_VOLUME_NAME:-directus}
services:
directus:
container_name: ${DIRECTUS_CONTAINER_NAME:-directus}
image: ${DIRECTUS_IMAGE:-directus/directus:9.0.0-rc.95}
restart: always
volumes:
- directus:/directus/uploads
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- postgres
- redis
environment:
KEY: ${DIRECTUS_KEY:?err}
SECRET: ${DIRECTUS_SECRET:?err}
TELEMETRY: false
ADMIN_EMAIL: ${DIRECTUS_ADMIN_EMAIL:?err}
ADMIN_PASSWORD: ${DIRECTUS_ADMIN_PASSWORD:?err}
PUBLIC_URL: ${DIRECTUS_PUBLIC_URL:?err}
DB_CLIENT: 'pg'
DB_HOST: ${POSTGRES_CONTAINER_NAME:-postgres}
DB_PORT: '5432'
DB_DATABASE: ${POSTGRES_DB:?err}
DB_USER: ${POSTGRES_USER:?err}
DB_PASSWORD: ${POSTGRES_PASSWORD:?err}
CACHE_ENABLED: 'true'
CACHE_STORE: 'redis'
CACHE_REDIS: 'redis://${REDIS_CONTAINER_NAME:-redis}:6379'
PUID: ${DIRECTUS_PUID:-1000}
PGID: ${DIRECTUS_PGID:-1000}
labels:
- traefik.enable=true
- traefik.docker.network=${TRAEFIK_NETWORK_NAME:-traefik}
- traefik.http.routers.${TRAEFIK_ROUTER_NAME:-directus}.rule=Host(`${DIRECTUS_DOMAIN:?err}`)
- traefik.http.routers.${TRAEFIK_ROUTER_NAME:-directus}.entrypoints=web

View File

@ -13,3 +13,5 @@ Si nous allons dans le dossier `traefik.cool.life` par example, il est possible
## DOCKER_HOST
Si vous gérez des serveurs à distance, il est possible d'utiliser la variable `DOCKER_HOST` dans votre fichier `.env` pour expliquer que le service doit sexécuter sur ce serveur.
> Résilien utilise maintenant ce système avec une génération automatique des fichiers .env à l'aide d'Ansible, nous permettant de facilement déployer un nouveau service, de le déplacer de serveur

View File

@ -7,7 +7,7 @@ volumes:
services:
gitea:
container_name: ${GITEA_CONTAINER_NAME:-gitea}
image: ${GITEA_IMAGE:-gitea/gitea:1.15.2}
image: ${GITEA_IMAGE:-gitea/gitea:1.15.5}
restart: always
environment:
# - USER_UID=1000

View File

@ -12,7 +12,7 @@ volumes:
services:
grafana:
container_name: ${GRAFANA_CONTAINER_NAME:-grafana}
image: ${GRAFANA_IMAGE:-grafana/grafana:8.1.3}
image: ${GRAFANA_IMAGE:-grafana/grafana:8.1.5}
restart: always
volumes:
- grafana:/var/lib/grafana

View File

@ -11,7 +11,7 @@ La configuration est séparé en 3 fichiers :
## Configuration
[De nombreuses variables d'environnement][documentation] peuvent être précisé pour configurer HedgeDoc.
[De nombreuses variables d'environnement][documentation] peuvent être précisé pour configurer HedgeDoc, elles n'ont pas tous été intégrées.
Modifier les variables dans le fichier [`.env`](../examples/hedgedoc.example.com/.env).

View File

@ -7,12 +7,12 @@ volumes:
services:
hedgedoc:
container_name: ${HEDGEDOC_CONTAINER_NAME:-hedgedoc}
image: ${HEDGEDOC_IMAGE:-linuxserver/hedgedoc:1.8.2-ls23}
image: ${HEDGEDOC_IMAGE:-linuxserver/hedgedoc:1.9.0-ls31}
restart: always
depends_on:
- postgres
volumes:
- hedgedoc:/config
- hedgedoc:/opt/hedgedoc/public/uploads
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
environment:
@ -23,8 +23,11 @@ services:
NODE_ENV: ${NODE_ENV:-development} # `production` or `development`
CMD_PROTOCOL_USESSL: ${CMD_PROTOCOL_USESSL:-false}
CMD_ALLOW_GRAVATAR: ${CMD_ALLOW_GRAVATAR:-true}
CMD_ALLOW_ANONYMOUS: ${CMD_ALLOW_ANONYMOUS:-true}
CMD_ALLOW_ANONYMOUS_EDITS: ${CMD_ALLOW_ANONYMOUS_EDITS:-false}
CMD_ALLOW_FREEURL: ${CMD_ALLOW_FREEURL:-false}
CMD_ALLOW_EMAIL_REGISTER: ${CMD_ALLOW_EMAIL_REGISTER:-true}
CMD_REQUIRE_FREEURL_AUTHENTICATION: ${CMD_REQUIRE_FREEURL_AUTHENTICATION:-false}
CMD_DEFAULT_PERMISSION: ${CMD_DEFAULT_PERMISSION:-editable}
CMD_ALLOW_EMAIL_REGISTER: ${CMD_ALLOW_EMAIL_REGISTER:-true}
PGID: ${PGID:-1000}
PUID: ${PUID:-1000}

View File

@ -10,10 +10,12 @@
>
> -- <cite>[Github][github]</cite>
On peut trouver [la documentation ici][documentation].
On peut trouver [la documentation ici][documentation] en anglais ou ici pour la [traduction française](https://doc-nextcloud-fr.indie.host/fr/) fait par [IndieHosters](https://indiehosters.net/) et [Paquerette](https://paquerette.eu/).
## Aide
Exemple de commande :
```sh
docker exec --user www-data -it nextcloud bash

View File

@ -11,7 +11,7 @@ networks:
services:
traefik:
container_name: ${TRAEFIK_CONTAINER_NAME:-traefik}
image: ${TRAEFIK_IMAGE:-traefik:v2.5.2}
image: ${TRAEFIK_IMAGE:-traefik:v2.5.3}
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock