Add installation using Docker Compose and many other improvements for implementation in Docker. #614
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi, when I decided to set up a chatmail server for personal use, I was frustrated to discover that there was no Docker installation, so I created a preliminary implementation.
Brief description of changes
--skip-dns-check
argument tocmdeploy run
command--force
argument tocmdeploy init
commandfcgiwrap.service
unbound.service
is_development_instance
,use_foreign_cert_manager
,acme_email
,change_kernel_settings
,fs_inotify_max_user_instances_and_watchers
)Full description of changes
The main thing that was done was to add support for running in Docker, but in addition to that, the problems that made this method of running impossible were also solved.
I think the advantages of running in Docker are obvious:
This is only the first implementation of installation using Docker, but it works and seems to be stable (at least I haven't found any anomalies), but in the future it will need to be brought to a more adequate state (with the abandonment of using systemd inside and the division of everything into several containers or 1 container, but without systemd management, but that's just a thought for the future).
The modifications were made with a focus on full compatibility with the current installation and are additional optional parameters.
In addition, some QoL features and instance documentation unification were added so that administrators would not have to create separate pages for different language groups of users.
Some errors that I encountered during deployment have also been fixed (and to be honest, I don't understand why some of them didn't occur for others -_-), namely:
--ssh_host
argumentfcgiwrap.service
service, which does not download or start when rolled out using the current methodunbound.service
, when it is installed but does not show that it occupies port 53All changes are described in detail in the
changelog.md
.I hope my improvements meet your requirements and you accept the PR, because I really believe that this is a very important part of the project's development — installation using Docker is easier, which means that many more people will be able to install it and thus popularize it.