Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Excalidraw build and deployment setup. Using alswl fork and update it to 0.16.1

License

Notifications You must be signed in to change notification settings

rizlas/excalifork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

3 Commits

Repository files navigation

Excalifork

Welcome to excalifork!

Overview

This repository collects forks of the very well known Excalidraw. Main objective of excalifork is to have a fast way to deploy and build images of Excalidraw that enable collaboration features.

Sources:

- https://gitlab.com/kiliandeca/excalidraw-fork
- https://github.com/alswl/excalidraw-storage-backend/tree/fork
- https://github.com/alswl/excalidraw/tree/fork

Why not using alswl https://github.com/alswl/excalidraw-collaboration? Mainly because there are too many branches in their submodules and is not updated to use with v0.16 of Excalidraw. In docker/excalifork/0001-v0.16.1.patch you can find modifications applied (mainly coming from https://github.com/alswl/excalidraw/tree/fork).

Following sections describe how to build and deploy excalifork using docker or kubernetes.

Docker

Prerequisites

  • Docker and ansible installed on your system
  • A domain to issue SSL certificates
  • Use provided Pipfile

Usage

  1. Clone the repository to your local machine:
git clone https://github.com/rizlas/excalifork.git
  1. Navigate to the ansible directory:
cd excalifork/ansible
  1. Build docker images:
ansible-playbook -i inventories/<select_inventory>/hosts.ini build.yml -e domain=yourdomain.tld
  1. Run the Docker container:
ansible-playbook -i inventories/<select_inventory>/hosts.ini docker.yml -e domain=yourdomain.tld -e acme_email=myacme@email.com

Access Excalifork by opening your browser and navigating to your FQDN.

Kubernetes

Prerequisites

  • Kubernetes cluster configured
  • kubectl installed

NOTE: In ansible/templates/kubernetes_resources.yml.j2 only based resources are provided. Further tuning of those should be done based on the cluster used, or other specifications, that cannot be known a priori (e.g. ingress controller, cert-manager...)

Deployment

  1. Select cluster:
export KUBECONFIG=path_to_your_kubeconfig
  1. Expose the service:
ansible-playbook -i inventories/<select_inventory>/hosts.ini kubernetes.yml

Access Excalifork by opening your browser and navigating to your FQDN.

Ansible

Prerequisites

  • SSH access to your deployment target

Deployment

  1. Create/update hosts.ini file in prod inventory with your deployment details.

Proxy and TLS

TLS is highly suggested cause excalidraw use WSS protocol (do not use self signed certificates https://stackoverflow.com/questions/5312311/secure-websockets-with-self-signed-certificate). In docker-compose you'll find https://github.com/nginx-proxy/acme-companion.

Proxy is nginx with autobuild configuration thanks to https://github.com/nginx-proxy/nginx-proxy.

Contributing

Feel free to make pull requests, fork, destroy or whatever you like most. Any criticism is more than welcome.

License

This project is licensed under the MIT License.


#followtheturtle

About

Excalidraw build and deployment setup. Using alswl fork and update it to 0.16.1

Topics

Resources

License

Stars

Watchers

Forks

AltStyle によって変換されたページ (->オリジナル) /