Compare commits
20 Commits
1a21c67a2f
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
| 72d812b106 | |||
| c695bb1d72 | |||
| 49238da275 | |||
| 73583a0f62 | |||
| 01b6ceac22 | |||
| 06fd6be4d3 | |||
| e8c0ee9b47 | |||
| 5df435ba86 | |||
| a72eb09c1f | |||
| 24dba3e2ed | |||
| 730581c16d | |||
| c0adab4830 | |||
| 8c262ce6eb | |||
| 64b796c523 | |||
| 600287ee93 | |||
| 7e5ff6fcdc | |||
| 971dc0c086 | |||
| 7106a6774c | |||
| e1a57645b7 | |||
| be1affb0b2 |
@@ -62,3 +62,7 @@ PROD-*
|
||||
Dev-*
|
||||
dev-*
|
||||
DEV-*
|
||||
|
||||
# Ignore custom Prosody hosts.
|
||||
Config/Prosody/conf.avail/*
|
||||
|
||||
|
||||
@@ -8,11 +8,24 @@ FROM debian:trixie-slim
|
||||
## Setup ##
|
||||
# System Dependencies
|
||||
RUN apt-get update && \
|
||||
apt-get install -y prosody \
|
||||
bash sudo htop
|
||||
apt-get install -y prosody \
|
||||
bash sudo htop \
|
||||
vim
|
||||
|
||||
## Configuration Files ##
|
||||
# Clear old configurations.
|
||||
RUN rm -rfv /etc/prosody/conf.d/*
|
||||
# Add all the configuration files to the environment.
|
||||
COPY ./etc/*.lua /etc/prosody/
|
||||
COPY ./etc/conf.avail/* /etc/prosody/conf.d/
|
||||
RUN rm -rfv /etc/prosody/README*
|
||||
|
||||
## Main ##
|
||||
# Install + Run Website
|
||||
WORKDIR /root
|
||||
USER root
|
||||
CMD tail -F /var/log/TBD
|
||||
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
|
||||
+16
-2
@@ -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/prosody:/root/share/
|
||||
# - ../../Volumes/ReverseProxy/letsencrypt/certs:/etc/prosody/certs
|
||||
- prosody_data:/var/lib/prosody/
|
||||
- prosody_certs:/etc/letsencrypt/live
|
||||
deploy:
|
||||
mode: global
|
||||
resources:
|
||||
@@ -1,9 +0,0 @@
|
||||
Prosody configuration directory
|
||||
===============================
|
||||
|
||||
The configuration file /etc/prosody/prosody.cfg.lua should contain
|
||||
only global settings.
|
||||
|
||||
Per-host configuration files should be placed in /etc/prosody/conf.avail/,
|
||||
and the active ones should be linked in /etc/prosody/conf.d/
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Config/Prosody/etc
|
||||
|
||||
These files will be copied to /etc/prosody/* on the container.
|
||||
|
||||
Default example files are provided in the conf.avail directory and should not be modified.
|
||||
|
||||
Rather, copy the files named *.lua.dist to be renamed without .dist, then edit the .lua files as needed.
|
||||
+5
-6
@@ -7,10 +7,10 @@ VirtualHost "example.com"
|
||||
-- set in the global section (if any).
|
||||
-- Note that old-style SSL on port 5223 only supports one certificate, and will always
|
||||
-- use the global one.
|
||||
ssl = {
|
||||
key = "/etc/prosody/certs/example.com.key";
|
||||
certificate = "/etc/prosody/certs/example.com.crt";
|
||||
}
|
||||
--ssl = {
|
||||
-- key = "/etc/letsencrypt/live/example.com/privkey.pem";
|
||||
-- certificate = "/etc/letsencrypt/live/example.com/fullchain.pem";
|
||||
-- }
|
||||
|
||||
------ Components ------
|
||||
-- You can specify components to add hosts that provide special services,
|
||||
@@ -18,7 +18,7 @@ VirtualHost "example.com"
|
||||
-- For more information on components, see http://prosody.im/doc/components
|
||||
|
||||
-- Set up a MUC (multi-user chat) room server on conference.example.com:
|
||||
Component "conference.example.com" "muc"
|
||||
--Component "conference.example.com" "muc"
|
||||
|
||||
-- Set up a SOCKS5 bytestream proxy for server-proxied file transfers:
|
||||
--Component "proxy.example.com" "proxy65"
|
||||
@@ -26,4 +26,3 @@ Component "conference.example.com" "muc"
|
||||
---Set up an external component (default component port is 5347)
|
||||
--Component "gateway.example.com"
|
||||
-- component_secret = "password"
|
||||
|
||||
Reference in New Issue
Block a user