prosody / prosody-docker

Docker image building system for the Prosody XMPP server
https://hub.docker.com/r/prosody/prosody/
142 stars 50 forks source link

Docker for i386 (install Diskstation) #73

Open nillebor opened 2 years ago

nillebor commented 2 years ago

i would like to use prosody on the synology diskstation. apparently, however, the images are very outdated and only for x64.

  1. Can you create images for i386?
  2. are there regular updates to the current version again?
Zash commented 2 years ago
  1. Theoretically, but
  2. Not yet
nillebor commented 2 years ago

not yet, but it's been a long time i think prosody for docker is dead, if you look at the issues here!

Zash commented 2 years ago

See https://github.com/prosody/prosody-docker/issues/72#issuecomment-1014330842

I will consider this a request for i386. I know @mwild1 has some experience building multi-architecture Docker images for Snikket so should be doable once we get around to it.

Colbix commented 2 weeks ago

I was able to get Docker with Prosody 11.9 working on a Synology 412+. The problems I ran into were fragmented instructions. The environment variables didn't appear to work, at least I could not get them to be recognized, so all configuration was applied on the prosody.cfg.lua file. The following should allow you to get started with the docker.

Volumes

Mapping the volumes remained accurate based on the documents page ^1.

Configuration file

The example file ^2 for version 11 was missing pieces. I had to include some variables not included in the file pieced together from the documents and youtube videos.

Any variable in the configuration file referencing a docker environment variable, ENV_PROSODY_VIRTUAL_HOSTS for example, use the documented variable instead. ie: VirtualHost "example.com".

Database

The database document page^3 was accurate for configuration, I used MySQL for the backend. However, the example file omitted the port variable. Here is the corrected version which worked immediately once I added the missing variable. sql = { driver = "MySQL", database = "prosody", port = "3306", username = "uname", password = "prosody_password", host = "ip_of_server" }

Extra config

The bottom of the example file includes a line, Include (ENV_PROSODY_EXTRA_CONFIG or "/etc/prosody/conf.d/*.cfg.lua"), comment it out. If you do make use of this feature you'll need to use the documented variable to assign the location.

Certs

Run the interactive docker exec -it container_name /bin/bash and generate a self signed certificate with prosodyctl cert generate host_name or import your own/use let's encrypt.

Accounts

Run the interactive docker exec -it container_name /bin/bash and create a new user with prosodyctl adduser user_name@host_name.