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". # Ignore copies of the Hugo configuration, such as "Config/Hugo-MyWebsite".
Hugo-* Hugo-*
*-Hugo *-Hugo
hugo-*
*-hugo
# Ignore Prod and Dev copies as well. # Ignore Prod and Dev copies as well.
*-Prod *-Prod
@@ -64,5 +66,7 @@ dev-*
DEV-* DEV-*
# Ignore custom Prosody hosts. # 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 # 2025-06-16 Hyperling
# Tired of running fixes.sh to install extra packages. Bake them in! # Tired of running fixes.sh to install extra packages. Bake them in!
FROM nextcloud:latest FROM nextcloud:stable
# Cache System Dependencies # Cache System Dependencies
RUN apt-get update && apt-get install -y sudo libmagickcore-7.q16-10-extra htop \ 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 ## ## Setup ##
# System Dependencies # System Dependencies
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y prosody \ apt-get install -y prosody prosody-modules ca-certificates \
bash sudo htop \ bash sudo htop \
vim vim
@@ -21,11 +21,9 @@ COPY ./etc/conf.avail/* /etc/prosody/conf.d/
RUN rm -rfv /etc/prosody/README* RUN rm -rfv /etc/prosody/README*
## Main ## ## Main ##
# Install + Run Website
WORKDIR /root WORKDIR /root
USER root USER root
CMD prosodyctl cert import /etc/letsencrypt/live && \ CMD prosodyctl --root cert import /etc/letsencrypt/live && \
service prosody start && \ service prosody start && \
prosodyctl reload && \
tail -F /var/log/prosody/prosody.log & \ tail -F /var/log/prosody/prosody.log & \
tail -F /var/log/prosody/prosody.err tail -F /var/log/prosody/prosody.err
@@ -14,6 +14,12 @@ volumes:
type: none type: none
device: ../../Volumes/ReverseProxy/letsencrypt/live device: ../../Volumes/ReverseProxy/letsencrypt/live
o: bind o: bind
prosody_cert_archive:
driver: local
driver_opts:
type: none
device: ../../Volumes/ReverseProxy/letsencrypt/archive
o: bind
services: services:
app: app:
@@ -25,6 +31,7 @@ services:
ports: ports:
- 5222:5222 - 5222:5222
- 5269:5269 - 5269:5269
- 5281:5281
#environment: #environment:
# - REPO=$REPO # - REPO=$REPO
# - BRANCH=$BRANCH # - BRANCH=$BRANCH
@@ -39,6 +46,7 @@ services:
volumes: volumes:
- prosody_data:/var/lib/prosody/ - prosody_data:/var/lib/prosody/
- prosody_certs:/etc/letsencrypt/live - prosody_certs:/etc/letsencrypt/live
- prosody_cert_archive:/etc/letsencrypt/archive
deploy: deploy:
mode: global mode: global
resources: resources:
@@ -8,8 +8,8 @@ VirtualHost "example.com"
-- Note that old-style SSL on port 5223 only supports one certificate, and will always -- Note that old-style SSL on port 5223 only supports one certificate, and will always
-- use the global one. -- use the global one.
--ssl = { --ssl = {
-- key = "/etc/letsencrypt/live/example.com/privkey.pem"; -- key = "/etc/prosody/certs/example.com.key";
-- certificate = "/etc/letsencrypt/live/example.com/fullchain.pem"; -- certificate = "/etc/prosody/certs/example.com.crt";
-- } -- }
------ Components ------ ------ 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