Compare commits

...

5 Commits

9 changed files with 175 additions and 5 deletions

View File

@ -22,3 +22,5 @@ photos.guiotte.fr. IN CNAME dm.guiotte.fr.
dl.guiotte.fr. IN CNAME dm.guiotte.fr. dl.guiotte.fr. IN CNAME dm.guiotte.fr.
kdoc.guiotte.fr. IN CNAME dm.guiotte.fr. kdoc.guiotte.fr. IN CNAME dm.guiotte.fr.
sync.guiotte.fr. IN CNAME dm.guiotte.fr. sync.guiotte.fr. IN CNAME dm.guiotte.fr.
pad.guiotte.fr. IN CNAME dm.guiotte.fr.
home.guiotte.fr. IN CNAME dm.guiotte.fr.

Binary file not shown.

View File

@ -108,6 +108,9 @@ services:
- ./syncthing:/config - ./syncthing:/config
- /mnt/storage/music/Florent:/music - /mnt/storage/music/Florent:/music
- /mnt/storage/audrey-sync:/audrey-sync - /mnt/storage/audrey-sync:/audrey-sync
- /mnt/storage/audrey-projets:/audrey-projets
- /home/florent/syncthing/notes:/notes
- /home/florent/syncthing/signal-bkp:/signal-bkp
ports: ports:
- 22000:22000/tcp - 22000:22000/tcp
- 22000:22000/udp - 22000:22000/udp
@ -228,6 +231,90 @@ services:
- nextcloud-db-pw - nextcloud-db-pw
hedgedoc:
image: lscr.io/linuxserver/hedgedoc:latest
container_name: hedgedoc
depends_on:
- hedgedoc-db
environment:
<<: *common-environment
DB_HOST: hedgedoc-db
DB_PORT: 3306
DB_USER: hedgedoc
DB_NAME: hedgedoc
FILE__DB_PASS: /run/secrets/hedgedoc-db-pw
CMD_DOMAIN: pad.guiotte.fr
CMD_PROTOCOL_USESSL: true
CMD_ALLOW_FREEURL: true
CMD_REQUIRE_FREEURL_AUTHENTICATION: true
volumes:
- hedgedoc-config:/config
restart: unless-stopped
secrets:
- hedgedoc-db-pw
hedgedoc-db:
image: lscr.io/linuxserver/mariadb:latest
container_name: hedgedoc-db
restart: unless-stopped
volumes:
- hedgedoc-db:/config
environment:
<<: *common-environment
FILE__MYSQL_ROOT_PASSWORD: /run/secrets/hedgedoc-db-root-pw
FILE__MYSQL_PASSWORD: /run/secrets/hedgedoc-db-pw
MYSQL_DATABASE: hedgedoc
MYSQL_USER: hedgedoc
secrets:
- hedgedoc-db-root-pw
- hedgedoc-db-pw
homeassistant:
image: lscr.io/linuxserver/homeassistant:latest
container_name: homeassistant
environment:
<<: *common-environment
volumes:
- homeassistant-config:/config
restart: unless-stopped
devices:
- /dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240219191913-if00:/dev/ttyACM0
yee0:
build: ssh
container_name: yee0
volumes:
- ./ssh/id_rsa:/root/.ssh/id_rsa
environment:
- SSH_HOSTNAME=192.168.1.5
- SSH_USERNAME=alarm
- SSH_LOCAL_PORT=55443
- SSH_DESTINATION=10.0.0.130
- SSH_DESTINATION_PORT=55443
#ports:
# - 55443:55443
restart: unless-stopped
yee1:
build: ssh
container_name: yee1
volumes:
- ./ssh/id_rsa:/root/.ssh/id_rsa
environment:
- SSH_HOSTNAME=192.168.1.5
- SSH_USERNAME=alarm
- SSH_LOCAL_PORT=55443
- SSH_DESTINATION=10.0.0.251
- SSH_DESTINATION_PORT=55443
#ports:
# - 55443:55443
restart: unless-stopped
volumes: volumes:
money-data: money-data:
zotero-data: zotero-data:
@ -241,6 +328,9 @@ volumes:
nextcloud-config: nextcloud-config:
nextcloud-db-config: nextcloud-db-config:
ddclient-cache: ddclient-cache:
hedgedoc-config:
hedgedoc-db:
homeassistant-config:
secrets: secrets:
@ -256,3 +346,7 @@ secrets:
file: transmission-user.secret file: transmission-user.secret
transmission-pw: transmission-pw:
file: transmission-pw.secret file: transmission-pw.secret
hedgedoc-db-root-pw:
file: hedgedoc-db-root-pw.secret
hedgedoc-db-pw:
file: hedgedoc-db-pw.secret

