Jigsaw-Code / outline-server

Outline Server, developed by Jigsaw. The Outline Server is a proxy server that runs a Shadowsocks instance and provides a REST API for access key management.
https://getoutline.org/
Apache License 2.0
5.79k stars 780 forks source link

Port configuration issue in `shadowbox_config.json` after changing default port from `443` to `10443` #1596

Closed Yitter96 closed 1 week ago

Yitter96 commented 1 week ago

Detail

I'm running an Outline server, and after changing the default port from 443 to 10443, I encountered an issue when adding a new user. Specifically, the port in shadowbox_config.json is being stored as a string, while the server expects an integer.

Steps to Reproduce:

  1. Change the default port from 443 to 10443.
  2. Add a new user.
  3. Restart the server container.
  4. Observe the following error in the logs:
    Server failed to start: failed to configure server: failed to load config (/opt/outline/persisted-state/outline-ss-server/config.yml): failed to parse config: yaml: unmarshal errors:
    line 12: cannot unmarshal !!str `10443` into int. Aborting
  5. Manually editing the shadowbox_config.json file to remove quotes around the port number fixes the issue temporarily. However, the problem reoccurs when a new user is added.

Expected Behavior:

The port number in shadowbox_config.json should be stored as an integer, not a string, to avoid breaking the server configuration.

Actual Behavior:

The port number is stored as a string, which causes the server to fail upon restart or adding a new user.

Environment:

Outline Server version: 1.9.0 Docker container: 24.0.1, build 6802122 OS: Debian 11 (bullseye)

Temporary Workaround:

Manually edit shadowbox_config.json to remove the quotes around the port number and restart the container. However, this only works until a new user is added, at which point the issue reoccurs.

Would appreciate any help or a fix for this issue. Thank you!

Yitter96 commented 1 week ago

Sorry, problems was been in my side i maked mistake in this:

"portForNewAccessKeys":"10443"

->

"portForNewAccessKeys":10443