Compare commits

..

12 Commits

6 changed files with 35 additions and 8 deletions
+5 -1
View File
@@ -48,6 +48,8 @@ STAGE-*
# Ignore copies of the Hugo configuration, such as "Config/Hugo-MyWebsite".
Hugo-*
*-Hugo
hugo-*
*-hugo
# Ignore Prod and Dev copies as well.
*-Prod
@@ -64,5 +66,7 @@ dev-*
DEV-*
# Ignore custom Prosody hosts.
Config/Prosody/conf.avail/*
Config/Prosody/conf.avail
Config/Prosody/etc/conf.avail
Config/Prosody/etc/
+1 -1
View File
@@ -1,7 +1,7 @@
# 2025-06-16 Hyperling
# Tired of running fixes.sh to install extra packages. Bake them in!
FROM nextcloud:latest
FROM nextcloud:stable
# Cache System Dependencies
RUN apt-get update && apt-get install -y sudo libmagickcore-7.q16-10-extra htop \
+2 -4
View File
@@ -8,7 +8,7 @@ FROM debian:trixie-slim
## Setup ##
# System Dependencies
RUN apt-get update && \
apt-get install -y prosody \
apt-get install -y prosody prosody-modules ca-certificates \
bash sudo htop \
vim
@@ -21,11 +21,9 @@ COPY ./etc/conf.avail/* /etc/prosody/conf.d/
RUN rm -rfv /etc/prosody/README*
## Main ##
# Install + Run Website
WORKDIR /root
USER root
CMD prosodyctl cert import /etc/letsencrypt/live && \
CMD prosodyctl --root cert import /etc/letsencrypt/live && \
service prosody start && \
prosodyctl reload && \
tail -F /var/log/prosody/prosody.log & \
tail -F /var/log/prosody/prosody.err
@@ -14,6 +14,12 @@ volumes:
type: none
device: ../../Volumes/ReverseProxy/letsencrypt/live
o: bind
prosody_cert_archive:
driver: local
driver_opts:
type: none
device: ../../Volumes/ReverseProxy/letsencrypt/archive
o: bind
services:
app:
@@ -25,6 +31,7 @@ services:
ports:
- 5222:5222
- 5269:5269
- 5281:5281
#environment:
# - REPO=$REPO
# - BRANCH=$BRANCH
@@ -39,6 +46,7 @@ services:
volumes:
- prosody_data:/var/lib/prosody/
- prosody_certs:/etc/letsencrypt/live
- prosody_cert_archive:/etc/letsencrypt/archive
deploy:
mode: global
resources:
@@ -8,8 +8,8 @@ VirtualHost "example.com"
-- Note that old-style SSL on port 5223 only supports one certificate, and will always
-- use the global one.
--ssl = {
-- key = "/etc/letsencrypt/live/example.com/privkey.pem";
-- certificate = "/etc/letsencrypt/live/example.com/fullchain.pem";
-- key = "/etc/prosody/certs/example.com.key";
-- certificate = "/etc/prosody/certs/example.com.crt";
-- }
------ Components ------
+17
View File
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
# 2026-07-13 Hyperling
# Create the necessary folders for volumes to work.
# This must be run before the container will start properly.
## Setup ##
DIR="$(dirname -- "${BASH_SOURCE[0]}")"
source $DIR/.env
## Main ##
# Create folders.
mkdir -pv ../../Volumes/Prosody/data
# Finish successfully.
exit 0