经纬航通后端HS服务器管理平台
Go to file
2022-07-06 19:51:11 +08:00
.github/workflows GitHub Pages Deploy (#189) 2022-01-31 17:38:34 +01:00
public Import users from CSV 2020-11-02 18:29:56 +00:00
src 更新 'src/i18n/zh.js' 2022-07-06 19:51:11 +08:00
.dockerignore Add git context to docker, so we can derive the release version 2020-07-29 17:49:30 +02:00
.env Allow fixed homeserver (#142) 2021-05-18 12:39:53 +02:00
.gitignore Create a base react-admin application 2020-02-07 21:20:57 +01:00
.prettierrc Fix typo in .prettierrc (#224) 2022-01-31 17:24:37 +01:00
.travis.yml Update nodejs version for travis 2021-05-05 19:31:50 +02:00
docker-compose.yml Add docker-compose.yml 2021-04-21 10:51:17 +02:00
Dockerfile Make PUBLIC_URL and REACT_APP_SERVER configurable (#266) 2022-05-23 14:06:04 +02:00
LICENSE Create a base react-admin application 2020-02-07 21:20:57 +01:00
package.json Upgrade react-admin to ^3.19.7 (#241) 2022-03-22 18:13:01 +01:00
README.md 更新 'README.md' 2022-07-06 17:19:07 +08:00
screenshots.jpg Add screenshots and install instructions 2020-07-08 07:49:42 +00:00
yarn.lock Bump minimist from 1.2.5 to 1.2.6 2022-05-23 14:07:01 +02:00

Build Status build-test

Synapse admin ui

This project is built using react-admin.

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

## Run `sudo apt-get install -y nodejs` to install Node.js 14.x and npm
## You may also need development tools to build native addons:
     sudo apt-get install gcc g++ make
## To install the Yarn package manager, run:
     curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
     echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
     sudo apt-get update && sudo apt-get install yarn


Usage

Supported Synapse

It needs at least Synapse v1.42.0 for all functions to work as expected!

You get your server version with the request /_synapse/admin/v1/server_version. See also Synapse version API.

After entering the URL on the login page of synapse-admin the server version appears below the input field.

Prerequisites

You need access to the following endpoints:

  • /_matrix
  • /_synapse/admin

See also Synapse administration endpoints

Use without install

You can use the current version of Synapse Admin without own installation direct via GitHub Pages.

Note: If you want to use the deployment, you have to make sure that the admin endpoints (/_synapse/admin) are accessible for your browser. Remember: You have no need to expose these endpoints to the internet but to your network. If you want your own deployment, follow the Step-By-Step Install Guide below.

Step-By-Step install

You have three options:

  1. Download the tarball and serve with any webserver
  2. Download the source code from github and run using nodejs
  3. Run the Docker container

Steps for 1)

  • make sure you have a webserver installed that can serve static files (any webserver like nginx or apache will do)
  • configure a vhost for synapse admin on your webserver
  • download the .tar.gz from the latest release: https://github.com/Awesome-Technologies/synapse-admin/releases/latest
  • unpack the .tar.gz
  • move or symlink the synapse-admin-x.x.x into your vhosts root dir
  • open the url of the vhost in your browser

Steps for 2)

  • make sure you have installed the following: git, yarn, nodejs
  • download the source code: git clone https://github.com/Awesome-Technologies/synapse-admin.git
  • change into downloaded directory: cd synapse-admin
  • download dependencies: yarn install
  • start web server: yarn start

You can fix the homeserver, so that the user can no longer define it himself. Either you define it at startup (e.g. REACT_APP_SERVER=https://yourmatrixserver.example.com yarn start) or by editing it in the .env file. See also the documentation.

Steps for 3)

  • run the Docker container from the public docker registry: docker run -p 8080:80 awesometechnologies/synapse-admin or use the docker-compose.yml: docker-compose up -d

    note: if you're building on an architecture other than amd64 (for example a raspberry pi), make sure to define a maximum ram for node. otherwise the build will fail.

    version: "3"
    
    services:
      synapse-admin:
        container_name: synapse-admin
        hostname: synapse-admin
        build:
          context: https://github.com/Awesome-Technologies/synapse-admin.git
          # args:
          #   - NODE_OPTIONS="--max_old_space_size=1024"
          #   # see #266
          #   - PUBLIC_URL="/synapse-admin"
          #   - REACT_APP_SERVER="https://matrix.example.com"
        ports:
          - "8080:80"
        restart: unless-stopped
    
  • browse to http://localhost:8080

Screenshots

Screenshots

Development

  • Use yarn test to run all style, lint and unit tests
  • Use yarn fix to fix the coding style