diff --git a/lsio/kavita/docker-compose.yaml b/lsio/kavita/docker-compose.yaml new file mode 100644 index 0000000..8d0a463 --- /dev/null +++ b/lsio/kavita/docker-compose.yaml @@ -0,0 +1,27 @@ +# [Kavita](https://github.com/Kareadita/Kavita) is a fast, feature rich, cross +# platform reading server. Built with a focus for being a full solution for all +# your reading needs. Setup your own server and share your reading collection +# with your friends and family! + +--- +version: "2.1" +services: + kavita: + image: ghcr.io/linuxserver/kavita + container_name: kavita + environment: + # for UserID + - PUID=${PUID:-1024} + # for GroupID + - PGID=${PGID:-100} + # specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). + - TZ=${TZ:-Europe/Amsterdam} + volumes: + # Contains all relevant configuration files. + - ${BASEDIR:-/volume1/docker}/kavita/config:/config + # Media library containing manga, comics and books. + - ${BASEDIR:-/volume1/docker}/kavita/data:/data + ports: + # web gui + - 5000:5000 + restart: unless-stopped diff --git a/lsio/kavita/docker-run.sh b/lsio/kavita/docker-run.sh new file mode 100644 index 0000000..0c2a731 --- /dev/null +++ b/lsio/kavita/docker-run.sh @@ -0,0 +1,16 @@ +# [Kavita](https://github.com/Kareadita/Kavita) is a fast, feature rich, cross +# platform reading server. Built with a focus for being a full solution for all +# your reading needs. Setup your own server and share your reading collection +# with your friends and family! + +. ./.env +docker run -d \ + --name=kavita \ + -e PUID=${PUID:-1024} `# for UserID` \ + -e PGID=${PGID:-100} `# for GroupID` \ + -e TZ=${TZ:-Europe/Amsterdam} `# specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List).` \ + -p 5000:5000 `# web gui` \ + -v ${BASEDIR:-/volume1/docker}/kavita/config:/config `# Contains all relevant configuration files.` \ + -v ${BASEDIR:-/volume1/docker}/kavita/data:/data `# Media library containing manga, comics and books.` \ + --restart unless-stopped \ + ghcr.io/linuxserver/kavita diff --git a/lsio/kavita/run-once.sh b/lsio/kavita/run-once.sh new file mode 100644 index 0000000..4e8aed1 --- /dev/null +++ b/lsio/kavita/run-once.sh @@ -0,0 +1,4 @@ +ln -s ../docker-env.cfg ./.env +. ./.env +mkdir -p ${BASEDIR:-/volume1/docker}/kavita/config +mkdir -p ${BASEDIR:-/volume1/docker}/kavita/data diff --git a/lsio/steamos/docker-compose.yaml b/lsio/steamos/docker-compose.yaml new file mode 100644 index 0000000..ab37778 --- /dev/null +++ b/lsio/steamos/docker-compose.yaml @@ -0,0 +1,47 @@ +# [SteamOS](https://www.steamdeck.com/) is an Arch based Linux distribution made +# by Valve Software. This container is a vanilla Arch install with Steam +# repositories added for software support. **This container will only work with +# modern AMD/Intel GPUs on a real Linux Host** + +--- +version: "2.1" +services: + steamos: + image: ghcr.io/linuxserver/steamos + container_name: steamos + # Specify the hostname of the host, this is useful for keeping a persistent hostname between upgrades and identifying the server in the remote play Steam Client. + hostname: hostname # optional + cap_add: + - NET_ADMIN + environment: + # for UserID + - PUID=${PUID:-1024} + # for GroupID + - PGID=${PGID:-100} + # specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). + - TZ=${TZ:-Europe/Amsterdam} + # Specify the render device (GPU) for the contianer to use. + - DRINODE=/dev/dri/renderD128 + # Specify the IP of the host, needed for LAN Remote Play. + - HOST_IP=192.168.100.10 # optional + volumes: + # Users home directory in the container, stores all files and games. + - ${BASEDIR:-/volume1/docker}/steamos/config:/config + # Optional for gamepad support. + - /dev/input:/dev/input # optional + # Optional for gamepad support. + - /run/udev/data:/run/udev/data # optional + ports: + # SteamOS desktop gui. + - 3000:3000 + # HTTPS SteamOS desktop gui. + - 3001:3001 + # Steam Remote Play Ports (UDP). + - 27031-27036:27031-27036/udp # optional + # Steam Remote Play Ports (TCP). + - 27031-27036:27031-27036 # optional + devices: + # Video card passthrough to Steam. + - /dev/dri:/dev/dri + shm_size: "1gb" + restart: unless-stopped diff --git a/lsio/steamos/docker-run.sh b/lsio/steamos/docker-run.sh new file mode 100644 index 0000000..f854628 --- /dev/null +++ b/lsio/steamos/docker-run.sh @@ -0,0 +1,26 @@ +# [SteamOS](https://www.steamdeck.com/) is an Arch based Linux distribution made +# by Valve Software. This container is a vanilla Arch install with Steam +# repositories added for software support. **This container will only work with +# modern AMD/Intel GPUs on a real Linux Host** + +. ./.env +docker run -d \ + --name=steamos \ + --hostname=hostname `# optional` `# Specify the hostname of the host, this is useful for keeping a persistent hostname between upgrades and identifying the server in the remote play Steam Client.` \ + --cap-add=NET_ADMIN \ + -e PUID=${PUID:-1024} `# for UserID` \ + -e PGID=${PGID:-100} `# for GroupID` \ + -e TZ=${TZ:-Europe/Amsterdam} `# specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List).` \ + -e DRINODE=/dev/dri/renderD128 `# Specify the render device (GPU) for the contianer to use.` \ + -e HOST_IP=192.168.100.10 `# optional` `# Specify the IP of the host, needed for LAN Remote Play.` \ + -p 3000:3000 `# SteamOS desktop gui.` \ + -p 3001:3001 `# HTTPS SteamOS desktop gui.` \ + -p 27031-27036:27031-27036/udp `# optional` `# Steam Remote Play Ports (UDP).` \ + -p 27031-27036:27031-27036 `# optional` `# Steam Remote Play Ports (TCP).` \ + -v ${BASEDIR:-/volume1/docker}/steamos/config:/config `# Users home directory in the container, stores all files and games.` \ + -v /dev/input:/dev/input `# optional` `# Optional for gamepad support.` \ + -v /run/udev/data:/run/udev/data `# optional` `# Optional for gamepad support.` \ + --device /dev/dri:/dev/dri `# Video card passthrough to Steam.` \ + --shm-size="1gb" \ + --restart unless-stopped \ + ghcr.io/linuxserver/steamos diff --git a/lsio/steamos/run-once.sh b/lsio/steamos/run-once.sh new file mode 100644 index 0000000..627b0ef --- /dev/null +++ b/lsio/steamos/run-once.sh @@ -0,0 +1,3 @@ +ln -s ../docker-env.cfg ./.env +. ./.env +mkdir -p ${BASEDIR:-/volume1/docker}/steamos/config diff --git a/lsio/swag/docker-compose.yaml b/lsio/swag/docker-compose.yaml index 804586f..580d070 100644 --- a/lsio/swag/docker-compose.yaml +++ b/lsio/swag/docker-compose.yaml @@ -27,7 +27,7 @@ services: - SUBDOMAINS=www, # optional # Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt. - CERTPROVIDER= # optional - # Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. + # Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. - DNSPLUGIN=cloudflare # optional # Optionally override (in seconds) the default propagation time for the dns plugins. - PROPAGATION= # optional diff --git a/lsio/swag/docker-run.sh b/lsio/swag/docker-run.sh index ab0822d..7b3dff8 100644 --- a/lsio/swag/docker-run.sh +++ b/lsio/swag/docker-run.sh @@ -15,7 +15,7 @@ docker run -d \ -e VALIDATION=http `# Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set).` \ -e SUBDOMAINS=www, `# optional` `# Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)` \ -e CERTPROVIDER= `# optional` `# Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt.` \ - -e DNSPLUGIN=cloudflare `# optional` `# Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`.` \ + -e DNSPLUGIN=cloudflare `# optional` `# Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`.` \ -e PROPAGATION= `# optional` `# Optionally override (in seconds) the default propagation time for the dns plugins.` \ -e EMAIL= `# optional` `# Optional e-mail address used for cert expiration notifications (Required for ZeroSSL).` \ -e ONLY_SUBDOMAINS=false `# optional` `# If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`` \