diff --git a/tzk/__main__.py b/tzk/__main__.py index e19bca5..0e94cf2 100644 --- a/tzk/__main__.py +++ b/tzk/__main__.py @@ -85,6 +85,12 @@ class ListenCommand(CliCommand): @classmethod def setup_arguments(cls, parser: argparse.ArgumentParser) -> None: + parser.add_argument( + "--host", + metavar="HOST", + help="Host to listen on.", + default=str(cm().listen_host or "127.0.0.1"), + ) parser.add_argument( "-p", "--port", metavar="PORT", @@ -111,6 +117,7 @@ class ListenCommand(CliCommand): tw.exec( [ ("listen", + f"host={args.host}", f"port={args.port}", f"username={args.username}", f"password={args.password}") diff --git a/tzk/default_config.py b/tzk/default_config.py index 394028c..af42c96 100644 --- a/tzk/default_config.py +++ b/tzk/default_config.py @@ -35,6 +35,10 @@ commit_remote = "" # http://localhost:8080 in your browser. listen_port = 8080 +# Host to listen on. If you specify "0.0.0.0" it will listen to all network interfaces. +# This is useful for allowing the wiki to be exposed to the network through a container. +listen_host = "127.0.0.1" + # Uncomment if you want to require HTTP basic authentication when serving your wiki. # **WARNING**: this is NOT secure for use over the open Internet or all but the # simplest local networks, as the password is sent in the clear. For good