Compare commits

...

3 commits

Author SHA1 Message Date
4a64e88405 Add soju 2024-11-14 16:02:37 +00:00
cfe48bd063 Add gotify 2024-11-14 16:02:22 +00:00
322b79fe6d Add frps 2024-11-14 16:01:55 +00:00
9 changed files with 121 additions and 0 deletions

5
frps/Dockerfile Normal file
View file

@ -0,0 +1,5 @@
FROM amd64/alpine
ENV FRP_VERSION 0.48.0
RUN wget -O - https://github.com/fatedier/frp/releases/download/v${FRP_VERSION}/frp_${FRP_VERSION}_linux_amd64.tar.gz | \
tar -xzvf - -C /usr/local/bin --strip-components=1 frp_${FRP_VERSION}_linux_amd64/frps
ENTRYPOINT /usr/local/bin/frps -c /etc/frp/frps.ini

16
frps/docker-compose.yml Normal file
View file

@ -0,0 +1,16 @@
version: '3'
services:
frps:
container_name: frps
build: .
restart: unless-stopped
volumes:
- ./frps.ini:/etc/frp/frps.ini:ro
ports:
- 7000:7000
- 80:80
- 443:443
- 222:222
- 2222:2222
- 1234:1234

4
frps/frps.ini Normal file
View file

@ -0,0 +1,4 @@
[common]
bind_port = 7000
authentication_method = token
token = Gehe1mGehe11mGehe111m

4
gotify/Caddyfile Normal file
View file

@ -0,0 +1,4 @@
gotify.codehal.de {
reverse_proxy * gotify:80 {
}
}

30
gotify/docker-compose.yml Normal file
View file

@ -0,0 +1,30 @@
version: "3"
networks:
proxynet:
services:
gotify:
container_name: gotify
restart: unless-stopped
image: gotify/server
ports:
- 8080:80
environment:
- GOTIFY_DEFAULTUSER_PASS=custom
- TZ=Europe/Berlin
volumes:
- "./gotify_data:/app/data"
networks:
- proxynet
caddy:
container_name: caddy
restart: unless-stopped
image: caddy
ports:
- 443:443
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
networks:
- proxynet

5
soju/Dockerfile Normal file
View file

@ -0,0 +1,5 @@
FROM alpine:edge
RUN apk --update --no-cache add soju
RUN install -o soju -g soju -d /run/soju
USER soju
ENTRYPOINT ["/usr/bin/soju", "-config", "/etc/soju/config"]

5
soju/conf/config Normal file
View file

@ -0,0 +1,5 @@
hostname irc.codehal.de
db sqlite3 /var/lib/soju/main.db
message-store fs /var/lib/soju/logs/
listen unix+admin://
listen irc+insecure://

49
soju/docker-compose.yml Normal file
View file

@ -0,0 +1,49 @@
version: "3.5"
networks:
proxynet:
volumes:
certstore:
services:
traefik:
image: traefik
container_name: traefik
restart: unless-stopped
command:
--providers.docker=true
--providers.docker.exposedbydefault=false
--providers.file.filename=/etc/traefik/config.toml
--entryPoints.web.address=:80
--entryPoints.irc.address=:6697
--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web
--certificatesresolvers.myresolver.acme.storage=/etc/letsencrypt/acme.json
volumes:
- ./traefik:/etc/traefik:ro
- certstore:/etc/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock:ro
ports:
- 80:80
- 6697:6697
networks:
- proxynet
soju:
build: .
container_name: soju
restart: unless-stopped
volumes:
- ./conf:/etc/soju:ro
- ./data:/var/lib/soju
networks:
- proxynet
labels:
- traefik.enable=true
# - traefik.docker.network=proxy
- traefik.tcp.routers.soju.rule=HostSNI(`irc.codehal.de`)
- traefik.tcp.routers.soju.entryPoints=irc
- traefik.tcp.routers.soju.tls=true
- traefik.tcp.routers.soju.tls.certresolver=myresolver
- traefik.tcp.routers.soju.tls.options=irc@file
- traefik.tcp.services.soju.loadbalancer.server.port=6667

3
soju/traefik/config.toml Normal file
View file

@ -0,0 +1,3 @@
[tls.options]
[tls.options.irc]
alpnProtocols = ["irc"]