docusealco / docuseal

Open source DocuSign alternative. Create, fill, and sign digital documents ✍️
https://www.docuseal.co
GNU Affero General Public License v3.0
6.09k stars 428 forks source link

Non-docker installation option #14

Closed panchtatvam closed 1 year ago

panchtatvam commented 1 year ago

This is a really good software however is it possible to install it without docker ? Could you provide manual installation instructions like other Rails apps like Openproject ?

AlexandrToorchyn commented 1 year ago

@panchtatvam

Step 0: Before you Start make sure you have Ruby 3.2.2 and NodeJS 16 installed on your system

https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-ubuntu-22-04

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-20-04

rbenv install 3.2.2
rbenv global 3.2.2

Step 1: Install Necessary Dependencies

First, make sure that you have all the necessary dependencies installed on your machine. In your case, you'll need to install:

On a system using apt (like Ubuntu), this could be done with the following command:

sudo apt-get install git sqlite3 libsqlite3-dev libpq-dev libmariadb-dev libvips-dev

Step 2: Clone the Repository

Clone the project repository and enter the directory:

git clone https://github.com/docusealco/docuseal.git
cd docuseal

Step 3: Install the Gems

Install the required Ruby gems:

bundle install

Step 4: Precompile Assets

Before you start your server, precompile assets:

npm install -g yarn
yarn install
RAILS_ENV=production ./bin/shakapacker

Step 5: Start the Server

Now, you can start the Rails server:

RAILS_ENV=production ./bin/rails server
panchtatvam commented 1 year ago

Thank you @AlexandrToorchyn . It worked. :)

Also, if one wants to run Docuseal as a system service using Systemd ( systemctl ) a service can be created as follows:

[Unit]
Description=Docuseal Web Server
After=syslog.target
After=network.target

[Service]
Type=simple

# To easily load environment details like "SECRET_KEY_BASE", "RAIL_ENV","DATABASE_URL" etc.
EnvironmentFile=/opt/docuseal/docuseal/docuseal.env 
User=docuseal
Group=docuseal
Restart=always

WorkingDirectory=/opt/docuseal/docuseal
ExecStart=/opt/docuseal/.rbenv/bin/rbenv exec bundle exec rails server

[Install]
WantedBy=multi-user.target
AlexandrToorchyn commented 1 year ago

@panchtatvam It would be great if you could format your answer into a step-by-step guide and could post it on the project wiki 🙏