65 lines
1.1 KiB
YAML
65 lines
1.1 KiB
YAML
---
|
|
|
|
# Name of the Noamd job
|
|
instance: repo
|
|
|
|
repo:
|
|
|
|
nginx:
|
|
# Image to use
|
|
image: nginxinc/nginx-unprivileged:alpine
|
|
|
|
# Number of instances to run
|
|
count: 1
|
|
|
|
# Resources to allocate
|
|
resources:
|
|
cpu: 20
|
|
memory: 40
|
|
|
|
# Public URL of the repo
|
|
public_url: https://repo.example.org
|
|
|
|
# Traefik settings
|
|
traefik:
|
|
middlewares:
|
|
autodetect: autodetect@file
|
|
csp: false
|
|
|
|
# Optional, additional env vars
|
|
env: {}
|
|
|
|
rsync:
|
|
# Image to use
|
|
image: '[[ .docker.repo ]]rsync-ssh:24.5-1'
|
|
|
|
# Resources to allocate
|
|
resources:
|
|
cpu: 20
|
|
memory: 64
|
|
memory_max: 128
|
|
|
|
# Optional, additional env vars
|
|
env: {}
|
|
|
|
traefik:
|
|
# A list of entrypoints on which the ssh service will be exposed
|
|
entrypoints:
|
|
- repo-rsync
|
|
proto: tcp
|
|
connect: false
|
|
rule: HostSNI(`*`)
|
|
router: '[[ .instance ]]-rsync[[ .consul.suffix ]]'
|
|
|
|
# Volumes used
|
|
volumes:
|
|
# This on holds the repo itself
|
|
repo:
|
|
type: csi
|
|
source: repo
|
|
|
|
# This one is a very small volume, just to persist SSH host keys
|
|
ssh:
|
|
type: csi
|
|
source: repo-ssh
|