You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Dan Ballard d748752648 Merge pull request 'add config and storage support for a message cap' (#32) from msgCap into trunk 4 months ago
app deps version bump 4 months ago
docker change -exportTofuBundle to -exportServerBundle 9 months ago
metrics document mathiasme fix 7 months ago
storage add config and storage support for a message cap 4 months ago
testing golint -> staticcheck and required changes 9 months ago
.drone.yml fix tofubundle dump from app, fix READAME docker lines to be correct; drone more specific to avoid container checks on latest 8 months ago
.gitignore Replace legacy message store with sqlite3 message store 1 year ago
LICENSE Add 'LICENSE' 6 months ago
README.md fix tofubundle dump from app, fix READAME docker lines to be correct; drone more specific to avoid container checks on latest 8 months ago
go.mod deps version bump 4 months ago
go.sum deps version bump 4 months ago
server.go spelling 4 months ago
serverConfig.go add config and storage support for a message cap 4 months ago
server_tokenboard.go adding 'servers' interface to manage multiple servers and support for encrypted configs 10 months ago
servers.go move storage and GenerateRandomID cwtch deps into server to minimize parts of cwtch depended on. Now it's just model and protocol/groups 8 months ago
servers_test.go server need .Stop() and .Destroy() 9 months ago

README.md

Cwtch Server

Building

Pretty straight forward:

  • build the app in app/ with go build
  • build the docker container in docker/ with docker build . -t openpriv/server

Windows

The server package relies on sqlite which in turn requires the use of CGO. As per this issue that means TDM-GCC is required to be installed and used to compile on Windows

Running

  • cd app
  • go build
  • ./app

The app takes the following arguments

  • -debug: enabled debug logging
  • -exportServerBundle: Export the server bundle to a file called serverbundle
  • -disableMetrics: Disable metrics reporting to serverMonitor.txt and associated tracking routines
  • -dir [directory]: specify a directory to store server files (default is current directory)

The app takes the following environment variables

  • CWTCH_HOME: sets the config dir for the app
  • DISABLE_METRICS: if set to any value ('1') it disables metrics reporting to serverMonitor.txt and associated tracking routines

env CONFIG_HOME=./conf ./app

Using the Server

When run the app will output standard log lines, one of which will contain the serverbundle in purple. This is the part you need to capture and import into a Cwtch client app so you can use the server for hosting groups

Docker

Build by executing docker build -f docker/Dockerfile .

or run our prebuild ones with

pull openpriv/cwtch-server

and run it. It stores all Cwtch data in a Volume at /var/lib/cwtch so if you want the server data to persist you would run

docker run -v /var/lib/cwtch/server01:/var/lib/cwtch openpriv/cwtch-server

to create a persistent container you might try a command like:

docker run --name cwtch -v /var/lib/cwtch/server01:/var/lib/cwtch --restart always openpriv/cwtch-server