Introduce -h option to allow listening not on 0.0.0.0. (#406)

fetch-workers-env-override
Alexander Aleksandrovič Klimov 3 years ago committed by GitHub
parent 22ef9afb93
commit 8ab8aaa6ae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -14,6 +14,7 @@ from changedetectionio import store
def main(): def main():
ssl_mode = False ssl_mode = False
host = ''
port = os.environ.get('PORT') or 5000 port = os.environ.get('PORT') or 5000
do_cleanup = False do_cleanup = False
@ -21,9 +22,9 @@ def main():
datastore_path = os.path.join(os.getcwd(), "datastore") datastore_path = os.path.join(os.getcwd(), "datastore")
try: try:
opts, args = getopt.getopt(sys.argv[1:], "Ccsd:p:", "port") opts, args = getopt.getopt(sys.argv[1:], "Ccsd:h:p:", "port")
except getopt.GetoptError: except getopt.GetoptError:
print('backend.py -s SSL enable -p [port] -d [datastore path]') print('backend.py -s SSL enable -h [host] -p [port] -d [datastore path]')
sys.exit(2) sys.exit(2)
create_datastore_dir = False create_datastore_dir = False
@ -37,6 +38,9 @@ def main():
if opt == '-s': if opt == '-s':
ssl_mode = True ssl_mode = True
if opt == '-h':
host = arg
if opt == '-p': if opt == '-p':
port = int(arg) port = int(arg)
@ -93,13 +97,13 @@ def main():
if ssl_mode: if ssl_mode:
# @todo finalise SSL config, but this should get you in the right direction if you need it. # @todo finalise SSL config, but this should get you in the right direction if you need it.
eventlet.wsgi.server(eventlet.wrap_ssl(eventlet.listen(('', port)), eventlet.wsgi.server(eventlet.wrap_ssl(eventlet.listen((host, port)),
certfile='cert.pem', certfile='cert.pem',
keyfile='privkey.pem', keyfile='privkey.pem',
server_side=True), app) server_side=True), app)
else: else:
eventlet.wsgi.server(eventlet.listen(('', int(port))), app) eventlet.wsgi.server(eventlet.listen((host, int(port))), app)
if __name__ == '__main__': if __name__ == '__main__':

Loading…
Cancel
Save