# Template file for JupyterHub systemd service # Uses simple string.format() for 'templating' [Unit] # Traefik must have successfully started *before* we launch JupyterHub Requires=traefik.service After=traefik.service [Service] User=root Restart=always WorkingDirectory={install_prefix}/state # Protect bits that are normally shared across the system PrivateTmp=yes PrivateDevices=yes ProtectKernelTunables=yes ProtectKernelModules=yes Environment=TLJH_INSTALL_PREFIX={install_prefix} Environment=PATH={install_prefix}/hub/bin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # Run upgrade-db before starting, in case Hub version has changed # This is a no-op when no db exists or no upgrades are needed ExecStart={python_interpreter_path} -m jupyterhub -f {jupyterhub_config_path} --upgrade-db [Install] # Start service when system boots WantedBy=multi-user.target