8 Commits

3 changed files with 58 additions and 7 deletions
+5 -5
View File
@@ -20,12 +20,12 @@ COPY ./etc/*.lua /etc/prosody/
COPY ./etc/conf.avail/* /etc/prosody/conf.d/
RUN rm -rfv /etc/prosody/README*
## Certs ##
RUN prosodyctl cert import /etc/letsencrypt/live
## Main ##
# Install + Run Website
WORKDIR /root
USER root
CMD prosodyctl reload & \
tail -F /var/log/prosody/*
CMD prosodyctl cert import /etc/letsencrypt/live && \
service prosody start && \
prosodyctl reload && \
tail -F /var/log/prosody/prosody.log & \
tail -F /var/log/prosody/prosody.err
@@ -0,0 +1,37 @@
# Example docker-compose.yml for Prosody
# Documentation is available at:
# https://prosody.im/doc/docker
# Edit this file as necessary. Run 'docker compose up -d' to apply changes.
# Run 'docker compose up -d --pull' to check for and apply any Prosody updates.
services:
prosody:
# Change 13.0 to the branch you want to use
image: prosodyim/prosody:13.0
# Always check for updates when starting
pull_policy: always
# Automatically start Prosody, e.g. when your system starts, if it was
# running previously
restart: unless-stopped
# Network ports to expose
ports:
# Client connections
- 5222:5222
# Server-to-server connections
- 5269:5269
# Directories where data will be stored
volumes:
# This will use a 'data' directory in the same directory as the
# docker-compose.yml. Make this directory before you start Prosody,
# and ensure it is owned by a non-root user. The ownership of the
# directory will control the default user id that Prosody runs as.
- ./data:/var/lib/prosody
# Set environment variables. See the documentation for all possible options.
environment:
PROSODY_VIRTUAL_HOSTS: localhost
@@ -1,6 +1,20 @@
# 2026-06-11 Hyperling
# Configuration for running a Prosody XMPP server.
volumes:
prosody_data:
driver: local
driver_opts:
type: none
device: ../../Volumes/Prosody/data
o: bind
prosody_certs:
driver: local
driver_opts:
type: none
device: ../../Volumes/ReverseProxy/letsencrypt/live
o: bind
services:
app:
container_name: prosody
@@ -23,8 +37,8 @@ services:
# retries: 2
# start_period: 30s
volumes:
- ../../Volumes/Prosody/data:/var/lib/prosody/
- ../../Volumes/ReverseProxy/letsencrypt/live:/etc/letsencrypt/live
- prosody_data:/var/lib/prosody/
- prosody_certs:/etc/letsencrypt/live
deploy:
mode: global
resources: