openvk/README.md
Artem Vetrov 677e147688
CI for OpenVK, Kubernetes and Docker deployments (#735)
* Kubernetes deployment

* Update kubernetes deployment

* Fix rewrite module load

* Fix mysql-primary bootstrap

* Fix mysql init-db apply order

* Fix init-db.sql permissions

* Fix MySQL missing *.sql import

* Switch from MySQL to MariaDB

* [skip ci] Example deployment update

* Set root app in chandler configmap

* Update missing php extension in base images

* Update missing dependency in apache image

* Remove default site configuration

* [skip ci] Split Kubernetes deployments by type

* Explicitly set persistent volume for openvk storage

* [skip ci] Add README for Kubernetes

* Replace old docker(-compose) files w/ new ones

* Add README for docker usage

* [skip ci] Update README.md and README_RU.md

* [skip ci] Fix eventdb DB name

* [skip ci] Kubernetes configmap: missing namespace

* [skip ci] Fix typo

* [skip ci] Ignore chandler.yml

* [skip ci] Missing /var/log/openvk volume

* [skip ci] Workaround for Docker <=20.10.6

* [skip ci] Handle permissions for apache2

* [skip ci] Initial Kafka support

* [skip ci] Kafka values for Kubernetes
2022-10-30 14:44:14 +03:00

5.4 KiB

openvkOpenVK

Русский

OpenVK is an attempt to create a simple CMS that cosplays imitates old VK. Code provided here is not stable yet.

VKontakte belongs to Pavel Durov and VK Group.

To be honest, we don't know whether it even works. However, this version is maintained and we will be happy to accept your bugreports in our bug-tracker. You should also be able to submit them using ticketing system (you will need an OVK account for this).

When's the release?

We will release OpenVK as soon as it's ready. As for now you can:

  • git clone this repo's master branch (use git pull to update)
  • Grab a prebuilt OpenVK distro from GitHub artifacts

Instances

Can I create my own OpenVK instance?

Yes! And you're very welcome to.

However, OVK makes use of Chandler Application Server. This software requires extensions, that may not be provided by your hosting provider (namely, sodium and yaml. these extensions are available on most of ISPManager hostings).

If you want, you can add your instance to the list above so that people can register there.

Installation procedure

  1. Install PHP 7.4, web-server, Composer, Node.js, Yarn and Chandler
  • PHP 8.1 is supported, but it was not tested carefully, be aware of that.
  1. Install MySQL-compatible database.
  • We recommend using Percona Server, but any MySQL-compatible server should work
  • Server should be compatible with at least MySQL 5.6, MySQL 8.0+ recommended.
  • Support for MySQL 4.1+ is WIP, replace utf8mb4 and utf8mb4_unicode_520_ci with utf8 and utf8_unicode_ci in SQLs.
  1. Install commitcaptcha and OpenVK as Chandler extensions like this:
git clone https://github.com/openvk/openvk /path/to/chandler/extensions/available/openvk
git clone https://github.com/openvk/commitcaptcha /path/to/chandler/extensions/available/commitcaptcha
  1. And enable them:
ln -s /path/to/chandler/extensions/available/commitcaptcha /path/to/chandler/extensions/enabled/
ln -s /path/to/chandler/extensions/available/openvk /path/to/chandler/extensions/enabled/
  1. Import install/init-static-db.sql to the same database you installed Chandler to and import all sqls from install/sqls to the same database
  2. Import install/init-event-db.sql to a separate database (Yandex.Clickhouse can also be used, highly recommended)
  3. Copy openvk-example.yml to openvk.yml and change options to your liking
  4. Run composer install in OpenVK directory
  5. Run composer install in commitcaptcha directory
  6. Move to Web/static/js and execute yarn install
  7. Set openvk as your root app in chandler.yml

Once you are done, you can login as a system administrator on the network itself (no registration required):

  • Login: admin@localhost.localdomain6
  • Password: admin
    • It is recommended to change the password of the built-in account or disable it.

💡Confused? Full installation walkthrough is available here (CentOS 8 and family).

Looking for Docker or Kubernetes deployment?

See install/automated/docker/README.md and install/automated/kubernetes/README.md for Docker and Kubernetes deployment instructions.

If my website uses OpenVK, should I release it's sources?

It depends. You can keep the sources to yourself if you do not plan to distribute your website binaries. If your website software must be distributed, it can stay non-OSS provided the OpenVK is not used as a primary application and is not modified. If you modified OpenVK for your needs or your work is based on it and you're planning to redistribute this, then you should license it under terms of any LGPL-compatible license (like OSL, GPL, LGPL etc).

Where can I get assistance?

You may reach out to us via:

Attention: bug tracker, board, telegram and matrix chat are public places. And ticketing system is being served by volunteers. If you need to report something, that shouldn't be immediately disclosed to general public (for instance, vulnerability report), please use contact us directly at this email: openvk [at] tutanota [dot] com

Get it on Codeberg