Remove unused images
This commit is contained in:
parent
6d0eeb829d
commit
94626898f1
9 changed files with 0 additions and 565 deletions
|
@ -1,30 +0,0 @@
|
||||||
FROM alpine:latest AS builder
|
|
||||||
RUN apk add cargo
|
|
||||||
RUN wget -O source.tar.gz \
|
|
||||||
$(wget -qO- https://api.github.com/repos/mbrubeck/agate/releases/latest \
|
|
||||||
| sed -nE 's/^.*"tarball_url"\s*:\s*"([^"]+)".*$/\1/p' \
|
|
||||||
) \
|
|
||||||
&& tar xzf source.tar.gz \
|
|
||||||
&& mv /mbrubeck-agate-* /agate \
|
|
||||||
&& cd agate \
|
|
||||||
&& cargo build --release
|
|
||||||
|
|
||||||
|
|
||||||
FROM alpine:latest
|
|
||||||
RUN apk add --update --no-cache libgcc \
|
|
||||||
&& mkdir -p /app/.certificates \
|
|
||||||
&& mkdir /gmi \
|
|
||||||
&& chown daemon:daemon /app/.certificates
|
|
||||||
COPY --from=builder /agate/target/release/agate /usr/bin/agate
|
|
||||||
COPY ./start.sh /app
|
|
||||||
|
|
||||||
ENV LANG=en-US \
|
|
||||||
HOSTNAME=example.com
|
|
||||||
VOLUME ["/app/.certificates", "/gmi"]
|
|
||||||
EXPOSE 1965
|
|
||||||
|
|
||||||
USER daemon
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
ENTRYPOINT ["/bin/sh", "start.sh"]
|
|
||||||
|
|
|
@ -1,53 +0,0 @@
|
||||||
# Install agate in a docker container
|
|
||||||
(these instructions assume you use linux and have some experience with both docker and the command line)
|
|
||||||
## obtain the source code
|
|
||||||
|
|
||||||
There are currently no container images online so you have to build the image yourself before you can use it.
|
|
||||||
There are two options available for this: downloading a release or cloning the repository with `git`.
|
|
||||||
I will explain both methods but if you're unsure which method to use, I would recommend the release for new comers because it's probably more tested so you'll encounter less problems.
|
|
||||||
|
|
||||||
### downloading the release tarball
|
|
||||||
|
|
||||||
Download the tarball. Go to [https://github.com/mbrubeck/agate/releases/latest](https://github.com/mbrubeck/agate/releases/latest), and copy the url of the source code tarball.
|
|
||||||
|
|
||||||
```
|
|
||||||
wget URL
|
|
||||||
```
|
|
||||||
|
|
||||||
Then unpack the tarball and remove it afterwards:
|
|
||||||
```
|
|
||||||
tar -xzf tarball.tar.gz
|
|
||||||
rm tarball.tar.gz
|
|
||||||
```
|
|
||||||
|
|
||||||
### clone the repository with git
|
|
||||||
|
|
||||||
I assume you have git already installed. If not, please search on how to do it in the internet.
|
|
||||||
|
|
||||||
```
|
|
||||||
git clone https://github.com/mbrubeck/agate
|
|
||||||
cd agate
|
|
||||||
```
|
|
||||||
|
|
||||||
## build the image
|
|
||||||
Enter the `tools/docker` directory:
|
|
||||||
|
|
||||||
```
|
|
||||||
cd tools/docker
|
|
||||||
```
|
|
||||||
And now build the docker image:
|
|
||||||
|
|
||||||
```
|
|
||||||
docker build -t agate .
|
|
||||||
```
|
|
||||||
This process will take a few minutes because all the rust modules have to be compiled from source.
|
|
||||||
|
|
||||||
## start the docker container
|
|
||||||
|
|
||||||
```
|
|
||||||
docker run -t -d --name agate -p 1965:1965 -v /var/www/gmi:/gmi -v /var/www/gmi/.certificates:/app/.certificates -e HOSTNAME=example.org -e LANG=en-US agate:latest
|
|
||||||
```
|
|
||||||
|
|
||||||
You have to replace `/var/www/gmi/` with the folder where you'd like to have gemtext files and `/var/www/gmi/.certificates/` with the folder where you'd like to have your certificates stored. You also have to have to replace `example.org` with your domain name and if plan to speak in a different language than english in your gemini space than you should replace `en-US` with your countries language code (for example de-DE or fr-CA).
|
|
||||||
|
|
||||||
## That's it! Now have agate running in a docker container!
|
|
|
@ -1,6 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
exec agate --content /gmi/ \
|
|
||||||
--hostname ${HOSTNAME} \
|
|
||||||
--lang ${LANG}
|
|
||||||
|
|
|
@ -7,18 +7,6 @@ services:
|
||||||
build: ./aap
|
build: ./aap
|
||||||
image: elfrinjo/aap:latest
|
image: elfrinjo/aap:latest
|
||||||
|
|
||||||
# prosody-0.11:
|
|
||||||
# build: ./prosody-0.11
|
|
||||||
# image: elfrinjo/prosody-0.11:latest
|
|
||||||
|
|
||||||
toolbox:
|
toolbox:
|
||||||
build: ./toolbox
|
build: ./toolbox
|
||||||
image: elfrinjo/toolbox:latest
|
image: elfrinjo/toolbox:latest
|
||||||
|
|
||||||
# agate:
|
|
||||||
# build: ./agate
|
|
||||||
# image: elfrinjo/agate:latest
|
|
||||||
|
|
||||||
# pocketbase:
|
|
||||||
# build: ./pocketbase
|
|
||||||
# image: elfrinjo/pocketbase:latest
|
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
FROM alpine:latest
|
|
||||||
LABEL maintainer "J. Elfring <code@elfring.ms>"
|
|
||||||
|
|
||||||
RUN apk add --no-cache \
|
|
||||||
ca-certificates \
|
|
||||||
curl \
|
|
||||||
unzip
|
|
||||||
|
|
||||||
RUN mkdir /app \
|
|
||||||
&& mkdir /data \
|
|
||||||
&& chown daemon /data \
|
|
||||||
&& downloadurl=$(curl -s https://api.github.com/repos/pocketbase/pocketbase/releases/latest \
|
|
||||||
| grep "browser_download_url" \
|
|
||||||
| grep "linux_amd64" \
|
|
||||||
| cut -d : -f 2,3 \
|
|
||||||
| tr -d '\" ' ) \
|
|
||||||
&& curl --location --silent --output /tmp/pocketbase.zip \
|
|
||||||
$downloadurl \
|
|
||||||
&& unzip -d /app /tmp/pocketbase.zip \
|
|
||||||
&& rm /tmp/pocketbase.zip \
|
|
||||||
&& chmod +x /app/pocketbase
|
|
||||||
ADD ./pocketbase.sh /app
|
|
||||||
|
|
||||||
VOLUME /data
|
|
||||||
USER daemon
|
|
||||||
EXPOSE 8090
|
|
||||||
|
|
||||||
CMD [ "/bin/sh", "/app/pocketbase.sh" ]
|
|
|
@ -1,13 +0,0 @@
|
||||||
|
|
||||||
set -x
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if [ _${encryptionKey} != _ ]
|
|
||||||
then
|
|
||||||
enc="--encryptionEnv encryptionKey"
|
|
||||||
else
|
|
||||||
enc=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
# /app/pocketbase ${enc} --dir /data migrate
|
|
||||||
/app/pocketbase ${enc} --http 0.0.0.0:8090 --dir /data serve
|
|
|
@ -1,86 +0,0 @@
|
||||||
FROM alpine:edge
|
|
||||||
|
|
||||||
LABEL maintainer "J. Elfring <code@elfring.ms>"
|
|
||||||
|
|
||||||
## Install Packages
|
|
||||||
RUN apk add --no-cache \
|
|
||||||
--update \
|
|
||||||
ca-certificates \
|
|
||||||
curl \
|
|
||||||
libcrypto1.1 \
|
|
||||||
libidn \
|
|
||||||
lua5.2 \
|
|
||||||
lua5.2-expat \
|
|
||||||
lua5.2-filesystem \
|
|
||||||
lua5.2-sec \
|
|
||||||
lua5.2-socket \
|
|
||||||
openssl
|
|
||||||
|
|
||||||
## Install build envirnoment, build and remove unneeded things
|
|
||||||
## This is done in one step to reduce image size
|
|
||||||
RUN set -x \
|
|
||||||
##
|
|
||||||
## Build Environment
|
|
||||||
&& apk add --update \
|
|
||||||
--no-cache \
|
|
||||||
--virtual .build-deps \
|
|
||||||
alpine-sdk \
|
|
||||||
libidn-dev \
|
|
||||||
linux-headers \
|
|
||||||
lua5.2-busted \
|
|
||||||
lua5.2-dev \
|
|
||||||
openssl-dev \
|
|
||||||
&& ln -s /usr/bin/busted-5.2 /usr/local/bin/busted \
|
|
||||||
##
|
|
||||||
## Prosody
|
|
||||||
&& curl --output /prosody-trunk.tar.gz "https://hg.prosody.im/trunk/archive/0.11.tar.gz" \
|
|
||||||
&& mkdir /prosody-src \
|
|
||||||
&& cd /prosody-src \
|
|
||||||
&& tar xzf /prosody-trunk.tar.gz --strip 1 \
|
|
||||||
&& ./configure --no-example-certs \
|
|
||||||
--cflags='-fPIC -Wall -std=c99 -pedantic -DWITHOUT_MALLINFO' \
|
|
||||||
&& make \
|
|
||||||
&& make test \
|
|
||||||
&& make install \
|
|
||||||
&& cd / \
|
|
||||||
##
|
|
||||||
## Prosody Community Modules
|
|
||||||
&& curl --silent --output /prosody-modules.tar.gz "https://hg.prosody.im/prosody-modules/archive/default.tar.gz" \
|
|
||||||
&& mkdir /usr/local/lib/prosody-community-modules \
|
|
||||||
&& cd /usr/local/lib/prosody-community-modules \
|
|
||||||
&& tar xzf /prosody-modules.tar.gz --strip 1 \
|
|
||||||
&& cd mod_admin_web/admin_web \
|
|
||||||
&& ./get_deps.sh \
|
|
||||||
##
|
|
||||||
## Cleanup
|
|
||||||
&& rm -rf /prosody-src \
|
|
||||||
&& rm -f /prosody-trunk.tar.gz \
|
|
||||||
&& rm -f /prosody-modules.tar.gz \
|
|
||||||
&& rm -f /usr/local/bin/busted \
|
|
||||||
&& apk del .build-deps
|
|
||||||
|
|
||||||
## Some static files (e.g. for the invite module)
|
|
||||||
RUN mkdir /usr/local/var/lib/www \
|
|
||||||
&& mkdir -p /usr/local/var/lib/javascript/bootstrap4/css \
|
|
||||||
&& curl --silent --output /usr/local/var/lib/javascript/bootstrap4/css/bootstrap.min.css \
|
|
||||||
"https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" \
|
|
||||||
&& mkdir -p /usr/local/var/lib/javascript/bootstrap4/js \
|
|
||||||
&& curl --silent --output /usr/local/var/lib/javascript/bootstrap4/js/bootstrap.min.js \
|
|
||||||
"https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" \
|
|
||||||
&& mkdir -p /usr/local/var/lib/javascript/jquery \
|
|
||||||
&& curl --silent --output /usr/local/var/lib/javascript/jquery/jquery.min.js \
|
|
||||||
"https://code.jquery.com/jquery-3.5.1.min.js"
|
|
||||||
|
|
||||||
## Add Default config
|
|
||||||
COPY ./assets/prosody.cfg.lua /usr/local/etc/prosody/prosody.cfg.lua
|
|
||||||
RUN chown daemon:daemon /usr/local/var/lib/prosody
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
EXPOSE 5000 5222 5269 5347 5280 5281
|
|
||||||
VOLUME ["/usr/local/etc/prosody", "/usr/local/var/lib/prosody"]
|
|
||||||
|
|
||||||
USER daemon
|
|
||||||
ENTRYPOINT ["/usr/local/bin/prosody"]
|
|
||||||
|
|
|
@ -1,81 +0,0 @@
|
||||||
## Prosody Docker image
|
|
||||||
Source: https://bitbucket.org/elfrinjo/dockerfiles/src/master/prosody-0.11/
|
|
||||||
|
|
||||||
Create an image for running prosody XMPP server version 0.11
|
|
||||||
http://prosody.im/ on Alpine Linux.
|
|
||||||
|
|
||||||
HINT: This is not an official image. Builds might not happen regularly.
|
|
||||||
|
|
||||||
You will need to configure a vhost inside the config volume (prosody.cfg.lua).
|
|
||||||
|
|
||||||
The certificate generation with prosodyctl does not work.
|
|
||||||
However, certificates can be put into the config volume.
|
|
||||||
I suggest acme.sh for communication with Letsencrypt.
|
|
||||||
https://github.com/Neilpang/acme.sh/wiki/Run-acme.sh-in-docker
|
|
||||||
You need to configure the certificates location inside prosodys config.
|
|
||||||
|
|
||||||
IPORTANT: You really should add TLS.
|
|
||||||
|
|
||||||
## Upgrading from 0.10
|
|
||||||
The module configuration has to be updated:
|
|
||||||
- Replace mod_omemo_all_access with mod_profile
|
|
||||||
- Replace mod_mam_muc with mod_muc_mam
|
|
||||||
- Disable mod_omemo_all_access
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
Start the container with volumes for config and database.
|
|
||||||
Do not forget to customize your configuration!
|
|
||||||
.
|
|
||||||
.
|
|
||||||
```console
|
|
||||||
# docker run -d \
|
|
||||||
-p 5000:5000 \
|
|
||||||
-p 5222:5222 \
|
|
||||||
-p 5269:5269 \
|
|
||||||
-p 5280:5280 \
|
|
||||||
-p 5281:5281 \
|
|
||||||
--restart always \
|
|
||||||
--name prosody \
|
|
||||||
-v /etc/localtime:/etc/localtime:ro \
|
|
||||||
-v prosody-cfg:/usr/local/etc/prosody:ro \
|
|
||||||
-v prosody-data:/usr/local/var/lib/prosody \
|
|
||||||
elfrinjo/prosody-0.11
|
|
||||||
```
|
|
||||||
.
|
|
||||||
.
|
|
||||||
To create the first user, exec into the running container and use prosodyctl.
|
|
||||||
```console
|
|
||||||
# docker exec -ti prosody bash
|
|
||||||
#/$ prosodyctl adduser JID
|
|
||||||
```
|
|
||||||
.
|
|
||||||
.
|
|
||||||
To Create a certificate for you host:
|
|
||||||
```console
|
|
||||||
# docker pull neilpang/acme.sh
|
|
||||||
# docker run --rm -it \
|
|
||||||
--volume prosody-acme:/acme.sh \
|
|
||||||
--net=host \
|
|
||||||
neilpang/acme.sh --issue \
|
|
||||||
-d example.com \
|
|
||||||
-d conference.example.com \
|
|
||||||
--standalone
|
|
||||||
```
|
|
||||||
.
|
|
||||||
.
|
|
||||||
To renew the certificate:
|
|
||||||
```console
|
|
||||||
# docker pull neilpang/acme.sh
|
|
||||||
# docker run --rm -it \
|
|
||||||
--volume prosody-acme:/acme.sh \
|
|
||||||
--net=host \
|
|
||||||
neilpang/acme.sh --cron --standalone
|
|
||||||
# docker run --rm \
|
|
||||||
-v prosody-acme:/acme.sh \
|
|
||||||
-v prosody-cfg:/target \
|
|
||||||
neilpang/acme.sh --install-cert \
|
|
||||||
-d example.com \
|
|
||||||
--key-file /target/certs/example.com/example.com.key \
|
|
||||||
--fullchain-file /target/certs/example.com/fullchain.cer
|
|
||||||
# docker restart prosody
|
|
||||||
```
|
|
|
@ -1,256 +0,0 @@
|
||||||
-- Prosody Example Configuration File
|
|
||||||
--
|
|
||||||
-- Information on configuring Prosody can be found on our
|
|
||||||
-- website at http://prosody.im/doc/configure
|
|
||||||
--
|
|
||||||
-- Tip: You can check that the syntax of this file is correct
|
|
||||||
-- when you have finished by running: luac -p prosody.cfg.lua
|
|
||||||
-- If there are any errors, it will let you know what and where
|
|
||||||
-- they are, otherwise it will keep quiet.
|
|
||||||
--
|
|
||||||
|
|
||||||
-- #######################################################
|
|
||||||
-- # Global Settings #
|
|
||||||
-- # Settings in this section apply to the whole server #
|
|
||||||
-- # and are the default settings for any virtual hosts #
|
|
||||||
-- #######################################################
|
|
||||||
|
|
||||||
----------------------
|
|
||||||
-- Server Settings --
|
|
||||||
----------------------
|
|
||||||
daemonize = false
|
|
||||||
|
|
||||||
-- Interfaces to listen on
|
|
||||||
-- We are setting the ifaces to only listen on IPv4 addresses
|
|
||||||
interfaces = "*"
|
|
||||||
component_interface = "*"
|
|
||||||
local_interfaces = "127.0.0.1"
|
|
||||||
|
|
||||||
-- This is a (by default, empty) list of accounts that are admins
|
|
||||||
-- for the server. Note that you must create the accounts separately
|
|
||||||
-- (see http://prosody.im/doc/creating_accounts for info)
|
|
||||||
-- Example: admins = { "user1@example.com", "user2@example.net" }
|
|
||||||
-- TODO: Add your admin-user here
|
|
||||||
--admins = { }
|
|
||||||
|
|
||||||
-- Enable use of libevent for better performance under high load
|
|
||||||
-- For more information see: http://prosody.im/doc/libevent
|
|
||||||
use_libevent = false;
|
|
||||||
|
|
||||||
-- These are the SSL/TLS-related settings. If you don't want
|
|
||||||
-- to use SSL/TLS, you may comment or remove this
|
|
||||||
-- We assume one certificate with subject-alternative-names for
|
|
||||||
-- all components; else, seperate ssl configs inside the components will be
|
|
||||||
-- needed.
|
|
||||||
--TODO: Configure this or you will regret it!
|
|
||||||
--https_ssl = {
|
|
||||||
-- key = "certs/example.key";
|
|
||||||
-- certificate = "certs/fullchain.cer";
|
|
||||||
-- }
|
|
||||||
--ssl = {
|
|
||||||
-- key = "certs/example.key";
|
|
||||||
-- certificate = "certs/fullchain.cer";
|
|
||||||
--}
|
|
||||||
|
|
||||||
-- Logging configuration
|
|
||||||
-- For advanced logging see http://prosody.im/doc/logging
|
|
||||||
log = {
|
|
||||||
info = "/dev/stdout"; -- Change 'info' to 'debug' for verbose logging
|
|
||||||
-- "*console";
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Common http server for static files
|
|
||||||
http_files_dir = "/usr/local/var/lib/www";
|
|
||||||
libjs_path = "/usr/local/var/lib/javascript";
|
|
||||||
|
|
||||||
--------------------
|
|
||||||
-- Select Modules --
|
|
||||||
--------------------
|
|
||||||
-- These paths are searched in the order specified, and before the default path
|
|
||||||
plugin_paths = { "/usr/local/lib/prosody-community-modules" }
|
|
||||||
|
|
||||||
-- This is the list of modules Prosody will load on startup.
|
|
||||||
-- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too.
|
|
||||||
-- Documentation on modules can be found at: http://prosody.im/doc/modules
|
|
||||||
modules_enabled = {
|
|
||||||
-- Generally required
|
|
||||||
"roster"; -- Allow users to have a roster. Recommended ;)
|
|
||||||
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
|
|
||||||
"dialback"; -- s2s dialback support
|
|
||||||
"disco"; -- Service discovery
|
|
||||||
-- TODO: Enable TLS once you have certificates
|
|
||||||
--"tls"; -- Add support for secure TLS on c2s/s2s connections
|
|
||||||
|
|
||||||
-- Not essential, but recommended
|
|
||||||
"carbons";
|
|
||||||
"csi_simple";
|
|
||||||
"pep";
|
|
||||||
"private"; -- Private XML storage (for room bookmarks, etc.)
|
|
||||||
"vcard4";
|
|
||||||
"vcard_legacy";
|
|
||||||
|
|
||||||
-- Nice to have
|
|
||||||
"version"; -- Replies to server version requests
|
|
||||||
"uptime"; -- Report how long server has been running
|
|
||||||
"time"; -- Let others know the time here on this server
|
|
||||||
"ping"; -- Replies to XMPP pings with pongs
|
|
||||||
"register"; -- Allow users to register on this server using a client and change passwords
|
|
||||||
"register_ibr";
|
|
||||||
"mam";
|
|
||||||
|
|
||||||
-- Admin interfaces
|
|
||||||
"admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands
|
|
||||||
--"admin_telnet"; -- Opens telnet console interface on localhost port 5582
|
|
||||||
|
|
||||||
-- HTTP modules
|
|
||||||
"websocket";
|
|
||||||
"http_files"; -- Serve static files from a directory over HTTP
|
|
||||||
"http_libjs"; -- Serve static files from a directory over HTTP
|
|
||||||
"http_host_status_check";
|
|
||||||
--"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
|
|
||||||
|
|
||||||
-- Other specific functionality
|
|
||||||
"watchregistrations"; -- Alert admins of registrations
|
|
||||||
"announce"; -- Send announcement to all online users
|
|
||||||
"server_contact_info";
|
|
||||||
--"groups"; -- Shared roster support
|
|
||||||
--"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
|
|
||||||
--"welcome"; -- Welcome users who register accounts
|
|
||||||
--"motd"; -- Send a message to users when they log in
|
|
||||||
--"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
|
|
||||||
|
|
||||||
-- Community Modules
|
|
||||||
"admin_blocklist";
|
|
||||||
"admin_web";
|
|
||||||
"blocking";
|
|
||||||
"bookmarks";
|
|
||||||
"cloud_notify";
|
|
||||||
"password_reset";
|
|
||||||
"privacy_lists";
|
|
||||||
"smacks";
|
|
||||||
"s2s_keepalive";
|
|
||||||
-- "turncredentials";
|
|
||||||
};
|
|
||||||
|
|
||||||
-- Disable account creation by default, for security
|
|
||||||
-- For more information see http://prosody.im/doc/creating_accounts
|
|
||||||
allow_registration = false
|
|
||||||
min_seconds_between_registrations = 600
|
|
||||||
|
|
||||||
-------------------------
|
|
||||||
-- Connection Settings --
|
|
||||||
-------------------------
|
|
||||||
-- Force clients to use encrypted connections? This option will
|
|
||||||
-- prevent clients from authenticating unless they are using encryption.
|
|
||||||
c2s_require_encryption = false
|
|
||||||
|
|
||||||
-- Force certificate authentication for server-to-server connections?
|
|
||||||
-- This provides ideal security, but requires servers you communicate
|
|
||||||
-- with to support encryption AND present valid, trusted certificates.
|
|
||||||
-- NOTE: Your version of LuaSec must support certificate verification!
|
|
||||||
-- For more information see http://prosody.im/doc/s2s#security
|
|
||||||
s2s_secure_auth = false
|
|
||||||
|
|
||||||
-- Many servers don't support encryption or have invalid or self-signed
|
|
||||||
-- certificates. You can list domains here that will not be required to
|
|
||||||
-- authenticate using certificates. They will be authenticated using DNS.
|
|
||||||
--s2s_insecure_domains = { "gmail.com" }
|
|
||||||
|
|
||||||
-- Even if you leave s2s_secure_auth disabled, you can still require valid
|
|
||||||
-- certificates for some domains by specifying a list here.
|
|
||||||
--s2s_secure_domains = { "jabber.org" }
|
|
||||||
|
|
||||||
----------------------
|
|
||||||
-- Storage Settings --
|
|
||||||
----------------------
|
|
||||||
-- Select the authentication backend to use. The 'internal' providers
|
|
||||||
-- use Prosody's configured data storage to store the authentication data.
|
|
||||||
-- To allow Prosody to offer secure authentication mechanisms to clients, the
|
|
||||||
-- default provider stores passwords in plaintext. If you do not trust your
|
|
||||||
-- server please see http://prosody.im/doc/modules/mod_auth_internal_hashed
|
|
||||||
-- for information about using the hashed backend.
|
|
||||||
authentication = "internal_hashed"
|
|
||||||
|
|
||||||
-- Select the storage backend to use. By default Prosody uses flat files
|
|
||||||
-- in its configured data directory, but it also supports more backends
|
|
||||||
-- through modules. An "sql" backend is included by default, but requires
|
|
||||||
-- additional dependencies. See http://prosody.im/doc/storage for more info.
|
|
||||||
default_storage = "internal" -- Default is "internal"
|
|
||||||
storage = {
|
|
||||||
archive2 = "xmlarchive";
|
|
||||||
muc_log = "xmlarchive";
|
|
||||||
}
|
|
||||||
|
|
||||||
-----------------------------
|
|
||||||
-- Some messaging settings --
|
|
||||||
-----------------------------
|
|
||||||
|
|
||||||
-- TODO: Provide some contact information
|
|
||||||
contact_info = {
|
|
||||||
abuse = { "mailto:abuse@example.com", "https://example.com/contact" };
|
|
||||||
admin = { "https://exapmle.com/contact" };
|
|
||||||
feedback = { "https://exapmle.com/contact" };
|
|
||||||
security = { "https://exapmle.com/contact" };
|
|
||||||
support = { "https://exapmle.com/contact" };
|
|
||||||
sales = { "https://exapmle.com/contact" };
|
|
||||||
};
|
|
||||||
|
|
||||||
-- Configure Message Archive
|
|
||||||
archive_expires_after = "2m"
|
|
||||||
|
|
||||||
-- Logging for MUCs
|
|
||||||
muc_log_by_default = true; -- Enable logging by default (can be disabled in room config)
|
|
||||||
muc_log_all_rooms = false; -- set to true to force logging of all rooms
|
|
||||||
max_history_messages = 20;
|
|
||||||
|
|
||||||
-- STUN/TURN Server
|
|
||||||
--turncredentials_secret = "XXXXXXXXXXXXXXXXX";
|
|
||||||
--turncredentials_host = "external.turn.server.exmple.com";
|
|
||||||
--turncredentials_port = 8080;
|
|
||||||
--turncredentials_ttl = 86400;
|
|
||||||
|
|
||||||
-- #######################################################
|
|
||||||
-- # Virtual hosts #
|
|
||||||
-- # You need to add a VirtualHost entry for each domain #
|
|
||||||
-- # you wish Prosody to serve. #
|
|
||||||
-- # Settings under each VirtualHost entry apply *only* #
|
|
||||||
-- # to that host. #
|
|
||||||
-- #######################################################
|
|
||||||
VirtualHost "example.com"
|
|
||||||
|
|
||||||
-- #######################################################
|
|
||||||
-- # Components #
|
|
||||||
-- # You can specify components to add hosts that #
|
|
||||||
-- # provide special services, like multi-user #
|
|
||||||
-- # conferences, and transports. #
|
|
||||||
-- # 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"
|
|
||||||
modules_enabled = {
|
|
||||||
"muc_mam";
|
|
||||||
"remote_roster";
|
|
||||||
"vcard_muc";
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Set up a bytestream proxy for server-proxied file transfers:
|
|
||||||
Component "proxy65.example.com" "proxy65"
|
|
||||||
proxy65_acl = {
|
|
||||||
'example.com',
|
|
||||||
};
|
|
||||||
|
|
||||||
Component "xmppfiles.example.com" "http_upload"
|
|
||||||
http_upload_file_size_limit = 5 * 1024 * 1024 -- 5 MB
|
|
||||||
http_upload_expire_after = 60 * 60 * 24 * 30 -- 30 Tage
|
|
||||||
http_upload_quota = 50 * 1024 * 1024 -- 50 MB
|
|
||||||
|
|
||||||
---Set up an external component (default component port is 5347)
|
|
||||||
--
|
|
||||||
-- External components allow adding various services, such as gateways/
|
|
||||||
-- transports to other networks like ICQ, MSN and Yahoo. For more info
|
|
||||||
-- see: http://prosody.im/doc/components#adding_an_external_component
|
|
||||||
--
|
|
||||||
--Component "gateway.example.com"
|
|
||||||
-- component_secret = "password"
|
|
Reference in a new issue