Realnet server
Project description
realnet-server
How to run on linux using pip (deployed version)
- Create a folder and go to it.
mkdir realnet-server
cd realnet-server
- The realnet-server will need a database to connect to. Instructions for how to create a local db will be included at the end.
- In the repo root folder create an .env file with the following content:
REALNET_SERVER_HOST='0.0.0.0'
REALNET_SERVER_PORT='8080'
REALNET_DB_USER='realnet'
REALNET_DB_HOST='localhost'
REALNET_DB_PASS='Q1w35rr!423421345fdsfgs'
REALNET_DB_PORT='5432'
REALNET_DB_NAME='realnet'
REALNET_STORAGE_TYPE='s3'
REALNET_STORAGE_PATH='\realnet-server\storage'
REALNET_STORAGE_S3_BUCKET='realnet-dev'
REALNET_STORAGE_S3_KEY='ddd'
REALNET_STORAGE_S3_SECRET='ggg'
REALNET_STORAGE_S3_REGION='us-east-1'
REALNET_NAME='public'
REALNET_USERNAME='admin'
REALNET_EMAIL='joe.blog@gmail.com'
REALNET_REDIRECT_URI='http://localhost:4200/callback'
- run command
chmod 700 .env
- run the following commands:
python3 -m venv venv
. ./venv/bin/activate
pip install realnet-server
- finally to start realnet server run the following command:
realnet-server serve
Choose from 'serve', 'upgrade', 'initialize', 'migrate'.
How to run on linux from source:
- Clone out the repo
git clone https://github.com/virtual-space/realnet-server/realnet-server.git
- Go to the repo root folder
cd realnet-server
- The realnet-server will need a database to connect to. Instructions for how to create a local db will be included at the end.
- In the repo root folder create an .env file with the following content:
REALNET_SERVER_HOST='0.0.0.0'
REALNET_SERVER_PORT='8080'
REALNET_DB_USER='realnet'
REALNET_DB_HOST='localhost'
REALNET_DB_PASS='Q1w35rr!423421345fdsfgs'
REALNET_DB_PORT='5432'
REALNET_DB_NAME='realnet'
REALNET_STORAGE_TYPE='s3'
REALNET_STORAGE_PATH='\realnet-server\storage'
REALNET_STORAGE_S3_BUCKET='realnet-dev'
REALNET_STORAGE_S3_KEY='ddd'
REALNET_STORAGE_S3_SECRET='ggg'
REALNET_STORAGE_S3_REGION='us-east-1'
REALNET_NAME='public'
REALNET_USERNAME='admin'
REALNET_EMAIL='joe.blog@gmail.com'
REALNET_REDIRECT_URI='http://localhost:4200/callback'
- run command
chmod 700 .env
- run the following commands:
python3 -m venv venv
. ./venv/bin/activate
python setup.py install
- finally to start realnet server run the following command:
realnet-server serve
Choose from 'serve', 'upgrade', 'initialize', 'migrate'.
Running as a local development server
Run the following command before realnet-server serve. This disables the https requirement.
export AUTHLIB_INSECURE_TRANSPORT=1
If you have your own database, you should also run the following to initialize the database.
realnet-server initialize
python setup.py install notes
You may need to manually install some dependencies. python setup.py install should tell you what is missing.
The Cryptography module takes a long time to compile.
Below is an incomplete list of installation instructions for dependencies. If you're not doing this on a fresh installation, you should run python setup.py install to see what you need first.
Inside VENV
- Cryptography dependencies
pip install --upgrade pip
pip install setuptools-rust
Outside VENV
- postgreSQL (pg_config is missing)
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install postgresql
- c/c++ compilers (gcc/g++ is missing)
sudo apt update
sudo apt install build-essential
Optional Man pages
sudo apt-get install manpages-dev
To test the C & C++ compiler installations run these commands:
gcc --version
g++ --version
Creating a database for realnet-server
The following section should be done on your windows terminal if you are using WSL2.
Install Docker: https://docs.docker.com/desktop/windows/install/ Install Kubernetes: Go to settings in docker -> kubernetes -> enable kubernetes.
Get helm 3.1.0 or above. Create a postgresql container in docker using the bitnami distribution: https://github.com/bitnami/charts/tree/master/bitnami/postgresql Run the following after installing helm.
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
helm install realnet -f values.yaml bitnami/postgresql
This requires a values.yaml file to be in directory you use this command: You can get one from the bitnami github. You probably want to change from the default password and use a port that won't interfere with other databases on the system.
Replace password and port in the .env file with the password and port you used in values.yaml
Run kubectl port-forward --namespace default svc/realnet-postgresql [port]:[port] in a linux terminal. This allows connections from outside the container to reach the database.
Run in linux:
sudo docker ps -a
This will list the containers available in docker. Note the CONTAINER ID of the database you just created. Run the following commands:
docker exec -u root -it [CONTAINER ID] bash
install_packages postgis
psql -U postgres
CREATE EXTENSION postgis;
Check version:
SELECT postgis_version();
This should produce the following.
---------------------------------------
2.5 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)
Once the .env details have been updated to point at your local database, use realnet-server initialize to create the default database in your venv. This will also complain that there is no REALNET_PASSWORD. You will need to include one in the .env file, or add it to the initialize command via --password.
Notes for MacOS
Build from sources:
- brew install libyaml
- pip install pyyaml
- pip install cython
- brew install shapely
- pip install geos
- pip install cryptography
- If you are having trouble installing psycopg2 by pointing it to where your openssl library is, ie: env LDFLAGS="-I/opt/homebrew/Cellar/openssl@1.1/1.1.1m/include -L/opt/homebrew/Cellar/openssl@1.1/1.1.1m/lib" python setup.py install
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file realnet-server-0.0.7.tar.gz.
File metadata
- Download URL: realnet-server-0.0.7.tar.gz
- Upload date:
- Size: 34.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.7.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8325fd456b8b82a54b3e36c25151a28582dbee70aa4fa560c9146661162ad54
|
|
| MD5 |
041adefbfaea264ad42d8bc7de0112de
|
|
| BLAKE2b-256 |
346bc8a90ccd32469923190847276126fed34d43465146ff2d516f3efe50ba5e
|
File details
Details for the file realnet_server-0.0.7-py3.7.egg.
File metadata
- Download URL: realnet_server-0.0.7-py3.7.egg
- Upload date:
- Size: 99.5 kB
- Tags: Egg
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.7.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30e5382b95f4f26d3e790f69fe16f234097d6ef68f67bd6f509130e91f745e00
|
|
| MD5 |
c72eff458301493f5b4cd4114e12bcf1
|
|
| BLAKE2b-256 |
b5fcf050627b17964fac57276727b0bc75126a6bf77acbf78cd4c0ad35c83554
|
File details
Details for the file realnet_server-0.0.7-py3-none-any.whl.
File metadata
- Download URL: realnet_server-0.0.7-py3-none-any.whl
- Upload date:
- Size: 45.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.7.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df7cec20514778a3a2af9e6eb73899b75a93b87eca05c32028d76807c77721f9
|
|
| MD5 |
66c5cc45dbfbb503a330ac64e85d9856
|
|
| BLAKE2b-256 |
108bf85390f43cb49149481eb9a4c4811b4f55b5e69cde6803ef48ce245995d4
|