Merge #886
886: Ipv6 support r=mergify[bot] a=muhlemmer ## What type of PR? (Feature, enhancement, bug-fix, documentation) -> A bit of everything ## What does this PR do? Document how to use ipv6nat. This, however triggers some kind of flaky behavior with the Docker DNS resolver, resulting in lookup failures between containers. So all resolving needs to be done during container startup/configuration. In order not to pollute every single start.py file, we've created a small library called [Mailu/MailuStart](https://github.com/Mailu/MailuStart). As an addition, this library also defines the template generation function, including its logging facility. Note: `docker-compose.yml` downgrade is necessary, as IPv6 settings are not supported by the Docker Compose file format 3 😞 ### Related issue(s) Supersedes PR #844 - Fixes #827 - Hopefully helps with #829 and #834 ## No backport yet This PR directly imports MailuStart from git. This makes it a bit more simple to implement on the short term an do some testing and probably some future improvements. When everything is proved stable, we will create a proper PyPi package with versioning and consider back porting. ## Prerequistes Before we can consider review and merge, please make sure the following list is done and checked. If an entry in not applicable, you can check it or remove it from the list. - [x] In case of feature or enhancement: documentation updated accordingly - [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version. Co-authored-by: Ionut Filip <ionut.philip@gmail.com> Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>master
commit
86b4242f82
@ -1,17 +1,12 @@
|
|||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
|
|
||||||
import jinja2
|
|
||||||
import os
|
import os
|
||||||
import logging as log
|
import logging as log
|
||||||
import sys
|
import sys
|
||||||
|
from mailustart import convert
|
||||||
|
|
||||||
log.basicConfig(stream=sys.stderr, level=os.environ.get("LOG_LEVEL", "WARNING"))
|
log.basicConfig(stream=sys.stderr, level=os.environ.get("LOG_LEVEL", "WARNING"))
|
||||||
|
|
||||||
def convert(src, dst):
|
|
||||||
logger = log.getLogger("convert()")
|
|
||||||
logger.debug("Source: %s, Destination: %s", src, dst)
|
|
||||||
open(dst, "w").write(jinja2.Template(open(src).read()).render(**os.environ))
|
|
||||||
|
|
||||||
convert("/unbound.conf", "/etc/unbound/unbound.conf")
|
convert("/unbound.conf", "/etc/unbound/unbound.conf")
|
||||||
|
|
||||||
os.execv("/usr/sbin/unbound", ["-c /etc/unbound/unbound.conf"])
|
os.execv("/usr/sbin/unbound", ["-c /etc/unbound/unbound.conf"])
|
||||||
|
Loading…
Reference in New Issue