Author SHA1 Message Date
marc 7d743f3f08 fix 2021-08-22 13:53:40 +00:00
marc cdf38224d1 wrong srv 2021-07-26 18:18:10 +02:00
marc ce26163993 .srv 2021-07-11 21:19:07 +02:00
marc 6c253f3d53 using relative links for everything 2021-07-07 13:40:52 +02:00
marc 859e081eb8 using .vol in home folder to store docker volumes 2021-06-14 09:51:35 +02:00
marc d1b8342ca8 vnc 2021-05-26 03:30:42 +02:00
431 changed files with 575 additions and 19223 deletions
-7
View File
@@ -1,7 +0,0 @@
liberapay: marcpartensky
patreon: marcpartensky
github: marcpartensky
custom:
# - monero:43J2XmRtjDPRLD35UsYGH2AZamFBQz7dt4VdvZXVm3SuadTrvcoXUXBRUNHqukFte23Q5TWXqhbwaLJJgoVQzzbe2AJDANQ
- https://paypal.me/marcpartensky
- https://buymeacoffee.com/marcpartensky
@@ -1,27 +0,0 @@
name: Check docker compose files
on:
push:
branches:
- master
tags:
- v*
jobs:
build:
env:
BIND_MOUNTS: "/srv"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install make and docker-compose
run: sudo apt install -y docker-compose make
# - name: Check docker-compose files
# run: for file in `find services/*`; do docker-compose -f $file config > /dev/null; done
- name: Clone validator
run: git clone https://github.com/serviceprototypinglab/dcvalidator /opt/validator
- name: Merge to docker-compose.yml
run: make merge
- name: Validate docker-compose.yml
# run: docker-compose -f stacks/docker-compose.yml config
# run: /opt/validator/validator-cli.py -f stacks/docker-compose.yml
run: docker-compose -f stacks/docker-compose.yml ps
+3 -50
View File
@@ -1,53 +1,6 @@
*.env
data/secrets/*.env
!data/secrets/*.template.env
docker-compose.yml
data/openvpn
data/secrets
data/certbot
data/searx
data/jenkins
data/beef
data/tmate/keys
data/authelia
data/mx-puppet-discord
data/matrix
data/heimdall
data/pihole/etc-pihole
data/pxe
data/postgres/certs
data/wireguard
data/vaultwarden
data/filebrowser
data/focalboard
data/openvpn_*
data/mailcow
data/dockvpn
data/hydra
data/yt-dlp
data/mongo
data/gpg
data/redis
data/fdroid
data/grafana
data/qbittorrent
data/webdav
data/pufferpanel
data/dockge
data/ocis
data/owncloud
data/wg-easy
data/nextcloud
data/casdoor
data/stash
data/code-server
data/gotify
data/apprise
data/calibre
data/codeserver
data/consul
data/zitadel
data/traefik
data/caddy
data.tar.gz
data.7z
data.7z.gpg
services/template.yml
data/traefik/dynamic/oidc.yml
-18
View File
@@ -1,18 +0,0 @@
image: docker:stable
stages:
- deploy
services:
- docker:dind
before_script:
- apk update
- apk add py-pip python3-dev libffi-dev openssl-dev gcc libc-dev make
- pip install docker-compose
deploy_app:
stage: deploy
script:
- docker-compose down
- docker-compose up -d
-11
View File
@@ -1,11 +0,0 @@
FROM docker:dood
# RUN curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# RUN chmod +x /usr/local/bin/docker-compose
COPY docker-compose.yml docker-compose.yml
COPY vps.yml vps.yml
RUN docker stack deploy -c vps.yml vps
ENTRYPOINT ["docker"]
CMD ["service", "ls"]
+5 -31
View File
@@ -1,32 +1,6 @@
compose:
cat ./env/vps.txt | xargs ./bin/docker-setup.sh
swarm:
cat ./env/vps.txt | STACK=vps xargs ./bin/docker-setup.sh
merge:
./bin/docker-setup.sh merge vps
mswarm: merge
docker stack deploy -c stacks/docker-compose.yml vps
down:
docker stack rm vps
pull:
for file in services/*; do docker-compose -f $$file pull; done
export:
7z a -p data.7z data
import:
7z x -p data.7z
sign:
gpg --encrypt --sign --recipient 'marc@marcpartensky.com' data.7z
# rm data.tgz
networks:
docker network create --attachable caddy || true
docker network create --attachable ldap || true
docker network create --attachable postgres || true
docker network create --attachable mongo || true
docker network create --attachable vpn || true
docker network create --attachable redis || true
docker network create --attachable mqtt || true
docker network create --subnet 172.22.1.0/24 --gateway 172.22.1.1 --attachable mailcow || true
docker network create --subnet 10.22.69.0/24 --gateway 10.22.69.1 --attachable pritunl || true
node:
docker node update --label-add net=web contabo
docker node update --label-add net=none tower
tar cvzf data.tgz data
gpg --encrypt --recipient 'marc.partensky@gmail.com' data.tgz
rm data.tgz
clean:
rm data.tgz.gpg
+33 -211
View File
@@ -1,221 +1,43 @@
# Docker
[![Heimdall Portal](https://i.imgur.com/RiHrnck.jpeg)](https://heimdall.marcpartensky.com)
## Domains
- https://marcpartensky.com
- https://pandoc.marcpartensky.com
- https://ialab.marcpartensky.com
- https://notebook.marcpartensky.com
- https://searx.marcpartensky.com
- https://cloud.marcpartensky.com
- https://wordpress.marcpartensky.com
- https://git.marcpartensky.com
- https://business.marcpartensky.com
- https://todolist.marcpartensky.com
- https://api.todolist.marcpartensky.com
- https://marc.wp.marcpartensky.com
- https://alex.wp.marcpartensky.com
- https://uml.marcpartensky.com
- https://grafana.marcpartensky.com
- https://prometheus.marcpartensky.com
- https://dns.marcpartensky.com
<!-- - https://dev.marcpartensky.com -->
<!-- - https://box.marcpartensky.com -->
<!-- - https://glou.marcpartensky.com -->
<!-- - https://minecraft.marcpartensky.com -->
Self-hosted infrastructure managing 150+ services via Docker Compose, deployed on a personal VPS with automated merge/deploy tooling and multi reverse-proxy support (Traefik, Caddy, Nginx).
All services are in the `services/` folder as individual Compose files, ready to deploy standalone or merged into a single stack.
## Services
&nbsp;
| Service | Description |
| --- | --- |
| [adguard](services/adguard/compose.yml) | Network-wide DNS ad blocker |
| [authentik](services/authentik/compose.yml) | SSO / identity provider |
| [authentik_ldap](services/authentik_ldap/compose.yml) | Authentik LDAP outpost |
| [authelia](services/authelia/compose.yml) | Lightweight SSO and 2FA gateway |
| [casdoor](services/casdoor/compose.yml) | OAuth2 / OIDC identity platform |
| [keycloak](services/keycloak/compose.yml) | Enterprise identity and access management |
| [ldap](services/ldap/compose.yml) | OpenLDAP directory server |
| [ldap-manager](services/ldap-manager/compose.yml) | LDAP management UI |
| [zitadel](services/zitadel/compose.yml) | Cloud-native identity platform |
| [hydra](services/hydra/compose.yml) | OAuth2 server (ORY Hydra) |
| [traefik](services/traefik/compose.yml) | Reverse proxy and automatic TLS termination |
| [caddy](services/caddy/compose.yml) | Modern reverse proxy with auto-HTTPS |
| [nginx](services/nginx/compose.yml) | Classic HTTP reverse proxy |
| [pangolin](services/pangolin/compose.yml) | Tunneled reverse proxy for private networks |
| [cloudflare](services/cloudflare/compose.yml) | Cloudflare tunnel / DDNS integration |
| [sslh](services/sslh/compose.yml) | SSL/SSH multiplexer on port 443 |
| [wireguard](services/wireguard/compose.yml) | WireGuard VPN server |
| [wireguard-client](services/wireguard-client/compose.yml) | WireGuard VPN client |
| [openvpn](services/openvpn/compose.yml) | OpenVPN server |
| [openvpn_client](services/openvpn_client/compose.yml) | OpenVPN client |
| [dockvpn](services/dockvpn/compose.yml) | VPN-in-Docker setup |
| [ipsec](services/ipsec/compose.yml) | IPSec VPN (strongSwan) |
| [libreswan](services/libreswan/compose.yml) | IPSec VPN (Libreswan) |
| [pritunl](services/pritunl/compose.yml) | OpenVPN management platform |
| [gluetun](services/gluetun/compose.yml) | VPN client container with killswitch |
| [wstunnel](services/wstunnel/compose.yml) | WebSocket tunneling |
| [tunnel](services/tunnel/compose.yml) | Generic tunnel service |
| [grafana](services/grafana/compose.yml) | Metrics and monitoring dashboards |
| [prometheus](services/prometheus/compose.yml) | Time-series metrics collection |
| [cadvisor](services/cadvisor/compose.yml) | Container resource usage monitoring |
| [signoz](services/signoz/compose.yml) | OpenTelemetry observability platform |
| [uptime](services/uptime/compose.yml) | Uptime Kuma - service health monitoring |
| [diun](services/diun/compose.yml) | Docker image update notifier |
| [wud](services/wud/compose.yml) | What's Up Docker - image update tracker |
| [fail2ban](services/fail2ban/compose.yml) | Intrusion prevention via log analysis |
| [portainer](services/portainer/compose.yml) | Docker container management UI |
| [dockge](services/dockge/compose.yml) | Docker Compose stack manager UI |
| [rancher](services/rancher/compose.yml) | Kubernetes / multi-cluster management |
| [swarmpit](services/swarmpit/compose.yml) | Docker Swarm management UI |
| [swarm-visualizer](services/swarm-visualizer/compose.yml) | Docker Swarm topology visualizer |
| [mobydock](services/mobydock/compose.yml) | Docker management dashboard |
| [dockerdash](services/dockerdash/compose.yml) | Docker container dashboard |
| [docker](services/docker/compose.yml) | Docker-in-Docker setup |
| [registry](services/registry/compose.yml) | Private Docker image registry |
| [sablier](services/sablier/compose.yml) | On-demand container startup |
| [gitea](services/gitea/compose.yml) | Lightweight self-hosted Git service |
| [gitlab](services/gitlab/compose.yml) | Full DevOps platform with CI/CD |
| [jenkins](services/jenkins/compose.yml) | CI/CD automation server |
| [gitbook](services/gitbook/compose.yml) | Git-based documentation platform |
| [bookstack](services/bookstack/compose.yml) | Wiki and knowledge base |
| [wikijs](services/wikijs/compose.yml) | Modern wiki platform |
| [docuwiki](services/docuwiki/compose.yml) | DokuWiki flat-file wiki |
| [outline](services/outline/compose.yml) | Team knowledge base and wiki |
| [documize](services/documize/compose.yml) | Enterprise document management |
| [logseq](services/logseq/compose.yml) | Local-first knowledge graph |
| [mermaid](services/mermaid/compose.yml) | Diagram rendering service |
| [jupyterlab](services/jupyterlab/compose.yml) | Interactive Python notebook environment |
| [jupyterhub](services/jupyterhub/compose.yml) | Multi-user JupyterHub server |
| [code-server](services/code-server/compose.yml) | VS Code in the browser |
| [streamlit](services/streamlit/compose.yml) | Streamlit app hosting |
| [ialab](services/ialab/compose.yml) | AI/ML experimentation environment |
| [ia](services/ia/compose.yml) | AI service deployment |
| [mistral](services/mistral/compose.yml) | Self-hosted Mistral LLM |
| [open-webui](services/open-webui/compose.yml) | Web UI for local LLMs (Ollama) |
| [real-esrgan](services/real-esrgan/compose.yml) | AI image upscaling service |
| [chatgpt](services/chatgpt/compose.yml) | ChatGPT API proxy / UI |
| [serge](services/serge/compose.yml) | LLaMA chat interface |
| [nextcloud](services/nextcloud/compose.yml) | Cloud storage and collaboration suite |
| [owncloud](services/owncloud/compose.yml) | Self-hosted file storage platform |
| [ocis](services/ocis/compose.yml) | ownCloud Infinite Scale |
| [seafile](services/seafile/compose.yml) | High-performance file sync and share |
| [filebrowser](services/filebrowser/compose.yml) | Web-based file manager |
| [syncthing](services/syncthing/compose.yml) | Peer-to-peer file synchronization |
| [minio](services/minio/compose.yml) | S3-compatible object storage |
| [webdav](services/webdav/compose.yml) | WebDAV file server |
| [vaultwarden](services/vaultwarden/compose.yml) | Bitwarden-compatible password manager |
| [paperless](services/paperless/compose.yml) | Paperless-ngx document management and OCR |
| [docuseal](services/docuseal/compose.yml) | Document signing platform |
| [pandoc](services/pandoc/compose.yml) | Universal document converter |
| [calibre](services/calibre/compose.yml) | E-book library and converter |
| [wallabag](services/wallabag/compose.yml) | Read-it-later / article archiver |
| [linkding](services/linkding/compose.yml) | Minimalist bookmark manager |
| [linkwarden](services/linkwarden/compose.yml) | Collaborative bookmark manager |
| [yourls](services/yourls/compose.yml) | Self-hosted URL shortener |
| [kutt](services/kutt/compose.yml) | Modern URL shortener |
| [postgres](services/postgres/compose.yml) | PostgreSQL database |
| [pgadmin](services/pgadmin/compose.yml) | PostgreSQL admin UI |
| [pgweb](services/pgweb/compose.yml) | Lightweight PostgreSQL web client |
| [postgrest](services/postgrest/compose.yml) | REST API auto-generated from PostgreSQL schema |
| [pg-backup](services/pg-backup/compose.yml) | Automated PostgreSQL backup |
| [mysql](services/mysql/compose.yml) | MySQL database |
| [mongo](services/mongo/compose.yml) | MongoDB database |
| [mongo_express](services/mongo_express/compose.yml) | MongoDB web admin UI |
| [mongo_backup](services/mongo_backup/compose.yml) | Automated MongoDB backup |
| [redis](services/redis/compose.yml) | In-memory key-value store |
| [elasticsearch](services/elasticsearch/compose.yml) | Full-text search and analytics engine |
| [kibana](services/kibana/compose.yml) | Elasticsearch visualization UI |
| [dbdesigner](services/dbdesigner/compose.yml) | Database schema design tool |
| [nocodb](services/nocodb/compose.yml) | Airtable-like interface over any SQL database |
| [n8n](services/n8n/compose.yml) | Workflow automation platform |
| [apprise](services/apprise/compose.yml) | Multi-platform push notification service |
| [gotify](services/gotify/compose.yml) | Self-hosted push notification server |
| [ntfy](services/ntfy/compose.yml) | Simple pub/sub notification service |
| [mosquitto](services/mosquitto/compose.yml) | MQTT message broker |
| [matrix](services/matrix/compose.yml) | Matrix homeserver (Synapse) |
| [conduit](services/conduit/compose.yml) | Lightweight Matrix homeserver |
| [rocketchat](services/rocketchat/compose.yml) | Self-hosted team chat platform |
| [ssh-chat](services/ssh-chat/compose.yml) | Chat over SSH |
| [discord-bot](services/discord-bot/compose.yml) | Discord bot deployment |
| [discord_chatgpt](services/discord_chatgpt/compose.yml) | Discord bot with ChatGPT integration |
| [jellyfin](services/jellyfin/compose.yml) | Media server (video, music, photos) |
| [plex](services/plex/compose.yml) | Plex media server |
| [peertube](services/peertube/compose.yml) | Self-hosted video platform |
| [audiobookshelf](services/audiobookshelf/compose.yml) | Audiobook and podcast server |
| [minidlna](services/minidlna/compose.yml) | DLNA media streaming server |
| [stash](services/stash/compose.yml) | Media organizer (self-hosted) |
| [yt-dlp](services/yt-dlp/compose.yml) | YouTube / video downloader service |
| [playlistdl](services/playlistdl/compose.yml) | Playlist download automation |
| [invidious](services/invidious/compose.yml) | Privacy-friendly YouTube frontend |
| [home-assistant](services/home-assistant/compose.yml) | Home automation platform |
| [pihole](services/pihole/compose.yml) | DNS-based ad blocker |
| [ankisyncserver](services/ankisyncserver/compose.yml) | Self-hosted Anki flashcard sync server |
| [ffsync](services/ffsync/compose.yml) | Firefox Sync server |
| [etesync](services/etesync/compose.yml) | Encrypted contacts and calendar sync |
| [open-web-calendar](services/open-web-calendar/compose.yml) | Web-based calendar aggregator |
| [appflowy](services/appflowy/compose.yml) | Open-source Notion alternative |
| [focalboard](services/focalboard/compose.yml) | Project management and Kanban boards |
| [todolist](services/todolist/compose.yml) | To-do list service |
| [izitdone](services/izitdone/compose.yml) | Task completion tracker |
| [moodle](services/moodle/compose.yml) | E-learning platform |
| [openedx](services/openedx/compose.yml) | Open edX learning management system |
| [frappelms](services/frappelms/compose.yml) | Frappe-based LMS |
| [wger](services/wger/compose.yml) | Workout and fitness tracker |
| [time-assistant](services/time-assistant/compose.yml) | Time tracking assistant |
| [minecraft_bedrock](services/minecraft_bedrock/compose.yml) | Minecraft Bedrock edition server |
| [minecraft_champi](services/minecraft_champi/compose.yml) | Custom Minecraft server |
| [minecraft_jungle](services/minecraft_jungle/compose.yml) | Custom Minecraft server |
| [crafty-controller](services/crafty-controller/compose.yml) | Minecraft server manager |
| [mcmyadmin](services/mcmyadmin/compose.yml) | Minecraft server admin panel |
| [mc-router](services/mc-router/compose.yml) | Minecraft reverse proxy/router |
| [satisfactory](services/satisfactory/compose.yml) | Satisfactory dedicated game server |
| [pxe](services/pxe/compose.yml) | PXE boot server for network installs |
| [arch](services/arch/compose.yml) | Arch Linux container environment |
| [nixos](services/nixos/compose.yml) | NixOS container environment |
| [android](services/android/compose.yml) | Android emulator in Docker |
| [vnc](services/vnc/compose.yml) | VNC remote desktop server |
| [web-terminal](services/web-terminal/compose.yml) | Browser-based terminal (Wetty) |
| [rustdesk](services/rustdesk/compose.yml) | Self-hosted remote desktop server |
| [sshpiperd](services/sshpiperd/compose.yml) | SSH proxy and multiplexer |
| [ipfs](services/ipfs/compose.yml) | IPFS distributed storage node |
| [monero-node](services/monero-node/compose.yml) | Monero full node |
| [monero-miner](services/monero-miner/compose.yml) | Monero mining setup |
| [bisq](services/bisq/compose.yml) | Decentralized Bitcoin exchange |
| [cowrie](services/cowrie/compose.yml) | SSH honeypot |
| [beef](services/beef/compose.yml) | Browser exploitation framework (pentesting lab) |
| [burpsuite](services/burpsuite/compose.yml) | Web security testing proxy |
| [feroxbuster](services/feroxbuster/compose.yml) | Web content discovery tool |
| [sqlmap](services/sqlmap/compose.yml) | SQL injection testing tool |
| [kippo](services/kippo/compose.yml) | SSH honeypot (legacy) |
| [duplicati](services/duplicati/compose.yml) | Encrypted cloud backup |
| [backrest](services/backrest/compose.yml) | Restic backup management UI |
| [airbyte](services/airbyte/compose.yml) | Data integration and ETL platform |
| [fuseki](services/fuseki/compose.yml) | Apache Jena Fuseki SPARQL server |
| [suitecrm](services/suitecrm/compose.yml) | Open-source CRM |
| [wordpress](services/wordpress/compose.yml) | WordPress CMS (multiple instances) |
| [resume](services/resume/compose.yml) | Reactive Resume - self-hosted CV builder |
| [clipshare](services/clipshare/compose.yml) | Clipboard sharing service |
| [webshot](services/webshot/compose.yml) | URL screenshot service |
| [fdroid](services/fdroid/compose.yml) | F-Droid self-hosted app repository |
| [lrclib](services/lrclib/compose.yml) | Lyrics database service |
| [ebook2audiobookxtts](services/ebook2audiobookxtts/compose.yml) | E-book to audiobook converter (TTS) |
## Reverse Proxy
Compatible with Traefik, Caddy, and Nginx. Labels are included in each Compose file for automatic route registration.
## Reverse proxy
The `docker-compose.yml` configuration is compatible with the following reverse-proxies:
- traefik
- caddy
- nginx
## Commands
```sh
# Example: Caddy + WordPress behind reverse proxy
docker network create --attachable caddy
docker-compose -f services/caddy.yml -f services/wordpress.yml up -d
certbot certonly -d newdomain.com -n --standalone
certbot -d domain name,subdomain.domain name,www.domain name --expand
```
## Deployment
**Run a single service:**
```sh
docker-compose -f services/<service>/compose.yml up -d
docker exec -i docker_minecraft_1 rcon-cli
```
**Merge and deploy multiple services at once:**
```sh
# 1. Select services
nvim ./env/vps.txt
# 2. Generate merged stack
./bin/docker-setup.sh merge vps
# 3. Deploy as a Compose stack
docker-compose -f ./stacks/docker-compose.yml up -d
# or as a Swarm stack
docker stack deploy -c ./stack/docker-compose.yml vps
```
## Related
- [OpenVPN via Docker](https://github.com/kylemanna/docker-openvpn/blob/master/docs/docker-compose.md)
### Links
[vpn](https://github.com/kylemanna/docker-openvpn/blob/master/docs/docker-compose.md)
-1
View File
@@ -1 +0,0 @@
3.12
View File
-50
View File
@@ -1,50 +0,0 @@
#!/bin/sh
PROJECT_PATH="$PROGRAMS_PATH/docker"
export COMPOSE_PATH_SEPARATOR=":"
export COMPOSE_FILE=$(find $PROJECT_PATH/services/*.yml | xargs -I @ echo -n @:)
export COMPOSE_FILE=${COMPOSE_FILE::-1}
# tool=podman-compose
tool=docker-compose
if [ "$1" = "-f" ]
then
$tool --file $@
exit
fi
if [ -f $PWD/docker-compose.yml ]
then
if [ "$#" = 0 ]
then
$tool ps
exit
fi
$tool --file $PWD/docker-compose.yml $@
exit
fi
if [ "$#" = 0 ]
then
docker-compose ps
exit
fi
$tool $@
if [ "$1" = "up" ]
then
if [ "$2" = "-d" ]
then
$tool logs -f ${@: 3}
else
$tool logs -f ${@: 2}
fi
elif [ "$1" = "start" ]
then
$tool logs -f ${@: 2}
elif [ "$1" = "restart" ]
then
$tool logs -f ${@: 2}
fi
-23
View File
@@ -1,23 +0,0 @@
#!/usr/bin/env python
import sys
import yaml
import collections.abc
def update(d, u):
for k, v in u.items():
if isinstance(v, collections.abc.Mapping):
d[k] = update(d.get(k, {}), v)
else:
d[k] = v
return d
d = {}
for file in sys.argv[1:]:
with open(file, "r") as stream:
di = yaml.safe_load(stream)
d = update(d, di)
print(yaml.safe_dump(d))
-38
View File
@@ -1,38 +0,0 @@
#!/bin/sh
# tool=podman-compose
tool="docker compose"
if [ $1 = merge ]
then
cat ./env/$2.txt | xargs -I @ echo ./services/@.yml | xargs ./bin/docker-merge.py > ./stacks/docker-compose.yml
# export COMPOSE_FILE="$PWD/../docker-compose.yml"
exit
fi
if [ -z $STACK ]
then
sep="-f"
else
sep="-c"
fi
services=$@
config_files() {
for service in $services
do
echo -n "$sep services/$service.yml "
done
}
if [ -z $STACK ]
then
cmd="$tool $(config_files) up -d --force-recreate"
else
cmd="docker stack deploy $(config_files) $STACK"
fi
echo $cmd
eval $cmd
-119
View File
@@ -1,119 +0,0 @@
#!/usr/bin/env python
import os
import re
import shutil
import fire
import yaml
from pathlib import Path
def update_env_paths(compose_path, original_base):
"""Modifie les chemins env_file vers .env"""
try:
with open(compose_path, 'r') as f:
compose_data = yaml.safe_load(f) or {}
except Exception as e:
print(f"Erreur lecture YAML: {compose_path} - {str(e)}")
return
modified = False
if 'services' in compose_data:
for srv_name, srv_config in compose_data['services'].items():
if 'volumes' in srv_config:
volumes = srv_config['volumes']
for i,volume in enumerate(volumes):
if 'data' in volume:
volumes[i] = "../" + volume
print("volume:", srv_name, volume, "->", volumes[i])
if 'env_file' in srv_config:
new_env_files = []
env_files = srv_config['env_file']
env_files = [env_files] if isinstance(env_files, str) else env_files
for ef in env_files:
file_name = os.path.basename(ef)
if file_name.startswith(original_base):
new_path = ".env"
if file_name.endswith(".template.env"):
new_path = ".env.template"
print(f"Modification: {ef} → {new_path}")
new_env_files.append(new_path)
modified = True
else:
new_env_files.append(ef)
srv_config['env_file'] = new_env_files[0] if len(new_env_files) == 1 else new_env_files
if modified:
try:
with open(compose_path, 'w') as f:
yaml.dump(compose_data, f, sort_keys=False, default_flow_style=False)
print(f"✓ Fichier mis à jour avec chemin relatif propre\n")
except Exception as e:
print(f"Erreur écriture YAML: {compose_path} - {str(e)}")
def process_compose_files(source, output_dir):
"""Convertit les fichiers Docker Compose avec mise à jour des chemins"""
for filename in os.listdir(source):
if filename.lower().endswith(('.yml', '.yaml')):
src_path = os.path.join(source, filename)
base_name = os.path.splitext(filename)[0]
service_name = re.sub(r'\d+$', '', base_name)
target_dir = os.path.join(output_dir, service_name)
# os.makedirs(target_dir, exist_ok=True)
dst_path = os.path.join(output_dir, filename, 'compose.yml')
# shutil.copy2(src_path, dst_path)
print(f"\n🔧 Traitement de {filename}:")
update_env_paths(dst_path, filename)
def process_env_files(source, output_dir):
"""Convertit les fichiers d'environnement"""
for filename in os.listdir(source):
src_path = os.path.join(source, filename)
target_file = None
if filename.lower().endswith('.template.env'):
base_name = filename[:-len('.template.env')]
target_file = '.env.template'
elif filename.lower().endswith('.env'):
base_name = filename[:-len('.env')]
target_file = '.env'
else:
continue
service_name = re.sub(r'\d+$', '', base_name)
target_dir = os.path.join(output_dir, service_name)
os.makedirs(target_dir, exist_ok=True)
dst_path = os.path.join(target_dir, target_file)
shutil.copy2(src_path, dst_path)
print(f"Conversion env: {filename} → {dst_path}")
def main(compose_source, env_source=None, output_dir=None):
"""
Args:
compose_source: Dossier source des compose files
env_source: Dossier source des fichiers d'environnement (défaut: compose_source)
output_dir: Dossier de sortie (défaut: compose_source)
"""
output_dir = output_dir or compose_source
Path(output_dir).mkdir(parents=True, exist_ok=True)
print("⏳ Traitement des fichiers docker-compose...")
process_compose_files(compose_source, output_dir)
env_source = env_source or compose_source
print("\n⏳ Traitement des fichiers d'environnement...")
process_env_files(env_source, output_dir)
if __name__ == "__main__":
fire.Fire(main)
-10
View File
@@ -1,10 +0,0 @@
[project]
name = "bin"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"fire>=0.7.0",
"pyyaml>=6.0.2",
]
Generated
-61
View File
@@ -1,61 +0,0 @@
version = 1
requires-python = ">=3.12"
[[package]]
name = "bin"
version = "0.1.0"
source = { virtual = "." }
dependencies = [
{ name = "fire" },
{ name = "pyyaml" },
]
[package.metadata]
requires-dist = [
{ name = "fire", specifier = ">=0.7.0" },
{ name = "pyyaml", specifier = ">=6.0.2" },
]
[[package]]
name = "fire"
version = "0.7.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "termcolor" },
]
sdist = { url = "https://files.pythonhosted.org/packages/6b/b6/82c7e601d6d3c3278c40b7bd35e17e82aa227f050aa9f66cb7b7fce29471/fire-0.7.0.tar.gz", hash = "sha256:961550f07936eaf65ad1dc8360f2b2bf8408fad46abbfa4d2a3794f8d2a95cdf", size = 87189 }
[[package]]
name = "pyyaml"
version = "6.0.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/54/ed/79a089b6be93607fa5cdaedf301d7dfb23af5f25c398d5ead2525b063e17/pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", size = 130631 }
wheels = [
{ url = "https://files.pythonhosted.org/packages/86/0c/c581167fc46d6d6d7ddcfb8c843a4de25bdd27e4466938109ca68492292c/PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", size = 183873 },
{ url = "https://files.pythonhosted.org/packages/a8/0c/38374f5bb272c051e2a69281d71cba6fdb983413e6758b84482905e29a5d/PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", size = 173302 },
{ url = "https://files.pythonhosted.org/packages/c3/93/9916574aa8c00aa06bbac729972eb1071d002b8e158bd0e83a3b9a20a1f7/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", size = 739154 },
{ url = "https://files.pythonhosted.org/packages/95/0f/b8938f1cbd09739c6da569d172531567dbcc9789e0029aa070856f123984/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", size = 766223 },
{ url = "https://files.pythonhosted.org/packages/b9/2b/614b4752f2e127db5cc206abc23a8c19678e92b23c3db30fc86ab731d3bd/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", size = 767542 },
{ url = "https://files.pythonhosted.org/packages/d4/00/dd137d5bcc7efea1836d6264f049359861cf548469d18da90cd8216cf05f/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", size = 731164 },
{ url = "https://files.pythonhosted.org/packages/c9/1f/4f998c900485e5c0ef43838363ba4a9723ac0ad73a9dc42068b12aaba4e4/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", size = 756611 },
{ url = "https://files.pythonhosted.org/packages/df/d1/f5a275fdb252768b7a11ec63585bc38d0e87c9e05668a139fea92b80634c/PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", size = 140591 },
{ url = "https://files.pythonhosted.org/packages/0c/e8/4f648c598b17c3d06e8753d7d13d57542b30d56e6c2dedf9c331ae56312e/PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", size = 156338 },
{ url = "https://files.pythonhosted.org/packages/ef/e3/3af305b830494fa85d95f6d95ef7fa73f2ee1cc8ef5b495c7c3269fb835f/PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", size = 181309 },
{ url = "https://files.pythonhosted.org/packages/45/9f/3b1c20a0b7a3200524eb0076cc027a970d320bd3a6592873c85c92a08731/PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", size = 171679 },
{ url = "https://files.pythonhosted.org/packages/7c/9a/337322f27005c33bcb656c655fa78325b730324c78620e8328ae28b64d0c/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", size = 733428 },
{ url = "https://files.pythonhosted.org/packages/a3/69/864fbe19e6c18ea3cc196cbe5d392175b4cf3d5d0ac1403ec3f2d237ebb5/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", size = 763361 },
{ url = "https://files.pythonhosted.org/packages/04/24/b7721e4845c2f162d26f50521b825fb061bc0a5afcf9a386840f23ea19fa/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", size = 759523 },
{ url = "https://files.pythonhosted.org/packages/2b/b2/e3234f59ba06559c6ff63c4e10baea10e5e7df868092bf9ab40e5b9c56b6/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", size = 726660 },
{ url = "https://files.pythonhosted.org/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", size = 751597 },
{ url = "https://files.pythonhosted.org/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", size = 140527 },
{ url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446 },
]
[[package]]
name = "termcolor"
version = "3.0.1"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/f8/b6/8e2aaa8aeb570b5cc955cd913b083d96c5447bbe27eaf330dfd7cc8e3329/termcolor-3.0.1.tar.gz", hash = "sha256:a6abd5c6e1284cea2934443ba806e70e5ec8fd2449021be55c280f8a3731b611", size = 12935 }
wheels = [
{ url = "https://files.pythonhosted.org/packages/a6/7e/a574ccd49ad07e8b117407bac361f1e096b01f1b620365daf60ff702c936/termcolor-3.0.1-py3-none-any.whl", hash = "sha256:da1ed4ec8a5dc5b2e17476d859febdb3cccb612be1c36e64511a6f2485c10c69", size = 7157 },
]
+18
View File
@@ -0,0 +1,18 @@
FROM ubuntu:latest
# Escape from here if you can
RUN apt-get update
RUN apt-get install -y openssh-server neovim
RUN service ssh start
# RUN useradd $NAME -p $PASSWORD
# need to:
# nvim /etc/ssh/sshd_config
# service ssh restart
# docker run -it -p 7022:7022 --name box marcpartensky/box
# maybe change guest passwd
EXPOSE 22
+47
View File
@@ -0,0 +1,47 @@
version: "3.9"
services:
marc:
image: marcpartensky/dotfiles
build:
context: /root/git/dotfiles
networks:
- box
stdin_open: true
tty: true
samy:
# image: marcpartensky/box
build:
context: .
dockerfile: Dockerfile
networks:
- box
etienne:
# image: marcpartensky/box
build:
context: .
dockerfile: Dockerfile
networks:
- box
stdin_open: true
tty: true
valentin:
# image: marcpartensky/box
build:
context: .
dockerfile: Dockerfile
networks:
- box
alexandre:
# image: marcpartensky/box
build:
context: .
dockerfile: Dockerfile
networks:
- box
networks:
box:
+1
View File
@@ -0,0 +1 @@
mail._domainkey.marcpartensky.com marcpartensky.com:mail:/etc/opendkim/keys/marcpartensky.com/mail.private
+1
View File
@@ -0,0 +1 @@
*@marcpartensky.com mail._domainkey.marcpartensky.com
+2
View File
@@ -0,0 +1,2 @@
127.0.0.1
localhost
@@ -0,0 +1,51 @@
-----BEGIN RSA PRIVATE KEY-----
MIIJKAIBAAKCAgEAouPk5YPodxb41YBVY4xdeJGRCzUXSrVYUZc2ukE2HqIqWsiv
U7vPgBFlclBzMMJVdrt/NAt3NnulzWyQg6V+A8wSYkCNpevGlsp2TvkL8Mcuf1LV
GfNScjycJ8nC8LhRgHZZJ876yM97mEK+J4X4k8X1/IWzwUSmOOAB3EpfuQLMVQL8
KQh5gyAdvokbnmq+r9VqOyiFbZ03JzyW+RPMTQxMu2kid+KH336/j5Tvza8ITN3v
qZRVfZJjJzCJHvx4iKpWy2iOFxNThlUTbnZ93xFEA+36s+pU2hT22RGN8qzSQFBt
IXKEqyNJ4KoJ/X53ukYc4ZSmpRAz/PhxX9eIgurUwKXrSwX5127+eCIanRT4aMYS
obuue7IGlHixNI4dmZW4H0kMs5MwDItYzNQfmsv7HDjkfsRhBlFpV5LMES1g4L4r
WQ85kKcQYfl60FyReCKrrBGiFi9H8iEK5gDIgOFJ37qNa3yLolll31YdkhONsFyr
OyGrEAcCzRHOa9jq9KEa5p8QyRekG75aGEfGlRMntkM1KAhdyjuyixle3I7SYywq
tqJfjAButWJdvhuPf1jWmqzs97AoJZb2mYzgP/ur9sqHR8EBJ8HN9thRgf4Qsyxp
PTO9tOU+4GtT9YSVSGjXHQ0SnPDAj8YxjOql5RDalmiP91NmAeGUfCbLwUkCAwEA
AQKCAgBUDv7kYjnomvY2V0+5W4ow2g3blr46U3MMR9h6LYTcMhthVgcEUvs1v8R2
RYXsN50a9I8kMHaIqy5Y4BmDljd9hiZGhcGTSiTlU/3Rqzu6OU+JbRmDlsmJIjYD
Yl8zEisc+/XuUSWh01CYtniitMQenh3e/rBQoDiXSSIsqETVmNgRVsUB99mdDUnM
Nb0G91cILj3v4W1Zr7Pyj5XpW4omiJ5gaFTdQQ2VDDeWxOkrX5QM9sri3CVx88Uv
SCC62Nbqz9ySg5Yv2k1UGTs52fQC1UogLQMfLWI0WHU6d5ClFwI5Jkfq5soH9uH9
CkK1ijoG6n+k+a01qTLq7Nq09uj+s6T0BFb6703ZATVxdTNxc3xaFcYm9ZpuDnCr
U8P6sVClCa9axjMZk1Kjl7OKSyp8LlRWPacxO4GXqlNmhyMUEldKj8cBmmxzC7fj
1fMXAve3EodVRM5Z6S+c/PO96TuJrSkddImWhPawd35/rrtBA+7ToPNYzy7aWk/N
UZ9uFkwPMLaDZeRG590natPOUkB0FZ7F8EEjwMbUhf1iyoPvLPiixofVk1NKTWMr
8DEN6bSH85v/lQaAQhmFFNRjdeyXts9+a7Kmsxos3AfW8hsmNHFxTuoXZ8AjvVAs
P7hlPFoJultoUwX/ZpMZtsEwFW3FUSw33Onsdblezp7Lb12icQKCAQEAzVKid6vv
TWGltBkL1XTtzYSNUTBIZfoOjKxTsrqSKNAR6i2lmN2bPKKTksPdloBoaQ/FHK6R
/+mebfgmnyulY6zWo8EUewi3LFyL9KhXe0K38/jUUokKWSq1Ob5D8Kjq6MuTCfuS
M5XnYfIZuIAZLE0244+Q8L03mc2f7uvl3KWaAZOVUsfHu/ETzTm6lgG8Liq5a0Fw
thCVVupKVeSLjRa/RWFVR9E9jvIjplo+SVAUJWyYwlOfPDVr76gqrF5P+4lOQpAQ
dzwhi4LHhvdgp9Y/Gw3s5vByA/7Ogh3QI5jS36w2EMCFYZpAe4HBQk1UOYVNBpeD
58m3venG5pBy4wKCAQEAyxglzQhZSBNkkukoRm7zzmNAx9/M0ROu7uwmJ9t02Q94
/3fpV2zVYA7rQKZcCgW5Dnhe4GaeyASRXq4x3v7F6iLCUjxbJ8e+YRhsNrp0WmYU
Xk6+06EQgLBICqDQeMDDeR+KQzaJonuMSrGyUb8krR6RB+/W3LqK/0CQSSaHozzN
6mxejoFoNhf7rfIP9JJD8QwpBsTJBQNCDvHo1lIA8e3nTngFzLJ56tRVwjaP8EPT
qJ7RfoVxdTyUTZTq/8EGOqNrzLgB/FehXq3eTz89tdlHOTT+mJ8H23AEtepxpLFx
5kN/eisi4PjUgCp11IHnmG8qnJr48uDlORdrqL424wKCAQBX/DVK+w7NJi8QAjuj
+Tt+enLke8BKkuFxPtePG4xOmPtUUsNHwo8naLO8jNqEB/q2Kt/Y7qX5+G6/yTsj
slxpXkOMYM0Z/B4ikHYZHZp/Y5PYpKS3yan5k+edGv+aPYiMwc/80yVPnclNm6WR
/rLK3TvMQFVoFG2jJw6GH+icqQpZ6phupNXen+xQYZCnf47Yac6TO7PFEU4ttLCu
JgX3K+xDGvakk/HBM9o7Cyjt2bcIYoUDoTn3Xx0l0faXbsLvk2NJ+tpTfh0R37UJ
DTEKOzFHsqv2OsthEuwDrirnVjHnT7DLdPSzYpqHUo8yjlitXYYocP1BcpuecnOd
kgDpAoIBAQCtLi4to8zeFQtR6teZF8t2VlRLG5+/ORWWTnBK1GvTG8qFrW6gSgG5
I3+fZTxen3qpyCK/H0KONLbxEYEdMgr6GCGzlhv00/KXQQglsuC8pQcBVAyM0W8N
DUShK3gZP+ZvRmHT5pF+p/N9TgFMi71ukf4B0pZZKgiUmC1w8xX+MD82gqouwlJm
rhTCwwKv/nlI9qGVUABJ8flGXSm6d7qukbsHwnjPj/E+OUnXjkc3Dd9Sjfr99DRH
UBz1+uJYq/Pv1KJ7svyefOrxnTlQQhERG/IL6hCffBxrFh4uMXgug9EoFK6DMn1P
cV9i2tIXH56o8UJYwB1Anl1YTYxUG78ZAoIBAD748NDDIj5yxjzW7UzNajLs9iB2
aiywcxPZCKo38Yi7KIaxIy8YeHqJ6chenvTl5S4ElB+sJ0SnYEvBqxceOXiM9l5i
HrDxIc3gzwY0lN0h2ZEiSKBQgjCtFW6gZ+6KmPonk98S8l8hbFW0vL+nS4EE9vtO
3cFhz/HPVB1ZY5ofy7/rLRd7GiISof9WcvrnOvE9BKFF0rNKZUjrf2PM3c2rObvj
5rgLvUiX/Mn9ND/XHTjT/UVptmkmcnjFyRvQwXXA4ns7gxBWYfYB1bqwh6WRfEU6
x3ykDol24hgohvpEnKMZDUTmLrxgF8hbJTP/57P2Yyy0faxZ/z/MER1qy28=
-----END RSA PRIVATE KEY-----
@@ -0,0 +1,4 @@
mail._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; "
"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAouPk5YPodxb41YBVY4xdeJGRCzUXSrVYUZc2ukE2HqIqWsivU7vPgBFlclBzMMJVdrt/NAt3NnulzWyQg6V+A8wSYkCNpevGlsp2TvkL8Mcuf1LVGfNScjycJ8nC8LhRgHZZJ876yM97mEK+J4X4k8X1/IWzwUSmOOAB3EpfuQLMVQL8KQh5gyAdvokbnmq+r9VqOyiFbZ03Jz"
"yW+RPMTQxMu2kid+KH336/j5Tvza8ITN3vqZRVfZJjJzCJHvx4iKpWy2iOFxNThlUTbnZ93xFEA+36s+pU2hT22RGN8qzSQFBtIXKEqyNJ4KoJ/X53ukYc4ZSmpRAz/PhxX9eIgurUwKXrSwX5127+eCIanRT4aMYSobuue7IGlHixNI4dmZW4H0kMs5MwDItYzNQfmsv7HDjkfsRhBlFpV5LMES1g4L4rWQ85kKcQYfl60FyReCKrrBGi"
"Fi9H8iEK5gDIgOFJ37qNa3yLolll31YdkhONsFyrOyGrEAcCzRHOa9jq9KEa5p8QyRekG75aGEfGlRMntkM1KAhdyjuyixle3I7SYywqtqJfjAButWJdvhuPf1jWmqzs97AoJZb2mYzgP/ur9sqHR8EBJ8HN9thRgf4QsyxpPTO9tOU+4GtT9YSVSGjXHQ0SnPDAj8YxjOql5RDalmiP91NmAeGUfCbLwUkCAwEAAQ==" ) ; ----- DKIM key mail for marcpartensky.com
+1
View File
@@ -0,0 +1 @@
marc@marcpartensky.com|{SHA512-CRYPT}$6$G1SLI/9La3kXrkrt$9MdkaLuUEoa2n8mVVZoCwmy0g6MrvlHDL0i2FVrUakAXi3pgPfo/HNz/mLWRFS6nG1oOeP8IMbTGM.JptPR../
-200
View File
@@ -1,200 +0,0 @@
http:
pprof:
port: 6060
enabled: false
address: 0.0.0.0:3000
session_ttl: 720h
users:
- name: marc
password: $2a$10$E9cknJr/bTLtSUJ9EaW8r.Gw30FX8Plm8jgq.LaYxMwiX4DEuDK7O
auth_attempts: 5
block_auth_min: 15
http_proxy: ""
language: ""
theme: auto
dns:
bind_hosts:
- 0.0.0.0
port: 53
anonymize_client_ip: false
ratelimit: 20
ratelimit_subnet_len_ipv4: 24
ratelimit_subnet_len_ipv6: 56
ratelimit_whitelist: []
refuse_any: true
upstream_dns:
- https://dns10.quad9.net/dns-query
upstream_dns_file: ""
bootstrap_dns:
- 9.9.9.10
- 149.112.112.10
- 2620:fe::10
- 2620:fe::fe:10
fallback_dns: []
upstream_mode: load_balance
fastest_timeout: 1s
allowed_clients: []
disallowed_clients: []
blocked_hosts:
- version.bind
- id.server
- hostname.bind
trusted_proxies:
- 127.0.0.0/8
- ::1/128
cache_size: 4194304
cache_ttl_min: 0
cache_ttl_max: 0
cache_optimistic: false
bogus_nxdomain: []
aaaa_disabled: false
enable_dnssec: false
edns_client_subnet:
custom_ip: ""
enabled: false
use_custom: false
max_goroutines: 300
handle_ddr: true
ipset: []
ipset_file: ""
bootstrap_prefer_ipv6: false
upstream_timeout: 10s
private_networks: []
use_private_ptr_resolvers: true
local_ptr_upstreams: []
use_dns64: false
dns64_prefixes: []
serve_http3: false
use_http3_upstreams: false
serve_plain_dns: true
hostsfile_enabled: true
tls:
enabled: false
server_name: ""
force_https: false
port_https: 443
port_dns_over_tls: 853
port_dns_over_quic: 853
port_dnscrypt: 0
dnscrypt_config_file: ""
allow_unencrypted_doh: false
certificate_chain: ""
private_key: ""
certificate_path: ""
private_key_path: ""
strict_sni_check: false
querylog:
dir_path: ""
ignored: []
interval: 2160h
size_memory: 1000
enabled: true
file_enabled: true
statistics:
dir_path: ""
ignored: []
interval: 24h
enabled: true
filters:
- enabled: true
url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
name: AdGuard DNS filter
id: 1
- enabled: true
url: https://adaway.org/hosts.txt
name: AdAway Default Blocklist
id: 2
- enabled: true
url: https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt
name: WindowsSpyBlocker - Hosts spy rules
id: 1668812860
- enabled: true
url: https://malware-filter.gitlab.io/malware-filter/phishing-filter-agh.txt
name: Phishing URL Blocklist (PhishTank and OpenPhish)
id: 1668812861
- enabled: true
url: https://raw.githubusercontent.com/Perflyst/PiHoleBlocklist/master/SmartTV-AGH.txt
name: Perflyst and Dandelion Sprout's Smart-TV Blocklist
id: 1668812862
- enabled: true
url: https://raw.githubusercontent.com/mitchellkrogza/The-Big-List-of-Hacked-Malware-Web-Sites/master/hosts
name: The Big List of Hacked Malware Web Sites
id: 1668812863
whitelist_filters: []
user_rules: []
dhcp:
enabled: false
interface_name: ""
local_domain_name: lan
dhcpv4:
gateway_ip: ""
subnet_mask: ""
range_start: ""
range_end: ""
lease_duration: 86400
icmp_timeout_msec: 1000
options: []
dhcpv6:
range_start: ""
lease_duration: 86400
ra_slaac_only: false
ra_allow_slaac: false
filtering:
blocking_ipv4: ""
blocking_ipv6: ""
blocked_services:
schedule:
time_zone: UTC
ids: []
protection_disabled_until: null
safe_search:
enabled: false
bing: true
duckduckgo: true
ecosia: true
google: true
pixabay: true
yandex: true
youtube: true
blocking_mode: default
parental_block_host: family-block.dns.adguard.com
safebrowsing_block_host: standard-block.dns.adguard.com
rewrites:
- domain: medium.com
answer: 0.0.0.0
- domain: marc
answer: marcpartensky.com
safe_fs_patterns:
- /opt/adguardhome/work/data/userfilters/*
safebrowsing_cache_size: 1048576
safesearch_cache_size: 1048576
parental_cache_size: 1048576
cache_time: 30
filters_update_interval: 24
blocked_response_ttl: 10
filtering_enabled: true
parental_enabled: false
safebrowsing_enabled: false
protection_enabled: true
clients:
runtime_sources:
whois: true
arp: true
rdns: true
dhcp: true
hosts: true
persistent: []
log:
enabled: true
file: ""
max_backups: 0
max_size: 100
max_age: 3
compress: false
local_time: false
verbose: false
os:
group: ""
user: ""
rlimit_nofile: 0
schema_version: 29
-156
View File
@@ -1,156 +0,0 @@
# Minimal nginx configuration for AppFlowy-Cloud
# Self Hosted AppFlowy Cloud user should alter this file to suit their needs
events {
worker_connections 1024;
}
http {
# docker dns resolver
resolver 127.0.0.11 valid=10s;
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 8080;
# https://github.com/nginxinc/nginx-prometheus-exporter
location = /stub_status {
stub_status;
}
}
server {
# ssl_certificate /etc/nginx/ssl/certificate.crt;
#ssl_certificate_key /etc/nginx/ssl/private_key.key;
listen 80;
listen 443 ssl;
client_max_body_size 10M;
underscores_in_headers on;
# GoTrue
location /gotrue/ {
set $gotrue gotrue;
proxy_pass http://$gotrue:9999;
rewrite ^/gotrue(/.*)$ $1 break;
# Allow headers like redirect_to to be handed over to the gotrue
# for correct redirecting
proxy_set_header Host $http_host;
proxy_pass_request_headers on;
}
# WebSocket
location /ws {
set $appflowy_cloud appflowy_cloud;
proxy_pass http://$appflowy_cloud:8000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_read_timeout 86400;
}
# AppFlowy-Cloud
# created a separate location block for handling CORS preflight (OPTIONS) requests specifically for the /api endpoint.
location = /api/options {
if ($http_origin ~* (http://127.0.0.1:8000)) {
add_header 'Access-Control-Allow-Origin' $http_origin;
}
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE, PATCH';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, Accept, Client-Version';
add_header 'Access-Control-Max-Age' 3600;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
location /api {
set $appflowy_cloud appflowy_cloud;
proxy_pass http://$appflowy_cloud:8000;
proxy_set_header X-Request-Id $request_id;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Set CORS headers for other requests
if ($http_origin ~* (http://127.0.0.1:8000)) {
add_header 'Access-Control-Allow-Origin' $http_origin always;
}
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, PATCH' always;
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, Accept, Client-Version' always;
add_header 'Access-Control-Max-Age' 3600 always;
}
# Minio Web UI
# Derive from: https://min.io/docs/minio/linux/integrations/setup-nginx-proxy-with-minio.html
# Optional Module, comment this section if you are did not deploy minio in docker-compose.yml
location /minio/ {
set $minio minio;
proxy_pass http://$minio:9001;
rewrite ^/minio/(.*) /$1 break;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
## This is necessary to pass the correct IP to be hashed
real_ip_header X-Real-IP;
proxy_connect_timeout 300;
## To support websockets in MinIO versions released after January 2023
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# Some environments may encounter CORS errors (Kubernetes + Nginx Ingress)
# Uncomment the following line to set the Origin request to an empty string
# proxy_set_header Origin '';
chunked_transfer_encoding off;
}
# PgAdmin
# Optional Module, comment this section if you are did not deploy pgadmin in docker-compose.yml
location /pgadmin/ {
set $pgadmin pgadmin;
proxy_pass http://$pgadmin:80;
proxy_set_header X-Script-Name /pgadmin;
proxy_set_header X-Scheme $scheme;
proxy_set_header Host $host;
proxy_redirect off;
}
# Portainer
# Optional Module, comment this section if you are did not deploy portainer in docker-compose.yml
location /portainer/ {
set $portainer portainer;
proxy_pass http://$portainer:9000;
rewrite ^/portainer/(.*) /$1 break;
}
# Admin Frontend
# Optional Module, comment this section if you are did not deploy admin_frontend in docker-compose.yml
location / {
set $admin_frontend admin_frontend;
proxy_pass http://$admin_frontend:3000;
proxy_set_header X-Scheme $scheme;
proxy_set_header Host $host;
}
}
}
-30
View File
@@ -1,30 +0,0 @@
# first caddyfile
{
security {
authorization policy marc {
set auth url https://gate.marcpartensky.com/
crypto key verify {env.JWT_SECRET}
allow roles authp/admin authp/user
}
}
}
marc.wf {
redir https://marcpartensky.com/{uri}
}
marc.tf {
redir https://marcpartensky.com{uri}
}
# authent.marcpartensky.com {
# reverse_proxy authentik:9443 {
# tls internal
# }
# }
# healthcheck
# :8080 {
# status 200 /
# }
Binary file not shown.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-35
View File
@@ -1,35 +0,0 @@
[ req ]
default_bits = 8192
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
dirstring_type = nobmp
[ req_distinguished_name ]
countryName = FR
countryName_default = FR
countryName_min = 2
countryName_max = 2
localityName = Europe/Paris
organizationalUnitName = Marc Partensky Corp
commonName = Marc Partensky
commonName_max = 64
emailAddress = marc@marcpartensky.com
emailAddress_max = 40
# [ req_attributes ]
# challengePassword = A challenge password
# challengePassword_min = 4
# challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer:always
basicConstraints = CA:true
-40
View File
@@ -1,40 +0,0 @@
# Pi-hole: A black hole for Internet advertisements
# (c) 2017 Pi-hole, LLC (https://pi-hole.net)
# Network-wide ad blocking via your own hardware.
#
# Dnsmasq config for Pi-hole's FTLDNS
#
# This file is copyright under the latest version of the EUPL.
# Please see LICENSE file for your rights under this license.
###############################################################################
# FILE AUTOMATICALLY POPULATED BY PI-HOLE INSTALL/UPDATE PROCEDURE. #
# ANY CHANGES MADE TO THIS FILE AFTER INSTALL WILL BE LOST ON THE NEXT UPDATE #
# #
# IF YOU WISH TO CHANGE THE UPSTREAM SERVERS, CHANGE THEM IN: #
# /etc/pihole/setupVars.conf #
# #
# ANY OTHER CHANGES SHOULD BE MADE IN A SEPARATE CONFIG FILE #
# WITHIN /etc/dnsmasq.d/yourname.conf #
###############################################################################
addn-hosts=/etc/pihole/local.list
addn-hosts=/etc/pihole/custom.list
localise-queries
no-resolv
cache-size=10000
log-queries
log-facility=/var/log/pihole.log
log-async
server=8.8.8.8
server=8.8.4.4
interface=eth0
-42
View File
@@ -1,42 +0,0 @@
# Pi-hole: A black hole for Internet advertisements
# (c) 2021 Pi-hole, LLC (https://pi-hole.net)
# Network-wide ad blocking via your own hardware.
#
# RFC 6761 config file for Pi-hole
#
# This file is copyright under the latest version of the EUPL.
# Please see LICENSE file for your rights under this license.
###############################################################################
# FILE AUTOMATICALLY POPULATED BY PI-HOLE INSTALL/UPDATE PROCEDURE. #
# ANY CHANGES MADE TO THIS FILE AFTER INSTALL WILL BE LOST ON THE NEXT UPDATE #
# #
# CHANGES SHOULD BE MADE IN A SEPARATE CONFIG FILE #
# WITHIN /etc/dnsmasq.d/yourname.conf #
###############################################################################
# RFC 6761: Caching DNS servers SHOULD recognize
# test, localhost, invalid
# names as special and SHOULD NOT attempt to look up NS records for them, or
# otherwise query authoritative DNS servers in an attempt to resolve these
# names.
server=/test/
server=/localhost/
server=/invalid/
# The same RFC requests something similar for
# 10.in-addr.arpa. 21.172.in-addr.arpa. 27.172.in-addr.arpa.
# 16.172.in-addr.arpa. 22.172.in-addr.arpa. 28.172.in-addr.arpa.
# 17.172.in-addr.arpa. 23.172.in-addr.arpa. 29.172.in-addr.arpa.
# 18.172.in-addr.arpa. 24.172.in-addr.arpa. 30.172.in-addr.arpa.
# 19.172.in-addr.arpa. 25.172.in-addr.arpa. 31.172.in-addr.arpa.
# 20.172.in-addr.arpa. 26.172.in-addr.arpa. 168.192.in-addr.arpa.
# Pi-hole implements this via the dnsmasq option "bogus-priv" (see
# 01-pihole.conf) because this also covers IPv6.
# OpenWRT furthermore blocks bind, local, onion domains
# see https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob_plain;f=package/network/services/dnsmasq/files/rfc6761.conf;hb=HEAD
# and https://www.iana.org/assignments/special-use-domain-names/special-use-domain-names.xhtml
# We do not include the ".local" rule ourselves, see https://github.com/pi-hole/pi-hole/pull/4282#discussion_r689112972
server=/bind/
server=/onion/
@@ -1,8 +0,0 @@
#!/bin/bash
set -e
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER marc PASSWORD ZGQ4ZDk5OWEwYjNlMDJlNmQ5NmE1NjM5;
GRANT ALL PRIVILEGES ON DATABASE * TO marc;
EOSQL
-14
View File
@@ -1,14 +0,0 @@
#!/bin/sh
cd /var/lib/postgresql/certs
# private key and certificate from it
openssl req -new -text -newkey rsa:8192 -passout pass:$POSTGRES_PASSWORD -subj /CN=localhost -out server.req -keyout privkey.pem
# self signed root certificate
openssl rsa -in privkey.pem -passin pass:$POSTGRES_PASSWORD -out server.key
# derived certificate
openssl req -x509 -in server.req -text -key server.key -out server.crt
# change permissions to the root certificate for postgres
chmod 600 server.key
chown postgres:postgres server.key
+2 -17
View File
@@ -1,34 +1,19 @@
global:
scrape_interval: 15s # By default, scrape targets every 15 seconds.
evaluation_interval: 15s
# Attach these labels to any time series or alerts when communicating with
# external systems (federation, remote storage, Alertmanager).
external_labels:
monitor: 'codelab-monitor'
rule_files:
# Fichier de règle
- 'alert.rules'
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
# Override the global default and scrape targets from this job every 5 seconds.
scrape_interval: 5s
static_configs:
- targets: ['node-exporter:9100']
- job_name: cadvisor
scrape_interval: 5s
static_configs:
- targets:
- cadvisor:8080
- job_name: 'traefik'
scrape_interval: 5s
static_configs:
- targets: ['traefik:3000']
- targets: ['localhost:9090']
+1
View File
@@ -0,0 +1 @@
settings.yml
+47
View File
@@ -0,0 +1,47 @@
[uwsgi]
# Who will run the code
uid = searx
gid = searx
# Number of workers (usually CPU count)
workers = 4
# The right granted on the created socket
chmod-socket = 666
# Plugin to use and interpretor config
single-interpreter = true
master = true
plugin = python3
lazy-apps = true
enable-threads = true
# Module to import
module = searx.webapp
# Virtualenv and python path
pythonpath = /usr/local/searx/
chdir = /usr/local/searx/searx/
# Disable logging for privacy
disable-logging=True
# But keep errors for 2 days
touch-logrotate = /run/uwsgi-logrotate
unique-cron = 15 0 -1 -1 -1 { touch /run/uwsgi-logrotate }
log-backupname = /var/log/uwsgi/uwsgi.log.1
logto = /var/log/uwsgi/uwsgi.log
# No keep alive
# See https://github.com/searx/searx-docker/issues/24
add-header = Connection: close
# uwsgi serves the static files
# expires set to one day as Flask does
static-map = /static=/usr/local/searx/searx/static
static-expires = /* 864000
static-gzip-all = True
offload-threads = %k
# Cache
cache2 = name=searxcache,items=2000,blocks=2000,blocksize=4096,bitmap=1
-80
View File
@@ -1,80 +0,0 @@
# This file only contains Docker relevant variables.## The only exception to the non-default rule are env vars related to scaling.## See https://github.com/airbytehq/airbyte/blob/master/airbyte-config/config-models/src/main/java/io/airbyte/config/Configs.java# for the latest environment variables.## # Contributors - please organise this env file according to the above linked file.
### SHARED ###VERSION= # Example: 0.50.5
# When using the airbyte-db via default docker imageCONFIG_ROOT= # Example: /data
DATA_DOCKER_MOUNT= # Example: airbyte_data
DB_DOCKER_MOUNT= # Example: airbyte_db
# Workspace storage for running jobs (logs, etc)WORKSPACE_ROOT= # Example: /tmp/workspace
WORKSPACE_DOCKER_MOUNT= # Example: airbyte_workspace
# Local mount to access local files from filesystem# todo (cgardens) - when we are mount raw directories instead of named volumes, *_DOCKER_MOUNT must# be the same as *_ROOT.# Issue: https://github.com/airbytehq/airbyte/issues/578LOCAL_ROOT= # Example: /tmp/airbyte_local
LOCAL_DOCKER_MOUNT= # Example: /tmp/airbyte_local
# todo (cgardens) - hack to handle behavior change in docker compose. *_PARENT directories MUST# already exist on the host filesystem and MUST be parents of *_ROOT.# Issue: https://github.com/airbytehq/airbyte/issues/577HACK_LOCAL_ROOT_PARENT= # Example: /tmp
# Proxy Configuration# Set to empty values, e.g. "" to disable basic authBASIC_AUTH_USERNAME= # Example: username
BASIC_AUTH_PASSWORD= # Example: Passw0rd
BASIC_AUTH_PROXY_TIMEOUT= # Example: 900
### DATABASE ###DATABASE_USER= # Example: username
DATABASE_PASSWORD= # Example: Passw0rd
DATABASE_HOST= # Example: db
DATABASE_PORT= # Example: 5432
DATABASE_DB= # Example: airbyte
DATABASE_URL= # Example: protocol://user:password@host:port/path
JOBS_DATABASE_MINIMUM_FLYWAY_MIGRATION_VERSION= # Example: 0.40.26.001
# Airbyte Internal Config Database, defaults to Job Database if empty. Explicitly left empty to mute docker compose warnings.CONFIG_DATABASE_USER= # Example: username
CONFIG_DATABASE_PASSWORD= # Example: Passw0rd
CONFIG_DATABASE_URL= # Example: protocol://user:password@host:port/path
CONFIGS_DATABASE_MINIMUM_FLYWAY_MIGRATION_VERSION= # Example: 0.40.23.002
### AIRBYTE SERVICES ###TEMPORAL_HOST= # Example: airbyte-temporal:7233
INTERNAL_API_HOST= # Example: airbyte-server:8001
CONNECTOR_BUILDER_API_HOST= # Example: airbyte-connector-builder-server:80
WEBAPP_URL= # Example: protocol://user:password@host:port/path
# Although not present as an env var, required for webapp configuration.CONNECTOR_BUILDER_API_URL= # Example: protocol://user:password@host:port/path
### JOBS #### Relevant to scaling.SYNC_JOB_MAX_ATTEMPTS= # Example: 3
SYNC_JOB_MAX_TIMEOUT_DAYS= # Example: 3
SYNC_JOB_INIT_RETRY_TIMEOUT_MINUTES= # Example: 5
JOB_MAIN_CONTAINER_CPU_REQUEST=
JOB_MAIN_CONTAINER_CPU_LIMIT=
JOB_MAIN_CONTAINER_MEMORY_REQUEST=
JOB_MAIN_CONTAINER_MEMORY_LIMIT=
NORMALIZATION_JOB_MAIN_CONTAINER_MEMORY_LIMIT=
NORMALIZATION_JOB_MAIN_CONTAINER_MEMORY_REQUEST=
NORMALIZATION_JOB_MAIN_CONTAINER_CPU_LIMIT=
NORMALIZATION_JOB_MAIN_CONTAINER_CPU_REQUEST=
### LOGGING/MONITORING/TRACKING ###TRACKING_STRATEGY= # Example: segment
JOB_ERROR_REPORTING_STRATEGY= # Example: logging
# Although not present as an env var, expected by Log4J configuration.LOG_LEVEL= # Example: INFO
### APPLICATIONS #### Worker #WORKERS_MICRONAUT_ENVIRONMENTS= # Example: control-plane
# Cron #CRON_MICRONAUT_ENVIRONMENTS= # Example: control-plane
# Relevant to scaling.MAX_SYNC_WORKERS= # Example: 5
MAX_SPEC_WORKERS= # Example: 5
MAX_CHECK_WORKERS= # Example: 5
MAX_DISCOVER_WORKERS= # Example: 5
MAX_NOTIFY_WORKERS= # Example: 5
SHOULD_RUN_NOTIFY_WORKFLOWS= # Example: true
# Temporal Activity configurationACTIVITY_MAX_ATTEMPT=
ACTIVITY_INITIAL_DELAY_BETWEEN_ATTEMPTS_SECONDS=
ACTIVITY_MAX_DELAY_BETWEEN_ATTEMPTS_SECONDS=
WORKFLOW_FAILURE_RESTART_DELAY_SECONDS=
### FEATURE FLAGS ###AUTO_DISABLE_FAILING_CONNECTIONS= # Example: false
FEATURE_FLAG_CLIENT= # Example: myhiddensecret
### MONITORING FLAGS #### Accepted values are datadog and otel (open telemetry)METRIC_CLIENT= # Example: myhiddensecret
OTEL_COLLECTOR_ENDPOINT= # Example: "http://host.docker.internal:4317"
USE_STREAM_CAPABLE_STATE= # Example: true
AUTO_DETECT_SCHEMA= # Example: true
# To test local catalog changes, set the below variable to the path of your local catalog.# https://docs.airbyte.com/connector-development/testing-connectors/testing-a-local-catalog-in-developmentLOCAL_CONNECTOR_CATALOG_PATH=
-57
View File
@@ -1,57 +0,0 @@
MINIO_BROWSER_REDIRECT_URL= # Example: protocol://user:password@host:port/path
MINIO_ROOT_USER= # Example: username
MINIO_ROOT_PASSWORD= # Example: Passw0rd
GOTRUE_SITE_URL= # Example: protocol://user:password@host:port/path
URI_ALLOW_LIST= # Example: protocol://user:password@host:port/path
GOTRUE_JWT_SECRET= # Example: myhiddensecret
GOTRUE_JWT_EXP= # Example: ${GOTRUE_JWT_EXP}
GOTRUE_DB_DRIVER= # Example: postgres
API_EXTERNAL_URL= # Example: protocol://user:password@host:port/path
DATABASE_URL= # Example: protocol://user:password@host:port/path
PORT= # Example: 9999
GOTRUE_SMTP_HOST= # Example: ${GOTRUE_SMTP_HOST}
GOTRUE_SMTP_PORT= # Example: ${GOTRUE_SMTP_PORT}
GOTRUE_SMTP_USER= # Example: username
GOTRUE_SMTP_PASS= # Example: Passw0rd
GOTRUE_MAILER_URLPATHS_CONFIRMATION= # Example: protocol://user:password@host:port/path
GOTRUE_MAILER_URLPATHS_INVITE= # Example: protocol://user:password@host:port/path
GOTRUE_MAILER_URLPATHS_RECOVERY= # Example: protocol://user:password@host:port/path
GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE= # Example: protocol://user:password@host:port/path
GOTRUE_SMTP_ADMIN_EMAIL= # Example: user.name@gmail.com
GOTRUE_SMTP_MAX_FREQUENCY= # Example: ${GOTRUE_SMTP_MAX_FREQUENCY:-1ns}
GOTRUE_MAILER_AUTOCONFIRM= # Example: user.name@gmail.com
# Google OAuth configGOTRUE_EXTERNAL_GOOGLE_ENABLED= # Example: ${GOTRUE_EXTERNAL_GOOGLE_ENABLED}
GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID= # Example: myhiddenid
GOTRUE_EXTERNAL_GOOGLE_SECRET= # Example: myhiddensecret
GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI= # Example: protocol://user:password@host:port/path
# GITHUB OAuth configGOTRUE_EXTERNAL_GITHUB_ENABLED= # Example: ${GOTRUE_EXTERNAL_GITHUB_ENABLED}
GOTRUE_EXTERNAL_GITHUB_CLIENT_ID= # Example: myhiddenid
GOTRUE_EXTERNAL_GITHUB_SECRET= # Example: myhiddensecret
GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI= # Example: protocol://user:password@host:port/path
# Discord OAuth configGOTRUE_EXTERNAL_DISCORD_ENABLED= # Example: ${GOTRUE_EXTERNAL_DISCORD_ENABLED}
GOTRUE_EXTERNAL_DISCORD_CLIENT_ID= # Example: myhiddenid
GOTRUE_EXTERNAL_DISCORD_SECRET= # Example: myhiddensecret
GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI= # Example: protocol://user:password@host:port/path
RUST_LOG= # Example: info
APPFLOWY_ENVIRONMENT= # Example: production
APPFLOWY_DATABASE_URL= # Example: protocol://user:password@host:port/path
APPFLOWY_REDIS_URI= # Example: protocol://user:password@host:port/path
APPFLOWY_GOTRUE_JWT_SECRET= # Example: myhiddensecret
APPFLOWY_GOTRUE_JWT_EXP= # Example: ${GOTRUE_JWT_EXP}
APPFLOWY_GOTRUE_BASE_URL= # Example: protocol://user:password@host:port/path
APPFLOWY_GOTRUE_EXT_URL= # Example: protocol://user:password@host:port/path
APPFLOWY_GOTRUE_ADMIN_EMAIL= # Example: user.name@gmail.com
APPFLOWY_GOTRUE_ADMIN_PASSWORD= # Example: Passw0rd
APPFLOWY_S3_USE_MINIO= # Example: ${APPFLOWY_S3_USE_MINIO}
APPFLOWY_S3_MINIO_URL= # Example: protocol://user:password@host:port/path
APPFLOWY_S3_ACCESS_KEY= # Example: myhiddenkey
APPFLOWY_S3_SECRET_KEY= # Example: myhiddenkey
APPFLOWY_S3_BUCKET= # Example: ${APPFLOWY_S3_BUCKET}
APPFLOWY_S3_REGION= # Example: ${APPFLOWY_S3_REGION}
RUST_LOG= # Example: info
ADMIN_FRONTEND_REDIS_URL= # Example: protocol://user:password@host:port/path
ADMIN_FRONTEND_GOTRUE_URL= # Example: protocol://user:password@host:port/path
-10
View File
@@ -1,10 +0,0 @@
apprise_config_dir= # Example: /config
apprise_attach_dir= # Example: /attach
# apprise_stateful_mode=apprise_config_lock= # Example: no
# apprise_deny_services=# apprise_allow_services=allowed_hosts= # Example: *
apprise_recursion_max= # Example: 1
# apprise_worker_count=base_url= # Example: protocol://user:password@host:port/path
log_level= # Example: DEBUG
debug= # Example: yes
-23
View File
@@ -1,23 +0,0 @@
AUTHENTIK_POSTGRESQL__HOST= # Example: postgres
AUTHENTIK_POSTGRESQL__NAME= # Example: authentik
AUTHENTIK_POSTGRESQL__USER= # Example: username
AUTHENTIK_POSTGRESQL__PASSWORD= # Example: Passw0rd
AUTHENTIK_DEBUG= # Example: true
PG_PASS= # Example: Passw0rd
AUTHENTIK_REDIS__HOST= # Example: redis
AUTHENTIK_SECRET_KEY= # Example: myhiddenkey
AUTHENTIK_EMAIL__HOST= # Example: user.name@gmail.com
AUTHENTIK_EMAIL__PORT= # Example: user.name@gmail.com
AUTHENTIK_EMAIL__USERNAME= # Example: user.name@gmail.com
AUTHENTIK_EMAIL__PASSWORD= # Example: Passw0rd
# # Use StartTLSAUTHENTIK_EMAIL__USE_TLS= # Example: user.name@gmail.com
# # Use SSLAUTHENTIK_EMAIL__FROM= # Example: user.name@gmail.com
AK_ADMIN_PASS= # Example: Passw0rd
AUTHENTIK_LISTEN__HTTP= # Example: 0.0.0.0:80
AUTHENTIK_LISTEN__HTTPS= # Example: 0.0.0.0:443
AUTHENTIK_LISTEN__LDAP= # Example: 0.0.0.0:389
AUTHENTIK_LISTEN__LDAPS= # Example: 0.0.0.0:636
AUTHENTIK_HOST= # Example: http://authentik
AUTHENTIK_INSECURE= # Example: true
AUTHENTIK_TOKEN= # Example: myhiddentoken
-3
View File
@@ -1,3 +0,0 @@
AUTHENTIK_LISTEN__LDAP= # Example: 0.0.0.0:389
AUTHENTIK_LISTEN__LDAPS= # Example: 0.0.0.0:636
AUTHENTIK_TOKEN= # Example: myhiddentoken
-15
View File
@@ -1,15 +0,0 @@
PUID= # Example: myhiddenid
PGID= # Example: myhiddenid
TZ= # Example: Etc/UTC
APP_URL= # Example: protocol://user:password@host:port/path
APP_KEY= # Example: myhiddenkey
DB_CONNECTION= # Example: postgresql
DB_HOST= # Example: postgres
DB_PORT= # Example: 5432
DB_DATABASE= # Example: bookstack
DB_USERNAME= # Example: username
DB_PASSWORD= # Example: Passw0rd
-8
View File
@@ -1,8 +0,0 @@
WORDPRESS_DB_HOST= # Example: business_mysql
WORDPRESS_DB_NAME= # Example: business
WORDPRESS_DB_USER= # Example: username
WORDPRESS_DB_PASSWORD= # Example: Passw0rd
# WORDPRESS_TABLE_PREFIX=...MYSQL_DATABASE= # Example: business
MYSQL_USER= # Example: username
MYSQL_PASSWORD= # Example: Passw0rd
MYSQL_RANDOM_ROOT_PASSWORD= # Example: Passw0rd
-9
View File
@@ -1,9 +0,0 @@
TUNNEL_TOKEN= # Example: myhiddentoken
CLOUDFLARED_TOKEN= # Example: myhiddentoken
CLOUDFLARE_API_TOKEN= # Example: myhiddentoken
CLOUDFLARE_ACCOUNT_ID= # Example: myhiddenid
CLOUDFLARE_TUNNEL_ID= # Example: myhiddenid
CLOUDFLARE_ZONE_ID= # Example: myhiddenid
# DOMAIN_NAME=traefik.marcpartensky.comTRAEFIK_API_ENDPOINT= # Example: http://traefik:8080
TRAEFIK_SERVICE_ENDPOINT= # Example: http://traefik:80
TRAEFIK_ENTRYPOINT= # Example: web
-35
View File
@@ -1,35 +0,0 @@
DISCORD_PREFIX= # Example: .
DISCORD_TOKEN= # Example: myhiddentoken
DISCORD_CLIENT_ID= # Example: myhiddenid
DISCORD_MONGO_CLUSTER= # Example: discord-cluster-5ckni.mongodb.net/test
DISCORD_MONGO_USERNAME= # Example: username
DISCORD_MONGO_PASSWORD= # Example: Passw0rd
# DISCORD_MONGO_CLUSTER=discord_bot_mongo/testWOLFRAM_ALPHA_ID= # Example: myhiddenid
FACEBOOK_MAIL= # Example: user.name@gmail.com
FACEBOOK_PASSWORD= # Example: Passw0rd
FACEBOOK_MAIL_2= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_2= # Example: Passw0rd
FACEBOOK_MAIL_MISCORD= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_MISCORD= # Example: Passw0rd
MISCORD_DASHBOARD_USERNAME= # Example: username
MISCORD_DASHBOARD_PASSWORD= # Example: Passw0rd
PYGITHUB_TOKEN= # Example: myhiddentoken
GITHUB_TOKEN= # Example: myhiddentoken
CAPTCHA_WEBSITE_KEY= # Example: myhiddenkey
CAPTCHA_SECRET_KEY= # Example: myhiddenkey
LEEKWARS_USERNAME= # Example: username
BRAWLSTARS_ID= # Example: myhiddenid
BRAWLSTARS_MAIL= # Example: user.name@gmail.com
BRAWLSTARS_PASSWORD= # Example: Passw0rd
BRAWLSTARS_TOKEN= # Example: myhiddentoken
DOCKER_API_URL= # Example: protocol://user:password@host:port/path
DISCORD_BOT_HOST= # Example: 0.0.0.0
DISCORD_BOT_PORT= # Example: 8000
SHORTENER_URL= # Example: protocol://user:password@host:port/path
IALAB_URL= # Example: protocol://user:password@host:port/path
POSTGRES_DB= # Example: website
POSTGRES_USER= # Example: username
POSTGRES_HOST= # Example: postgres
POSTGRES_PORT= # Example: 5432
POSTGRES_PASSWORD= # Example: Passw0rd
CHANNEL_ID_NOTIF= # Example: myhiddenid
@@ -1,2 +0,0 @@
MONGO_INITDB_ROOT_USERNAME= # Example: username
MONGO_INITDB_ROOT_PASSWORD= # Example: Passw0rd
@@ -1,3 +0,0 @@
ME_CONFIG_BASICAUTH_USERNAME= # Example: username
ME_CONFIG_BASICAUTH_PASSWORD= # Example: Passw0rd
ME_CONFIG_MONGODB_URL= # Example: protocol://user:password@host:port/path
@@ -1,3 +0,0 @@
DISCORD_TOKEN= # Example: myhiddentoken
OPENAI_EMAIL= # Example: user.name@gmail.com
OPENAI_PASSWORD= # Example: Passw0rd
-26
View File
@@ -1,26 +0,0 @@
DJANKISERV_MAINDB_ENGINE= # Example: django.db.backends.postgresql
DJANKISERV_MAINDB_NAME= # Example: djankiserv
DJANKISERV_MAINDB_USER= # Example: username
DJANKISERV_MAINDB_PASSWORD= # Example: Passw0rd
DJANKISERV_MAINDB_HOST= # Example: postgres
DJANKISERV_MAINDB_PORT= # Example: 5432
DJANKISERV_USERDB_ENGINE= # Example: username
DJANKISERV_USERDB_NAME= # Example: username
DJANKISERV_USERDB_USER= # Example: username
DJANKISERV_USERDB_PASSWORD= # Example: Passw0rd
DJANKISERV_USERDB_HOST= # Example: username
DJANKISERV_USERDB_PORT= # Example: username
HOST= # Example: 0.0.0.0
PORT= # Example: 8000
DJANKISERV_DEBUG= # Example: True
# DJANKISERV_DATA_ROOT=/code/dataDJANKISERV_SECRET_KEY= # Example: myhiddenkey
# DJANKISERV_ALLOWED_HOSTS='djankiserv.marcpartensky.com'DJANKISERV_ALLOWED_HOSTS= # Example: "*"
DJANKISERV_HOSTS= # Example: djankiserv
DJANGO_DEBUG= # Example: 1
# DJANGO_ALLOWED_HOSTS="*,localhost"# ALLOWED_HOSTS="*,localhost"ALLOWED_HOSTS= # Example: *
DJANGO_SETTINGS_MODULE= # Example: djankiserv_api.settings
PYTHON_APP= # Example: /app/src
-8
View File
@@ -1,8 +0,0 @@
NODE_ENV= # Example: docker
ADMIN_NAME= # Example: marc
ADMIN_PASSWORD= # Example: Passw0rd
JWT_SECRET= # Example: myhiddensecret
DB_HOST= # Example: postgres
DB_USER= # Example: username
DB_PASSWORD= # Example: Passw0rd
DB_NAME= # Example: dockerdash
-28
View File
@@ -1,28 +0,0 @@
DISCORD_PREFIX= # Example: .
DISCORD_TOKEN= # Example: myhiddentoken
DISCORD_CLIENT_ID= # Example: myhiddenid
# DISCORD_MONGO_CLUSTER=discord-cluster-5ckni.mongodb.net/testDISCORD_MONGO_USERNAME= # Example: username
DISCORD_MONGO_CLUSTER= # Example: discord_bot_mongo
DISCORD_MONGO_PASSWORD= # Example: Passw0rd
WOLFRAM_ALPHA_ID= # Example: myhiddenid
FACEBOOK_MAIL= # Example: user.name@gmail.com
FACEBOOK_PASSWORD= # Example: Passw0rd
FACEBOOK_MAIL_2= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_2= # Example: Passw0rd
FACEBOOK_MAIL_MISCORD= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_MISCORD= # Example: Passw0rd
MISCORD_DASHBOARD_USERNAME= # Example: username
MISCORD_DASHBOARD_PASSWORD= # Example: Passw0rd
PYGITHUB_TOKEN= # Example: myhiddentoken
GITHUB_TOKEN= # Example: myhiddentoken
CAPTCHA_WEBSITE_KEY= # Example: myhiddenkey
CAPTCHA_SECRET_KEY= # Example: myhiddenkey
LEEKWARS_USERNAME= # Example: username
BRAWLSTARS_ID= # Example: myhiddenid
BRAWLSTARS_MAIL= # Example: user.name@gmail.com
BRAWLSTARS_PASSWORD= # Example: Passw0rd
BRAWLSTARS_TOKEN= # Example: myhiddentoken
DOCKER_API_URL= # Example: protocol://user:password@host:port/path
DISCORD_BOT_HOST= # Example: 0.0.0.0
DISCORD_BOT_PORT= # Example: 8000
SHORTENER_URL= # Example: protocol://user:password@host:port/path
-13
View File
@@ -1,13 +0,0 @@
DB_ENGINE= # Example: postgres
DATABASE_NAME= # Example: etesync
DATABASE_USER= # Example: username
DATABASE_HOST= # Example: postgres
DATABASE_PASSWORD= # Example: Passw0rd
DATABASE_PORT= # Example: 5432
SUPER_USER= # Example: username
SUPER_PASS= # Example: Passw0rd
SUPER_EMAIL= # Example: user.name@gmail.com
SECRET_KEY= # Example: myhiddenkey
DEBUG= # Example: False
AUTO_UPDATE= # Example: true
# ALLOWED_HOSTS=etesync.marcpartensky.fr,etesync.marcpartensky.comALLOWED_HOSTS= # Example: etesync.marcpartensky.fr
-14
View File
@@ -1,14 +0,0 @@
ADMIN_PASSWORD= # Example: Passw0rd
DB_TYPE= # Example: postgres
DB_USER= # Example: username
DB_HOST= # Example: postgres
DB_PORT= # Example: 5432
DB_PASS= # Example: Passw0rd
DB_NAME= # Example: etherpad
DB_CHARSET= # Example: utf8mb4
# REQUIRE_AUTHENTICATION=trueREQUIRE_AUTHENTICATION= # Example: false
# ne marche pasSSO_ISSUER= # Example: https://authentik.marcpartensky.com
ADMIN_CLIENT= # Example: myhiddensecret
ADMIN_SECRET= # Example: myhiddensecret
COMMIT_RATE_LIMIT_POINTS= # Example: 150
-12
View File
@@ -1,12 +0,0 @@
TZ= # Example: Europe/Paris
F2B_LOG_TARGET= # Example: STDOUT
F2B_LOG_LEVEL= # Example: INFO
F2B_DB_PURGE_AGE= # Example: 1d
SSMTP_HOST= # Example: smtp.gmail.com
SSMTP_PORT= # Example: 587
SSMTP_HOSTNAME= # Example: gmail.com
SSMTP_USER= # Example: username
SSMTP_PASSWORD= # Example: Passw0rd
SSMTP_TLS= # Example: YES
-6
View File
@@ -1,6 +0,0 @@
SYNCSERVER_PUBLIC_URL= # Example: protocol://user:password@host:port/path
SYNCSERVER_SECRET= # Example: myhiddensecret
SYNCSERVER_SQLURI= # Example: protocol://user:password@host:port/path
SYNCSERVER_BATCH_UPLOAD_ENABLED= # Example: true
SYNCSERVER_FORCE_WSGI_ENVIRON= # Example: false
PORT= # Example: 5000
-1
View File
@@ -1 +0,0 @@
MYSQL_ROOT_PASSWORD= # Example: Passw0rd
-1
View File
@@ -1 +0,0 @@
ADMIN_PASSWORD= # Example: Passw0rd
-8
View File
@@ -1,8 +0,0 @@
POSTGRES_USER= # Example: username
POSTGRES_PASSWORD= # Example: Passw0rd
POSTGRES_DB= # Example: gitea
GITEA__database__TYPE= # Example: postgres
GITEA__database__HOST= # Example: postgres
GITEA__database__NAME= # Example: gitea
GITEA__database__USER= # Example: username
GITEA__database__PASSWD= # Example: Passw0rd
-7
View File
@@ -1,7 +0,0 @@
# SERVER_COUNTRIES: France# WireguardVPN_TYPE= # Example: 0.0.0.0
VPN_SERVICE_PROVIDER= # Example: myhiddenid
VPN_ENDPOINT_IP= # Example: 0.0.0.0
VPN_ENDPOINT_PORT= # Example: 0.0.0.0
WIREGUARD_PUBLIC_KEY= # Example: myhiddenkey
WIREGUARD_PRIVATE_KEY= # Example: myhiddenkey
WIREGUARD_ADDRESSES= # Example: 192.168.6.78/32
-40
View File
@@ -1,40 +0,0 @@
GF_INSTALL_PLUGINS= # Example: grafana-mqtt-datasource,redis-datasource,cloudflare-app
GF_SERVER_ROOT_URL= # Example: protocol://user:password@host:port/path
GF_SERVER_DOMAIN= # Example: grafana.marcpartensky.com
GF_SECURITY_ALLOW_EMBEDDING= # Example: protocol://user:password@host:port/path
GF_AUTH_ANONYMOUS_ENABLED= # Example: True
# GF_SERVER_SERVE_FROM_SUB_PATH=false# GF_SERVER_ENFORCE_DOMAIN=true# GF_REVERSE_PROXY_HEADERS_X_FORWARDED_PROTO=true# GF_REVERSE_PROXY_HEADER_X_FORWARDED_HOST=true
# PostgresGF_DATABASE_TYPE= # Example: postgres
GF_DATABASE_HOST= # Example: postgres
GF_DATABASE_NAME= # Example: grafana
GF_DATABASE_USER= # Example: username
GF_DATABASE_PASSWORD= # Example: Passw0rd
GF_DATABASE_SSL_MODE= # Example: disable
GF_AUTH_GENERIC_OAUTH_ENABLED= # Example: true
GF_AUTH_OAUTH_AUTO_LOGIN= # Example: true
GF_AUTH_GENERIC_OAUTH_NAME= # Example: Authentik
GF_AUTH_GENERIC_OAUTH_CLIENT_ID= # Example: myhiddenid
GF_AUTH_GENERIC_OAUTH_CLIENT_SECRET= # Example: myhiddensecret
GF_AUTH_GENERIC_OAUTH_SCOPES= # Example: openid profile email
GF_AUTH_GENERIC_OAUTH_AUTH_URL= # Example: protocol://user:password@host:port/path
GF_AUTH_GENERIC_OAUTH_TOKEN_URL= # Example: myhiddentoken
GF_AUTH_GENERIC_OAUTH_API_URL= # Example: protocol://user:password@host:port/path
GF_AUTH_SIGNOUT_REDIRECT_URL= # Example: protocol://user:password@host:port/path
GF_AUTH_GENERIC_OAUTH_ROLE_ATTRIBUTE_PATH= # Example: "contains(groups, 'Grafana Admins') && 'Admin' || contains(groups, 'Grafana Editors') && 'Editor' || 'Viewer'"
# # Enable LDAP# GF_AUTH_LDAP_ENABLED=true
# # LDAP Server Configuration# GF_AUTH_LDAP_CONFIG_SERVERS_0_HOST=ldap# GF_AUTH_LDAP_CONFIG_SERVERS_0_PORT=389# GF_AUTH_LDAP_CONFIG_SERVERS_0_USE_SSL=false
# # Bind Credentials# GF_AUTH_LDAP_CONFIG_SERVERS_0_BIND_DN=cn=ldapservice,dc=ldap,dc=goauthentik,dc=io
# GF_AUTH_LDAP_CONFIG_SERVERS_0_SEARCH_FILTER=(cn=%s)# GF_AUTH_LDAP_CONFIG_SERVERS_0_SEARCH_BASE_DNS=dc=ldap,dc=goauthentik,dc=io
# # Group Mapping# - GF_AUTH_LDAP_CONFIG_SERVERS_0_GROUP_MAPPINGS_0_GROUP_DN=cn=admins,ou=groups,dc=example,dc=com# - GF_AUTH_LDAP_CONFIG_SERVERS_0_GROUP_MAPPINGS_0_ORG_ROLE=Admin# - GF_AUTH_LDAP_CONFIG_SERVERS_0_GROUP_MAPPINGS_1_GROUP_DN=cn=editors,ou=groups,dc=example,dc=com# - GF_AUTH_LDAP_CONFIG_SERVERS_0_GROUP_MAPPINGS_1_ORG_ROLE=Editor
-13
View File
@@ -1,13 +0,0 @@
DB_NAME= # Example: brainperformer
DB_USER= # Example: username
DB_PASSWORD= # Example: Passw0rd
DB_HOST= # Example: 0.0.0.0
RECAPTCHA_SECRET_KEY= # Example: myhiddenkey
MAIL= # Example: user.name@gmail.com
MAIL_PASSWORD= # Example: Passw0rd
MYSQL_DATABASE= # Example: brainperformer
MYSQL_USER= # Example: username
MYSQL_PASSWORD= # Example: Passw0rd
MYSQL_ROOT_HOST= # Example: 0.0.0.0
MYSQL_RANDOM_ROOT_PASSWORD= # Example: Passw0rd
-3
View File
@@ -1,3 +0,0 @@
ACCOUNT_EMAIL= # Example: user.name@gmail.com
ACCOUNT_PASSWORD= # Example: Passw0rd
DEVICE_NAME= # Example: vps
-29
View File
@@ -1,29 +0,0 @@
DISCORD_PREFIX= # Example: .
DISCORD_TOKEN= # Example: myhiddentoken
DISCORD_CLIENT_ID= # Example: myhiddenid
DISCORD_MONGO_CLUSTER= # Example: discord-cluster-5ckni.mongodb.net/test
DISCORD_MONGO_USERNAME= # Example: username
DISCORD_MONGO_PASSWORD= # Example: Passw0rd
# DISCORD_MONGO_CLUSTER=discord_bot_mongo/testWOLFRAM_ALPHA_ID= # Example: myhiddenid
FACEBOOK_MAIL= # Example: user.name@gmail.com
FACEBOOK_PASSWORD= # Example: Passw0rd
FACEBOOK_MAIL_2= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_2= # Example: Passw0rd
FACEBOOK_MAIL_MISCORD= # Example: user.name@gmail.com
FACEBOOK_PASSWORD_MISCORD= # Example: Passw0rd
MISCORD_DASHBOARD_USERNAME= # Example: username
MISCORD_DASHBOARD_PASSWORD= # Example: Passw0rd
PYGITHUB_TOKEN= # Example: myhiddentoken
GITHUB_TOKEN= # Example: myhiddentoken
CAPTCHA_WEBSITE_KEY= # Example: myhiddenkey
CAPTCHA_SECRET_KEY= # Example: myhiddenkey
LEEKWARS_USERNAME= # Example: username
BRAWLSTARS_ID= # Example: myhiddenid
BRAWLSTARS_MAIL= # Example: user.name@gmail.com
BRAWLSTARS_PASSWORD= # Example: Passw0rd
BRAWLSTARS_TOKEN= # Example: myhiddentoken
DOCKER_API_URL= # Example: protocol://user:password@host:port/path
DISCORD_BOT_HOST= # Example: 0.0.0.0
DISCORD_BOT_PORT= # Example: 8000
SHORTENER_URL= # Example: protocol://user:password@host:port/path
IALAB_URL= # Example: protocol://user:password@host:port/path
-2
View File
@@ -1,2 +0,0 @@
KEYCLOAK_ADMIN= # Example: myhiddenkey
KEYCLOAK_ADMIN_PASSWORD= # Example: Passw0rd
View File
-2
View File
@@ -1,2 +0,0 @@
LDAP_ADMIN_BIND_PWD= # Example: Passw0rd
LDAP_ADMIN_PASSWORD= # Example: Passw0rd
@@ -1,2 +0,0 @@
LDAP_ADMIN_PASSWORD= # Example: Passw0rd
LDAP_CONFIG_PASSWORD= # Example: Passw0rd
-122
View File
@@ -1,122 +0,0 @@
# mariadbMYSQL_ROOT_PASSWORD= # Example: Passw0rd
MYSQL_DATABASE= # Example: mailcow
MYSQL_USER= # Example: username
MYSQL_PASSWORD= # Example: Passw0rd
MYSQL_INITDB_SKIP_TZINFO= # Example: 0.0.0.0
# ------------------------------# ------------------------------
MAILCOW_HOSTNAME= # Example: user.name@gmail.com
MAILCOW_PASS_SCHEME= # Example: Passw0rd
# ------------------------------# SQL database configuration# ------------------------------
DBNAME= # Example: mailcow
DBUSER= # Example: username
# Please use long, random alphanumeric strings (A-Za-z0-9)
DBPASS= # Example: Passw0rd
DBROOT= # Example: 8v5tSifRaAjLRVObkRbe1F0qjm11
# ------------------------------# HTTP/S Bindings# ------------------------------
# You should use HTTPS, but in case of SSL offloaded reverse proxies:# Might be important: This will also change the binding within the container.# If you use a proxy within Docker, point it to the ports you set below.# IMPORTANT: Do not use port 8081, 9081 or 65510!# Example: HTTP_BIND=1.2.3.4
HTTP_PORT= # Example: 80
HTTP_BIND=
HTTPS_PORT= # Example: 443
HTTPS_BIND=
# ------------------------------# Other bindings# ------------------------------# You should leave that alone# Format: 11.22.33.44:25 or 12.34.56.78:465 etc.
SMTP_PORT= # Example: 25
SMTPS_PORT= # Example: 465
SUBMISSION_PORT= # Example: 587
IMAP_PORT= # Example: 143
IMAPS_PORT= # Example: 993
POP_PORT= # Example: 110
POPS_PORT= # Example: 995
SIEVE_PORT= # Example: 4190
DOVEADM_PORT= # Example: 127.0.0.1:19991
SQL_PORT= # Example: 127.0.0.1:13306
SOLR_PORT= # Example: 127.0.0.1:18983
REDIS_PORT= # Example: 127.0.0.1:7654
# Your timezone# Use the row named 'TZ database name' + pay attention for 'Notes' row
TZ= # Example: Europe/Paris
# Fixed project name# Please use lowercase letters only
COMPOSE_PROJECT_NAME= # Example: mailcow
ACL_ANYONE= # Example: disallow
# Garbage collector cleanup# How long should objects remain in the garbage until they are being deleted? (value in minutes)
MAILDIR_GC_TIME= # Example: user.name@gmail.com
# Additional SAN for the certificate##ADDITIONAL_SAN=imap.*,smtp.*# This will expand the certificate to "imap.example.com", "smtp.example.com", "imap.example.net", "smtp.example.net"# plus every domain you add in the future.## You can also just add static names...#ADDITIONAL_SAN=srv1.example.net# ...or combine wildcard and static names:#ADDITIONAL_SAN=imap.*,srv1.example.com#
ADDITIONAL_SAN= # Example: marcpartensky.com
## You can understand this as server_name directive in Nginx.# Comma separated list without spaces! Example: ADDITIONAL_SERVER_NAMES=a.b.c,d.e.f
ADDITIONAL_SERVER_NAMES=
SKIP_LETS_ENCRYPT= # Example: 0.0.0.0
# Create seperate certificates for all domains - y/nENABLE_SSL_SNI= # Example: n
SKIP_IP_CHECK= # Example: 0.0.0.0
SKIP_HTTP_VERIFICATION= # Example: 0.0.0.0
SKIP_CLAMD= # Example: 0.0.0.0
SKIP_SOGO= # Example: 0.0.0.0
SKIP_SOLR= # Example: 0.0.0.0
# Solr heap size in MB, there is no recommendation, please see Solr docs.# Solr is a prone to run OOM and should be monitored. Unmonitored Solr setups are not recommended.
SOLR_HEAP= # Example: 1024
ALLOW_ADMIN_EMAIL_LOGIN= # Example: user.name@gmail.com
USE_WATCHDOG= # Example: y
# CAUTION:
WATCHDOG_NOTIFY_BAN= # Example: n
#WATCHDOG_SUBJECT=
# No data is collected. Opt-in and anonymous.WATCHDOG_EXTERNAL_CHECKS= # Example: n
# Enable watchdog verbose loggingWATCHDOG_VERBOSE= # Example: n
# Max log lines per service to keep in Redis logs
LOG_LINES= # Example: 9999
IPV4_NETWORK= # Example: 0.0.0.0
IPV6_NETWORK= # Example: 0.0.0.0
#SNAT_TO_SOURCE=
#SNAT6_TO_SOURCE=
#API_ALLOW_FROM=172.22.1.1,127.0.0.1
MAILDIR_SUB= # Example: user.name@gmail.com
# SOGo session timeout in minutesSOGO_EXPIRE_SESSION= # Example: 480
# LEAVE EMPTY IF UNSUREDOVECOT_MASTER_USER= # Example: username
# LEAVE EMPTY IF UNSUREDOVECOT_MASTER_PASS= # Example: Passw0rd
# Let's Encrypt registration contact information# Optional: Leave empty for none# This value is only used on first order!# Setting it at a later point will require the following steps:ACME_CONTACT=
# WebAuthn device manufacturer verification# After setting WEBAUTHN_ONLY_TRUSTED_VENDORS=y only devices from trusted manufacturers are allowedWEBAUTHN_ONLY_TRUSTED_VENDORS= # Example: n
-2
View File
@@ -1,2 +0,0 @@
MINIO_ROOT_USER= # Example: username
MINIO_ROOT_PASSWORD= # Example: Passw0rd
-8
View File
@@ -1,8 +0,0 @@
NODE_ENV= # Example: docker
ADMIN_NAME= # Example: marc
ADMIN_PASSWORD= # Example: Passw0rd
JWT_SECRET= # Example: myhiddensecret
DB_HOST= # Example: postgres
DB_USER= # Example: username
DB_PASSWORD= # Example: Passw0rd
DB_NAME= # Example: dockerdash
-1
View File
@@ -1 +0,0 @@
WALLET= # Example: 43J2XmRtjDPRLD35UsYGH2AZamFBQz7dt4VdvZXVm3SuadTrvcoXUXBRUNHqukFte23Q5TWXqhbwaLJJgoVQzzbe2AJDANQ
-2
View File
@@ -1,2 +0,0 @@
MONGO_INITDB_ROOT_USERNAME= # Example: username
MONGO_INITDB_ROOT_PASSWORD= # Example: Passw0rd
-7
View File
@@ -1,7 +0,0 @@
MONGODB_HOST= # Example: mongo
MONGODB_PORT= # Example: 27017
MONGODB_USER= # Example: username
MONGODB_PASS= # Example: Passw0rd
CRON_TIME= # Example: "0 5 * * *"
INIT_BACKUP= # Example: 1
# MAX_BACKUPS the number of backups to keep. When reaching the limit, the old backup will be discarded. No limit, by default
-3
View File
@@ -1,3 +0,0 @@
ME_CONFIG_MONGODB_URL= # Example: protocol://user:password@host:port/path
ME_CONFIG_AUTH_USERNAME= # Example: username
ME_CONFIG_AUTH_PASSWORD= # Example: Passw0rd
@@ -1 +0,0 @@
PBM_MONGODB_URI= # Example: protocol://user:password@host:port/path
-27
View File
@@ -1,27 +0,0 @@
N8N_HOST= # Example: 0.0.0.0
N8N_PORT= # Example: 5678
WEBHOOK_URL= # Example: protocol://user:password@host:port/path
DB_TYPE= # Example: postgresdb
DB_POSTGRESDB_HOST= # Example: postgres
DB_POSTGRESDB_PORT= # Example: 5432
DB_POSTGRESDB_DATABASE= # Example: n8n
DB_POSTGRESDB_USER= # Example: username
DB_POSTGRESDB_PASSWORD= # Example: Passw0rd
GENERIC_TIMEZONE= # Example: Europe/Paris
TZ= # Example: Europe/Paris
N8N_DIAGNOSTICS_ENABLED= # Example: false
N8N_VERSION_NOTIFICATIONS_ENABLED= # Example: false
N8N_TEMPLATES_ENABLED= # Example: false
N8N_BASIC_AUTH_ACTIVE= # Example: false
# N8N_PROTOCOL=${N8N_PROTOCOL}
EXECUTIONS_MODE= # Example: queue
QUEUE_BULL_REDIS_HOST= # Example: redis
QUEUE_HEALTH_CHECK_ACTIVE= # Example: true
N8N_ENCRYPTION_KEY= # Example: myhiddenkey
N8N_RUNNERS_ENABLED= # Example: true
-5
View File
@@ -1,5 +0,0 @@
POSTGRES_ROOT_PASSWORD= # Example: Passw0rd
POSTGRES_PASSWORD= # Example: Passw0rd
POSTGRES_DATABASE= # Example: nextcloud
POSTGRES_USER= # Example: username
POSTGRES_HOST= # Example: postgres
-1
View File
@@ -1 +0,0 @@
NC_DB= # Example: protocol://user:password@host:port/path
-52
View File
@@ -1,52 +0,0 @@
APP_NAME= # Example: "Numéris ISEP"
APP_ENV= # Example: production
APP_KEY= # Example: myhiddenkey
APP_DEBUG= # Example: false
APP_URL= # Example: protocol://user:password@host:port/path
FRONT_APP_URL= # Example: protocol://user:password@host:port/path
production= # Example: 1
LOG_CHANNEL= # Example: stack
DB_CONNECTION= # Example: mysql
DB_HOST= # Example: numeris_mysql
DB_PORT= # Example: 3306
DB_DATABASE= # Example: numeris
DB_USERNAME= # Example: username
DB_PASSWORD= # Example: Passw0rd
MYSQL_ROOT_PASSWORD= # Example: Passw0rd
PMA_HOST= # Example: numeris_mysql
PMA_USER= # Example: username
PMA_PASSWORD= # Example: Passw0rd
BROADCAST_DRIVER= # Example: log
CACHE_DRIVER= # Example: file
SESSION_DRIVER= # Example: file
SESSION_LIFETIME= # Example: 120
QUEUE_DRIVER= # Example: sync
REDIS_HOST= # Example: 127.0.0.1
REDIS_PASSWORD= # Example: Passw0rd
REDIS_PORT= # Example: 6379
MAIL_DRIVER= # Example: user.name@gmail.com
MAIL_HOST= # Example: user.name@gmail.com
MAIL_PORT= # Example: user.name@gmail.com
MAIL_USERNAME= # Example: user.name@gmail.com
MAIL_PASSWORD= # Example: Passw0rd
MAIL_ENCRYPTION= # Example: user.name@gmail.com
MAIL_FROM_ADDRESS= # Example: user.name@gmail.com
MAIL_FROM_NAME= # Example: user.name@gmail.com
PUSHER_APP_ID= # Example: myhiddenid
PUSHER_APP_KEY= # Example: myhiddenkey
PUSHER_APP_SECRET= # Example: myhiddensecret
PUSHER_APP_CLUSTER= # Example: mt1
MIX_PUSHER_APP_KEY= # Example: myhiddenkey
MIX_PUSHER_APP_CLUSTER= # Example: "${PUSHER_APP_CLUSTER}"
JWT_SECRET= # Example: myhiddensecret
GOOGLE_RECAPTCHA_KEY= # Example: myhiddenkey
GOOGLE_RECAPTCHA_SECRET= # Example: myhiddensecret
-4
View File
@@ -1,4 +0,0 @@
LDAP_ADMIN_USERNAME= # Example: username
LDAP_ADMIN_PASSWORD= # Example: Passw0rd
LDAP_USERS= # Example: username
LDAP_PASSWORDS= # Example: Passw0rd
-1
View File
@@ -1 +0,0 @@
VPN= # Example: 0.0.0.0
-122
View File
@@ -1,122 +0,0 @@
# –––––––––––––––– REQUIRED ––––––––––––––––
NODE_ENV= # Example: production
# in your terminal to generate a random value.SECRET_KEY= # Example: myhiddenkey
# `openssl rand -hex 32` in your terminal to produce this.UTILS_SECRET= # Example: myhiddensecret
# For production point these at your databases, in development the default# should work out of the box.DATABASE_URL= # Example: protocol://user:password@host:port/path
DATABASE_CONNECTION_POOL_MIN=
DATABASE_CONNECTION_POOL_MAX=
# Uncomment this to disable SSL for connecting to PostgresPGSSLMODE= # Example: disable
REDIS_URL= # Example: protocol://user:password@host:port/path
# use a base64 encoded JSON connection option object. Refer to the ioredis documentation# for a list of available options.# Example: Use Redis Sentinel for high availability# {"sentinels":[{"host":"sentinel-0","port":26379},{"host":"sentinel-1","port":26379}],"name":"mymaster"}
URL= # Example: protocol://user:password@host:port/path
PORT= # Example: 3000
# See [documentation](docs/SERVICES.md) on running a separate collaboration# server, for normal operation this does not need to be set.COLLABORATION_URL= # Example: protocol://user:password@host:port/path
# Specify what storage system to use. Possible value is one of "s3" or "local".# For "local", the avatar images and document attachments will be saved on local disk.FILE_STORAGE= # Example: local
# If "local" is configured for FILE_STORAGE above, then this sets the parent directory under# which all attachments/images go. Make sure that the process has permissions to create# this path and also to write files to it.FILE_STORAGE_LOCAL_ROOT_DIR= # Example: /var/lib/outline/data
# Maximum allowed size for the uploaded attachment.FILE_STORAGE_UPLOAD_MAX_SIZE= # Example: 262144000
# than the document attachment maximum size.FILE_STORAGE_IMPORT_MAX_SIZE=
# and the files are temporary being automatically deleted after a period of time.FILE_STORAGE_WORKSPACE_IMPORT_MAX_SIZE=
# To support uploading of images for avatars and document attachments in a distributed# architecture an s3-compatible storage can be configured if FILE_STORAGE=s3 above.AWS_ACCESS_KEY_ID= # Example: myhiddenid
AWS_SECRET_ACCESS_KEY= # Example: myhiddenkey
AWS_REGION= # Example: xx-xxxx-x
AWS_S3_ACCELERATE_URL= # Example: protocol://user:password@host:port/path
AWS_S3_UPLOAD_BUCKET_URL= # Example: protocol://user:password@host:port/path
AWS_S3_UPLOAD_BUCKET_NAME= # Example: bucket_name_here
AWS_S3_FORCE_PATH_STYLE= # Example: true
AWS_S3_ACL= # Example: private
# –––––––––––––– AUTHENTICATION ––––––––––––––
# Third party signin credentials, at least ONE OF EITHER Google, Slack,# or Microsoft is required for a working installation or you'll have no sign-in# options.
# To configure Slack auth, you'll need to create an Application at# => https://api.slack.com/apps#SLACK_CLIENT_ID= # Example: myhiddenid
SLACK_CLIENT_SECRET= # Example: myhiddensecret
# => https://console.cloud.google.com/apis/credentials#GOOGLE_CLIENT_ID= # Example: myhiddenid
GOOGLE_CLIENT_SECRET= # Example: myhiddensecret
# => https://wiki.generaloutline.com/share/dfa77e56-d4d2-4b51-8ff8-84ea6608faa4AZURE_CLIENT_ID= # Example: myhiddenid
AZURE_CLIENT_SECRET= # Example: myhiddensecret
AZURE_RESOURCE_APP_ID= # Example: myhiddenid
OIDC_CLIENT_ID= # Example: myhiddenid
OIDC_CLIENT_SECRET= # Example: myhiddenid
OIDC_AUTH_URI= # Example: myhiddenid
OIDC_TOKEN_URI= # Example: myhiddenid
OIDC_USERINFO_URI= # Example: myhiddenid
OIDC_LOGOUT_URI= # Example: myhiddenid
OIDC_USERNAME_CLAIM= # Example: myhiddenid
OIDC_DISPLAY_NAME= # Example: myhiddenid
OIDC_SCOPES= # Example: myhiddenid
OIDC_USERNAME_CLAIM= # Example: myhiddenid
OIDC_DISPLAY_NAME= # Example: myhiddenid
# Space separated auth scopes.
# To configure the GitHub integration, you'll need to create a GitHub App at# => https://github.com/settings/apps#GITHUB_CLIENT_ID= # Example: myhiddenid
GITHUB_CLIENT_SECRET= # Example: myhiddensecret
GITHUB_APP_NAME=
GITHUB_APP_ID= # Example: myhiddenid
GITHUB_APP_PRIVATE_KEY= # Example: myhiddenkey
# To configure Discord auth, you'll need to create a Discord Application at# => https://discord.com/developers/applications/#DISCORD_CLIENT_ID= # Example: myhiddenid
DISCORD_CLIENT_SECRET= # Example: myhiddensecret
# integrated with.# metadata such as nicknames, server icon and name.DISCORD_SERVER_ID= # Example: myhiddenid
# allowed to access Outline. If this is not set, all members of the server# will be allowed to access Outline.DISCORD_SERVER_ROLES=
# –––––––––––––––– OPTIONAL ––––––––––––––––
# required if you do not use an external reverse proxy. See documentation:# https://wiki.generaloutline.com/share/1c922644-40d8-41fe-98f9-df2b67239d45SSL_KEY= # Example: myhiddenkey
SSL_CERT=
# If using a Cloudfront/Cloudflare distribution or similar it can be set below.CDN_URL= # Example: protocol://user:password@host:port/path
# Auto-redirect to https in production. The default is true but you may set to# false if you can be sure that SSL is terminated at an external loadbalancer.FORCE_HTTPS= # Example: true
# Have the installation check for updates by sending anonymized statistics to# the maintainersENABLE_UPDATES= # Example: true
# available memory by 512 for a rough estimateWEB_CONCURRENCY= # Example: 1
# You can remove this line if your reverse proxy already logs incoming http# requests and this ends up being duplicativeDEBUG= # Example: http
# Configure lowest severity level for server logs. Should be one of# error, warn, info, http, verbose, debug and sillyLOG_LEVEL= # Example: info
# For a complete Slack integration with search and posting to channels the# following configs are also needed, some more details# => https://wiki.generaloutline.com/share/be25efd1-b3ef-4450-b8e5-c4a4fc11e02a#SLACK_VERIFICATION_TOKEN= # Example: myhiddentoken
SLACK_APP_ID= # Example: myhiddenid
SLACK_MESSAGE_ACTIONS= # Example: true
# and do not forget to whitelist your domain name in the app settingsDROPBOX_APP_KEY= # Example: myhiddenkey
# Optionally enable Sentry (sentry.io) to track errors and performance,SENTRY_DSN=
SENTRY_TUNNEL=
SMTP_HOST=
SMTP_PORT=
SMTP_USERNAME= # Example: username
SMTP_PASSWORD= # Example: Passw0rd
SMTP_FROM_EMAIL= # Example: user.name@gmail.com
SMTP_REPLY_EMAIL= # Example: user.name@gmail.com
SMTP_TLS_CIPHERS= # Example: 0.0.0.0
SMTP_SECURE= # Example: true
# The default interface language. See translate.getoutline.com for a list of# available language codes and their rough percentage translated.# DEFAULT_LANGUAGE=en_USDEFAULT_LANGUAGE= # Example: fr_FR
# Optionally enable rate limiter at application web serverRATE_LIMITER_ENABLED= # Example: true
# Configure default throttling parameters for rate limiterRATE_LIMITER_REQUESTS= # Example: 1000
RATE_LIMITER_DURATION_WINDOW= # Example: 60
# Iframely API configIFRAMELY_URL= # Example: protocol://user:password@host:port/path
IFRAMELY_API_KEY= # Example: myhiddenkey
-8
View File
@@ -1,8 +0,0 @@
WORDPRESS_DB_HOST= # Example: oxivia_mysql
WORDPRESS_DB_NAME= # Example: oxivia
WORDPRESS_DB_USER= # Example: username
WORDPRESS_DB_PASSWORD= # Example: Passw0rd
MYSQL_DATABASE= # Example: oxivia
MYSQL_USER= # Example: username
MYSQL_PASSWORD= # Example: Passw0rd
MYSQL_RANDOM_ROOT_PASSWORD= # Example: Passw0rd
-5
View File
@@ -1,5 +0,0 @@
FLASK_APP= # Example: /app/server.py
FLASK_ENV= # Example: debug
FLASK_DEBUG= # Example: 1
FLASK_HOST= # Example: pandoc
FLASK_PORT= # Example: 80
-3
View File
@@ -1,3 +0,0 @@
EMAIL= # Example: user.name@gmail.com
PASSWORD= # Example: Passw0rd
DEVICE_NAME= # Example: contabo
-25
View File
@@ -1,25 +0,0 @@
# Database / Postgres service configurationPOSTGRES_USER= # Example: username
POSTGRES_PASSWORD= # Example: Passw0rd
# Postgres database name "peertube"POSTGRES_DB= # Example: peertube
# Editable only with a suffix :#POSTGRES_DB=peertube_prod#PEERTUBE_DB_SUFFIX=_prodPEERTUBE_DB_USERNAME= # Example: username
PEERTUBE_DB_PASSWORD= # Example: Passw0rd
PEERTUBE_DB_SSL= # Example: false
# Default to Postgres service name "postgres" in docker-compose.ymlPEERTUBE_DB_HOSTNAME= # Example: postgres
# Server configurationPEERTUBE_WEBSERVER_HOSTNAME= # Example: peertube.marcpartensky.fr
# If you do not use https and a reverse-proxy in docker-compose.ymlPEERTUBE_WEBSERVER_PORT= # Example: 80
PEERTUBE_WEBSERVER_HTTPS= # Example: false
PEERTUBE_TRUST_PROXY= # Example: ["127.0.0.1", "loopback", "172.16.0.0/12", "192.168.0.0/16", "10.0.0.0/8"]
# If you use a Custom SMTP server# Default to Postfix service name "postfix" in docker-compose.yml# May be the hostname of your Custom SMTP serverPEERTUBE_SMTP_HOSTNAME= # Example: marcpartensky.com
PEERTUBE_SMTP_PORT= # Example: 25
PEERTUBE_SMTP_FROM= # Example: noreply@marcpartensky.com
PEERTUBE_SMTP_TLS= # Example: false
PEERTUBE_SMTP_DISABLE_STARTTLS= # Example: false
PEERTUBE_ADMIN_EMAIL= # Example: user.name@gmail.com
# Postfix service configurationPOSTFIX_myhostname= # Example: marcpartensky.com
OPENDKIM_DOMAINS= # Example: marcpartensky.com
# see https://github.com/wader/postfix-relay/pull/18OPENDKIM_RequireSafeKeys= # Example: myhiddenkey
# /!\ Prefer to use the PeerTube admin interface to set the following configurations /!\#PEERTUBE_SIGNUP_ENABLED=true#PEERTUBE_TRANSCODING_ENABLED=true#PEERTUBE_CONTACT_FORM_ENABLED=truePEERTUBE_SECRET= # Example: myhiddensecret
-5
View File
@@ -1,5 +0,0 @@
POSTGRES_USER= # Example: username
POSTGRES_PASS= # Example: Passw0rd
POSTGRES_PORT= # Example: 5432
POSTGRES_HOST= # Example: postgres
# DBLISTCRON_SCHEDULE= # Example: "0 5 * * *"
-2
View File
@@ -1,2 +0,0 @@
PGADMIN_DEFAULT_EMAIL= # Example: user.name@gmail.com
PGADMIN_DEFAULT_PASSWORD= # Example: Passw0rd
-10
View File
@@ -1,10 +0,0 @@
POSTGRES_HOST= # Example: postgres
POSTGRES_DB= # Example: authentik dockerdash etesync etherpad focalboard gitea grafana matrix nextcloud owncloud peertube postgres vaultwarden wallabag website wger
POSTGRES_USER= # Example: username
POSTGRES_PASSWORD= # Example: Passw0rd
POSTGRES_EXTRA_OPTS= # Example: -Z6 --schema=public --blobs
SCHEDULE= # Example: @daily
BACKUP_KEEP_DAYS= # Example: 7
BACKUP_KEEP_WEEKS= # Example: 4
BACKUP_KEEP_MONTHS= # Example: 6
HEALTHCHECK_PORT= # Example: 8080
-1
View File
@@ -1 +0,0 @@
DATABASE_URL= # Example: protocol://user:password@host:port/path
-3
View File
@@ -1,3 +0,0 @@
POSTGRES_DB= # Example: website
POSTGRES_USER= # Example: username
POSTGRES_PASSWORD= # Example: Passw0rd
-3
View File
@@ -1,3 +0,0 @@
PGRST_DB_URI= # Example: protocol://user:password@host:port/path
PGRST_DB_SCHEMA= # Example: public
PGRST_DB_ANON_ROLE= # Example: izitdone
-2
View File
@@ -1,2 +0,0 @@
MONGO_INITDB_ROOT_USERNAME= # Example: username
MONGO_INITDB_ROOT_PASSWORD= # Example: Passw0rd
-3
View File
@@ -1,3 +0,0 @@
MYSQL_PASSWORD= # Example: Passw0rd
MYSQL_ROOT_PASSWORD= # Example: Passw0rd
DB_PASSWORD= # Example: Passw0rd
-2
View File
@@ -1,2 +0,0 @@
REGISTRY_HTTP_SECRET= # Example: myhiddensecret
-2
View File
@@ -1,2 +0,0 @@
RP_EMAIL= # Example: user.name@gmail.com
RP_PASSWORD= # Example: Passw0rd

Some files were not shown because too many files have changed in this diff Show More