case 4586
This commit is contained in:
13
dist/8..2-ubuntu-22.04-ayiinit.sh
vendored
13
dist/8..2-ubuntu-22.04-ayiinit.sh
vendored
@@ -41,13 +41,18 @@ sudo apt-get -y install postgresql
|
||||
sudo -u postgres psql -U postgres -d postgres -c "alter user postgres with password 'YOUR_PASSWORD_HERE';"
|
||||
echo INSTALL REPORTING LIBS
|
||||
# Ubuntu 22.04
|
||||
# was in chromium days:
|
||||
# sudo apt-get install -yq gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 libgbm1 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
|
||||
|
||||
# Now for chrome may 2024 (note: these were determined entirely through trial and error)
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libatk1.0-0 libatk-bridge2.0-0 libcups2 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libxkbcommon0 libpango-1.0-0 libcairo2 libasound2 fonts-liberation
|
||||
|
||||
# Ubuntu 24.04
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libatk1.0-0t64 libc6 libcairo2 libdbus-1-3 libexpat1 libfontconfig1 libgcc-s1 libgdk-pixbuf2.0-0 libglib2.0-0t64 libgtk-3-0t64 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libnss3 lsb-release libgbm-dev xdg-utils
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libatk-bridge2.0-0t64 libcups2t64 libxcomposite1 libxdamage1 libpangocairo-1.0-0 libxfixes3 libxrandr2 libgbm1 libcairo2 libpango-1.0-0 libasound2t64 wget
|
||||
# sudo apt-get update
|
||||
# sudo apt-get install -y libatk1.0-0t64 libc6 libcairo2 libdbus-1-3 libexpat1 libfontconfig1 libgcc-s1 libgdk-pixbuf2.0-0 libglib2.0-0t64 libgtk-3-0t64 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libnss3 lsb-release libgbm-dev xdg-utils
|
||||
# sudo apt-get update
|
||||
# sudo apt-get install -y libatk-bridge2.0-0t64 libcups2t64 libxcomposite1 libxdamage1 libpangocairo-1.0-0 libxfixes3 libxrandr2 libgbm1 libcairo2 libpango-1.0-0 libasound2t64 wget
|
||||
# NOTE: for future releases of ubuntu when need to update packages this was helpful https://itsfoss.com/unable-to-locate-package-error-ubuntu/
|
||||
echo INSTALL AYANOVA
|
||||
apt install zip unzip -y
|
||||
|
||||
@@ -25,7 +25,7 @@ We gratefully acknowledge the following open source tools and libraries that wer
|
||||
- [Bogus](https://github.com/bchavez/Bogus)
|
||||
- [Bouncy Castle](https://github.com/chrishaly/bc-csharp)
|
||||
- [bwip-js](https://github.com/metafloor/bwip-js)
|
||||
- [Chromium](https://www.chromium.org/Home)
|
||||
- [Chrome](https://www.google.com/chrome/index.html)
|
||||
- [Enums.NET](https://github.com/TylerBrinkley/Enums.NET)
|
||||
- [Handlebars.js](https://handlebarsjs.com/)
|
||||
- [jose-jwt](https://github.com/dvsekhvalnov/jose-jwt)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# Report render browser path setting
|
||||
|
||||
This optional setting sets the _full_ path to the Chromium web browser executable that is used by AyaNova to render reports.
|
||||
This optional setting sets the _full_ path to the Chrome web browser executable that is used by AyaNova to render reports.
|
||||
|
||||
If not set, AyaNova will attempt to automatically download a copy of Chromium to a `.local-chromium` folder under the AyaNova executable folder on first report rendering.
|
||||
If not set, AyaNova will attempt to automatically download a copy of Chrome to a `Chrome` and `ChromeHeadlessShell` folders under the AyaNova executable folder on first report rendering.
|
||||
|
||||
This setting is typically not required to be set.
|
||||
|
||||
@@ -16,27 +16,27 @@ AyaNova expects the report rendering browser path to be provided by a config.jso
|
||||
|
||||
`AYANOVA_REPORT_RENDER_BROWSER_PATH`
|
||||
|
||||
The value specified should be a string containing a fully qualified file path to the Chromium browser.
|
||||
The value specified should be a string containing a fully qualified file path to the Chrome browser.
|
||||
|
||||
Example config.json entry
|
||||
|
||||
```json
|
||||
{
|
||||
...other properties...
|
||||
"AYANOVA_REPORT_RENDER_BROWSER_PATH": "/usr/bin/chromium-browser"
|
||||
"AYANOVA_REPORT_RENDER_BROWSER_PATH": "/usr/bin/Chrome"
|
||||
}
|
||||
```
|
||||
|
||||
Example command line parameter
|
||||
|
||||
`ayanova.exe --AYANOVA_REPORT_RENDER_BROWSER_PATH="/usr/bin/chromium-browser"` )
|
||||
`ayanova.exe --AYANOVA_REPORT_RENDER_BROWSER_PATH="/usr/bin/Chrome"` )
|
||||
|
||||
Example environment variable
|
||||
|
||||
Windows
|
||||
|
||||
`set "AYANOVA_REPORT_RENDER_BROWSER_PATH=o C:\Program Files\Chromium\chrome.exe"`
|
||||
`set "AYANOVA_REPORT_RENDER_BROWSER_PATH=o C:\Program Files\Chrome\chrome.exe"`
|
||||
|
||||
Linux
|
||||
|
||||
`export AYANOVA_REPORT_RENDER_BROWSER_PATH="/usr/bin/chromium-browser"`
|
||||
`export AYANOVA_REPORT_RENDER_BROWSER_PATH="/usr/bin/Chrome"`
|
||||
|
||||
@@ -6,14 +6,14 @@ The "desktop" installation is appropriate for a single user of AyaNova on a Linu
|
||||
|
||||
## Linux distributions
|
||||
|
||||
These instructions were compiled and tested on an Ubuntu 21.10 Desktop OS however any Linux x64 distribution should work provided the ASP.NET Core framework can be installed to it.
|
||||
These instructions were compiled and tested on an Ubuntu 22.04 Desktop OS however any Linux x64 distribution should work provided the ASP.NET Core framework can be installed to it.
|
||||
|
||||
You may need to "translate" these instructions into your Linux distribution's package manager and shell equivalent to the Apt package manager and Bash shell script commands shown here.
|
||||
|
||||
## System requirements
|
||||
|
||||
- OS : Linux x64 desktop operating system [supported by ASP.NET Core](https://docs.microsoft.com/en-us/dotnet/core/install/linux)
|
||||
- Internet connection : required to install license and to automatically download the Chromium report rendering engine
|
||||
- Internet connection : required to install license and to automatically download the Chrome report rendering engine
|
||||
- Disk space: minimum 2GB of free disk space
|
||||
- RAM : 1GB (minimum), 2+ GB (recommended)
|
||||
- Modern web browser with Javascript enabled
|
||||
@@ -51,9 +51,7 @@ If you do not see '8' as the first major version digit (the rest may vary) go th
|
||||
|
||||
AyaNova requires access to a PostgreSQL database server version 12 or newer. If you do not have a PostgreSQL server already available then it must be installed to a location visible to the AyaNova server (same computer or a local computer on the same network).
|
||||
|
||||
We recommend _not_ using the version of PostgreSQL provided by your OS package manager as they tend to be out of date.
|
||||
|
||||
To install PostgreSQL directly start here [https://www.postgresql.org/download/linux/](https://www.postgresql.org/download/linux/)
|
||||
If your package manager supports PostgreSQL 12 or newer then by all means use that however if you need to install directly start here [https://www.postgresql.org/download/linux/](https://www.postgresql.org/download/linux/)
|
||||
|
||||
### 3\. Set the PostgreSQL password
|
||||
|
||||
@@ -175,7 +173,11 @@ sudo ./AyaNova
|
||||
|
||||
## Report rendering first time delay
|
||||
|
||||
The very first time a report is rendered in AyaNova there will be a delay while the Chromium browser report rendering components are installed.
|
||||
The very first time a report is rendered in AyaNova there may be a delay while a "headless" Chrome browser report rendering engine is installed if you do not already have Chrome installed.
|
||||
|
||||
## Reporting Fonts / layout
|
||||
|
||||
All stock reports included with AyaNova are designed to layout correctly as long as the specified fonts are available. If you find the layouts are broken on the stock reports or don't align properly be sure that the `fonts-liberation` package is installed.
|
||||
|
||||
## Getting started and using AyaNova
|
||||
|
||||
|
||||
@@ -4,8 +4,6 @@ Please read through all the instructions below **before** proceeding with instal
|
||||
|
||||
These instructions assume shell access to a Linux server and a working knowledge of Linux adminstration tasks.
|
||||
|
||||
We also offer installation services, contact AyaNova support for details and pricing.
|
||||
|
||||
The "SERVER" installation configuration is appropriate for use both within a private office network or from the internet.
|
||||
|
||||
Once the AyaNova server is up and running users can access it with their web browsers pointed to the address of the AyaNova server.
|
||||
@@ -14,7 +12,7 @@ No installation is required at the user end to access the AyaNova web app with a
|
||||
|
||||
## Linux distributions
|
||||
|
||||
These instructions were compiled and tested on an Ubuntu 20 server OS however any Linux x64 distribution should work provided the ASP.NET Core framework can be installed to it.
|
||||
These instructions were compiled and tested on an Ubuntu 22.04 and 24.04 server OS however any Linux x64 distribution should work provided the ASP.NET Core framework can be installed to it.
|
||||
|
||||
## Hosted linux
|
||||
|
||||
@@ -32,8 +30,8 @@ An up to date modern web browser (not Internet Explorer) with Javascript enabled
|
||||
|
||||
## System requirements
|
||||
|
||||
- OS : Linux x64 operating system [supported by ASP.NET Core](https://docs.microsoft.com/en-us/dotnet/core/install/linux)
|
||||
- Internet connection : required to install license and to automatically download the Chromium report rendering engine
|
||||
- OS : Linux x64 operating system [supported by ASP.NET Core 8.x](https://docs.microsoft.com/en-us/dotnet/core/install/linux)
|
||||
- Internet connection : required to install license and to automatically download the Chrome report rendering engine
|
||||
- Disk space: minimum 2GB of free disk space
|
||||
- RAM : 1GB (minimum), 2+ GB (recommended)
|
||||
- Sufficient swap space if a low memory server is used ( < 4gb)
|
||||
@@ -62,7 +60,7 @@ Install the **"ASP.NET CORE RUNTIME" (NOT SDK VERSION)** using this guide for yo
|
||||
|
||||
There are three different versions of .net core listed, be sure you select the "ASP.NET Core Runtime" version.
|
||||
|
||||
There are different procedures for different versions of Linux and there is a step **before** the actual installation to add the microsoft package repository so be sure to read through the instructions carefully.
|
||||
There are different procedures for different versions of Linux and there may be a step **before** the actual installation to add the microsoft package repository so be sure to read through the instructions carefully.
|
||||
|
||||
Confirm ASP.NET Core runtime is installed and available before proceeding to the next step:
|
||||
|
||||
@@ -83,7 +81,7 @@ If you do not see an '8' as the first digit of the version number (the rest may
|
||||
|
||||
AyaNova requires access to a PostgreSQL database server version 12 or newer. If you do not have a PostgreSQL server already available then it must be installed to a location visible to the AyaNova server (same computer or a local computer on the same network).
|
||||
|
||||
We recommend _not_ using the version of PostgreSQL provided by your OS package manager as they tend to be out of date.
|
||||
If your package manager has PostgreSQL version 12 or newer then you can go that route or install directly:
|
||||
|
||||
To install PostgreSQL directly start here
|
||||
[https://www.postgresql.org/download/linux/](https://www.postgresql.org/download/linux/)
|
||||
@@ -108,21 +106,34 @@ If successful psql will display "ALTER ROLE" in response and you can close the p
|
||||
|
||||
**Warning**: Be careful about using special characters for your Postgres connection string, particularly the password and database name, we've encountered issues with the automatic internal backup failing due to a @ or $ symbol in the password. On some platforms when AyaNova attempts to run the backup utility it may fail if that operating system does not support certain special characters found in the password as they may interfere with the "shell" command called to perform the backup.
|
||||
|
||||
### 5\. Install Chromium browser support libraries
|
||||
### 5\. Install Chrome browser support libraries
|
||||
|
||||
AyaNova uses a "headless" Chromium browser to render report templates. Server versions of Linux do not have the required support libraries for Chromium to render reports so they must be installed in advance.
|
||||
AyaNova uses a "headless" Chrome browser to render report templates. Server versions of Linux do not have the required support libraries for Chrome to render reports so they must be installed in advance.
|
||||
|
||||
These examples below are tested with Ubuntu LTS releases; your distro may require different files or the requirements may change for Chrome over time. If in doubt, run a report and if you see an error check the [server log](ops-log.md) and if a library is missing causing Chrome to fail the error in the log will show the missing library file that will need to be installed if that is the issue.
|
||||
|
||||
#### Ubuntu 22.04 Chrome support libraries
|
||||
|
||||
```bash
|
||||
sudo apt-get install -yq gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 \
|
||||
libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 \
|
||||
libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 \
|
||||
libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 libgbm1 \
|
||||
ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
|
||||
sudo apt-get install -y libatk1.0-0 libatk-bridge2.0-0 libcups2 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libxkbcommon0 libpango-1.0-0 libcairo2 libasound2 fonts-liberation
|
||||
```
|
||||
|
||||
#### Ubuntu 24.04 Chrome support libraries
|
||||
|
||||
```bash
|
||||
sudo apt-get install -y libatk1.0-0t64 libc6 libcairo2 libdbus-1-3 libexpat1 libfontconfig1 libgcc-s1 libgdk-pixbuf2.0-0 libglib2.0-0t64 libgtk-3-0t64 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libnss3 lsb-release libgbm-dev xdg-utils \
|
||||
sudo apt-get update \
|
||||
sudo apt-get install -y libatk-bridge2.0-0t64 libcups2t64 libxcomposite1 libxdamage1 libpangocairo-1.0-0 libxfixes3 libxrandr2 libgbm1 libcairo2 libpango-1.0-0 libasound2t64 wget
|
||||
|
||||
```
|
||||
|
||||
#### Fonts / layout
|
||||
|
||||
All stock reports included with AyaNova are designed to layout correctly as long as the specified fonts are available. If you find the layouts are broken on the stock reports or don't align properly be sure that the `fonts-liberation` package is installed to your server.
|
||||
|
||||
### 6\. Create directories for AyaNova
|
||||
|
||||
AyaNova requires several directories to be created: the AyaNova binary and other server and web application files, AyaNova data and the .local-chromium directory to contain a local copy of the Chromium browser for report rendering.
|
||||
AyaNova requires several directories to be created: the AyaNova binary and other server and web application files, AyaNova data and the folders to contain a local copy of the Chrome browser for report rendering.
|
||||
|
||||
Create the AyaNova binary files directory. We recommend `/var/ayanova`:
|
||||
|
||||
@@ -136,10 +147,14 @@ Create the data directory. We recommend and AyaNova defaults to '/var/ayanova/da
|
||||
sudo mkdir /var/ayanova/data
|
||||
```
|
||||
|
||||
Create the .local-chromium directory:
|
||||
Create the Chrome binary directories:
|
||||
|
||||
```bash
|
||||
sudo mkdir /var/ayanova/.local-chromium
|
||||
sudo mkdir /var/ayanova/Chrome
|
||||
```
|
||||
|
||||
```bash
|
||||
sudo mkdir /var/ayanova/ChromeHeadlessShell
|
||||
```
|
||||
|
||||
### 7\. Download and unzip the AyaNova binaries archive
|
||||
|
||||
@@ -8,7 +8,7 @@ For example both the automated daily backup and rendering a report from a User r
|
||||
|
||||
## Authorization Roles required
|
||||
|
||||
Many roles can *select* this object on other records where approriate. Editing or viewing this object in detail is only available to Users with the following [roles](ay-biz-admin-roles.md):
|
||||
Editing or viewing this object in detail is only available to Users with the following [roles](ay-biz-admin-roles.md):
|
||||
|
||||
Full access
|
||||
|
||||
|
||||
@@ -8,6 +8,21 @@ The server log file is archived when it reaches 1mb in size to a rotating set of
|
||||
|
||||
This means there are a total of 10mb of server logs kept at any given time.
|
||||
|
||||
## Authorization Roles required
|
||||
|
||||
Editing or viewing this object from within the web app is only available to Users with the following [roles](ay-biz-admin-roles.md):
|
||||
|
||||
- System operations
|
||||
- System operations - restricted
|
||||
|
||||
## How to access the server error log
|
||||
|
||||
You can view the log file directly by opening the log file in an editor from the [log path](#log-path) location or from within the AyaNova web app where you can view and / or download the log files from any remote location:
|
||||
|
||||
The server log form is accessed in the following ways:
|
||||
|
||||
- From the `Server operations` [navigation drawer](ay-start-form-overview.md#navigation-drawer) `Server log` item to open this form
|
||||
|
||||
## Log path
|
||||
|
||||
By default AyaNova logs to a `logs` folder in the location specified by [AYANOVA_DATA_PATH](ops-config-data-path.md) setting.
|
||||
|
||||
Reference in New Issue
Block a user