BIN
hedgedoc-db-pw.secret Normal file

Binary file not shown.

BIN
hedgedoc-db-root-pw.secret Normal file

Binary file not shown.

25
ssh/Dockerfile Normal file
View File

@ -0,0 +1,25 @@
FROM ghcr.io/linuxserver/baseimage-alpine:3.18
# Install SSH client
RUN \
apk add --no-cache \
openssh-client
# Set volume for ssh key
VOLUME /root/.ssh/id_rsa
# Set default values for SSH tunnel configuration
ENV SSH_HOSTNAME=server.example.com
ENV SSH_USERNAME=username
ENV SSH_DESTINATION=destination
ENV SSH_DESTINATION_PORT=12345
ENV SSH_LOCAL_PORT=12345
ENTRYPOINT ssh \
-N -4 \
-L *:$SSH_LOCAL_PORT:$SSH_DESTINATION:$SSH_DESTINATION_PORT \
-l $SSH_USERNAME \
-o "StrictHostKeyChecking no" \
-o "UserKnownHostsFile /dev/null" \
$SSH_HOSTNAME

View File

@ -0,0 +1,48 @@
## Version 2023/05/31
# make sure you set the following environment variables in your docker arguments
# CMD_DOMAIN=hedgedoc.server.com
# CMD_URL_ADDPORT=false
# CMD_PROTOCOL_USESSL=true
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name pad.*;
include /config/nginx/ssl.conf;
client_max_body_size 0;
# enable for ldap auth (requires ldap-location.conf in the location block)
#include /config/nginx/ldap-server.conf;
# enable for Authelia (requires authelia-location.conf in the location block)
#include /config/nginx/authelia-server.conf;
# enable for Authentik (requires authentik-location.conf in the location block)
#include /config/nginx/authentik-server.conf;
location / {
# enable the next two lines for http auth
#auth_basic "Restricted";
#auth_basic_user_file /config/nginx/.htpasswd;
# enable for ldap auth (requires ldap-server.conf in the server block)
#include /config/nginx/ldap-location.conf;
# enable for Authelia (requires authelia-server.conf in the server block)
#include /config/nginx/authelia-location.conf;
# enable for Authentik (requires authentik-server.conf in the server block)
#include /config/nginx/authentik-location.conf;
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app hedgedoc;
set $upstream_port 3000;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
}

Binary file not shown.

View File

@ -6,14 +6,15 @@ Written with the help of
## Certs renewal ## Certs renewal
*do we need to remove volumes?:* - *do we need to remove volumes?:* Yes!
Once a year recreate the container and copy the `client_certs` dir! On the server:
```shell ```shell
docker volume rm docker_taskserver-certs docker_taskserver-data dcc stop taskserver && dcc rm taskserver && docker volume rm docker_taskserver-certs docker_taskserver-data && dcu
``` ```
Once a year recreate the container and copy the `client_certs` dir! On
the client: On the client:
```shell ```shell
scp -r florent@dm.guiotte.fr:~/docker/taskserver/client_certs/* ~/.config/task/certs scp -r florent@dm.guiotte.fr:~/docker/taskserver/client_certs/* ~/.config/task/certs