Úvod
Flectra je bezplatný a open source CRM a ERP software, který poskytuje velkou flexibilitu a přizpůsobení, které vám umožní splnit jedinečné potřeby vašeho podnikání.
Flectra je také podnikový informační systém nové generace, který vám pomůže růst vašeho podnikání s výkonným modulárním designem pokrývajícím všechny základní aspekty podnikání.
Flectra je fork komunity Odoo a jejím hlavním cílem bylo implementovat mnoho funkcí z Odoo Enterprise a zároveň ji zachovat otevřenou pro každého.
Aktualizovat balíčky
Chcete-li upgradovat všechny nainstalované balíčky na vašem VPS, spusťte následující příkazy:
sudo apt-get update -y && sudo apt-get upgrade -y
Nainstalujte požadované závislosti
Do vašeho systému budete muset nainstalovat balíček Python a další závislosti Flectry. Spusťte tento příkaz:
sudo apt-get install gcc python3-venv build-essential python3-pillow python3-wheel python3-lxml python3-dev python3-pip python3-setuptools npm nodejs git gdebi libldap2-dev libsasl2-dev libxml2-dev libxslt1-dev libjpeg-dev libpq-dev -y
Také budete muset do svého systému nainstalovat nástroj wkhtmltopdf.
Můžete si jej stáhnout a nainstalovat pomocí následujícího příkazu:
qadry@unixcop:~$ wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
--2021-08-20 05:44:26-- https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
Resolving github.com (github.com)... 140.82.121.4
Connecting to github.com (github.com)|140.82.121.4|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-releases.githubusercontent.com/131323182/10e1d800-ab93-11ea-862e-4f209c09ebf0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210820%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210820T124427Z&X-Amz-Expires=300&X-Amz-Signature=17fe5ac9c52a75f405aa1915db96e68c7af0126b1e3f3b5f5de32bb2c9060ae2&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=131323182&response-content-disposition=attachment%3B%20filename%3Dwkhtmltox_0.12.6-1.focal_amd64.deb&response-content-type=application%2Foctet-stream [following]
--2021-08-20 05:44:27-- https://github-releases.githubusercontent.com/131323182/10e1d800-ab93-11ea-862e-4f209c09ebf0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210820%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210820T124427Z&X-Amz-Expires=300&X-Amz-Signature=17fe5ac9c52a75f405aa1915db96e68c7af0126b1e3f3b5f5de32bb2c9060ae2&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=131323182&response-content-disposition=attachment%3B%20filename%3Dwkhtmltox_0.12.6-1.focal_amd64.deb&response-content-type=application%2Foctet-stream
Resolving github-releases.githubusercontent.com (github-releases.githubusercontent.com)... 185.199.110.154, 185.199.109.154, 185.199.108.154, ...
Connecting to github-releases.githubusercontent.com (github-releases.githubusercontent.com)|185.199.110.154|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 15721382 (15M) [application/octet-stream]
Saving to: ‘wkhtmltox_0.12.6-1.focal_amd64.deb.1’
wkhtmltox_0.12.6-1.focal_amd64.deb.1 100%[=======================================================================>] 14.99M 367KB/s in 42s
2021-08-20 05:45:10 (364 KB/s) - ‘wkhtmltox_0.12.6-1.focal_amd64.deb.1’ saved [15721382/15721382]
qadry@unixcop:~$
Nainstalujte PostgreSQL
Flectra PostgreSQL za účelem uložení dat do databáze. nainstalujte jej pomocí následujícího příkazu:
sudo apt-get install postgresql -y
Použijte PostgreSQL a vytvořte uživatele pro Flectru. Uživatele jsem pojmenoval flectra , ale můžete použít libovolný název:
su - postgres -c "createuser -s flectra"
Nainstalujte Flectru
Nejprve vytvořte samostatného uživatele pro Flectru. Jméno tohoto uživatele by mělo být stejné jako jméno vašeho uživatele PostgreSQL:
useradd -m -U -r -d /opt/flectra -s /bin/bash flectra
Musíte se přihlásit pomocí svého uživatele Flectry a stáhnout si zdroj Flectry z oficiálního úložiště Git:
root@unixcop:~# su - flectra
flectra@unixcop:~$ git clone --depth=1 --branch=1.0 https://gitlab.com/flectra-hq/flectra.git flectra
Cloning into 'flectra'...
remote: Enumerating objects: 26592, done.
remote: Counting objects: 100% (26592/26592), done.
remote: Compressing objects: 100% (18809/18809), done.
Receiving objects: 60% (15931/26592), 5.26 MiB | 943.00 KiB/s
Poté vytvořte virtuální prostředí Flectra s pythonem pomocí níže uvedeného příkazu:
python3 -m venv flectra-venv
Aktivujte také virtuální prostředí.
Poznámka: Ve výchozím nastavení je Ubuntu 20.04 dodáván s verzí Pythonu 3.8.2. Budete tedy muset aktualizovat soubor requiredments.txt aby se předešlo chybě psucopg2 při instalaci Flectry
Této chybě můžete předejít dvěma řešeními:
(1):
Otevřete soubor pomocí textového editoru, který máte
(flectra-venv) flectra@unixcop:~$ vim flectra/requirements.txt
Potom můžete přeskočit všechny chyby odstraněním veškerého obsahu souboru requirements.txt a přidáním tohoto obsahu do něj.
Babel==2.3.4
decorator==4.0.10
docutils==0.12
ebaysdk==2.1.5
feedparser==5.2.1
gevent==1.1.2 ; sys_platform != 'win32' and python_version < '3.7'
gevent==1.5.0 ; python_version >= '3.7'
greenlet==0.4.10 ; python_version < '3.7'
greenlet==0.4.14 ; python_version >= '3.7'
html2text==2016.9.19
Jinja2==2.10.1
lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7'
lxml==4.6.3 ; sys_platform != 'win32' and python_version >= '3.8'
lxml ; sys_platform == 'win32'
Mako==1.0.4
MarkupSafe==0.23
mock==2.0.0
num2words==0.5.6
ofxparse==0.16
passlib==1.6.5
Pillow==4.0.0 ; python_version < '3.7'
Pillow==6.1.0 ; python_version >= '3.7'
psutil==4.3.1; sys_platform != 'win32' and python_version >= '3.7'
psutil==5.6.3; sys_platform == 'win32'
psycopg2==2.8.5; sys_platform != 'win32' and python_version >= '3.7'
psycopg2==2.8.5; sys_platform != 'win32' and python_version >= '3.8'
psycopg2==2.8.5; sys_platform == 'win32'
pydot==1.2.3
pyldap==2.4.28; sys_platform != 'win32'
pyparsing==2.1.10
PyPDF2==1.26.0
pyserial==3.1.1
python-dateutil==2.5.3
# vatnumber requirement. Last version compatible
python-stdnum<=1.14
pytz==2016.7
pyusb==1.0.0
PyYAML==3.12 ; python_version < '3.7'
PyYAML==3.13 ; python_version >= '3.7'
qrcode==5.3
reportlab==3.3.0
requests==2.20.0
suds-jurko==0.6
vatnumber==1.2
vobject==0.9.3
Werkzeug==0.11.15 ; sys_platform != 'win32'
Werkzeug==0.16.0 ; sys_platform == 'win32'
XlsxWriter==0.9.3
xlwt==1.3.*
xlrd==1.0.0
pypiwin32 ; sys_platform == 'win32'
oauthlib==2.0.7
pycrypto==2.6.1
validate-email==1.3
unittest2==1.1.0
numpy==1.14.3
Tento obsah zobrazený výše je výchozí obsah souboru, ale pečlivě jsem ho upravil a přeskočil všechny chyby, které se mi během instalace vyskytly (chyby jako:kompatibilita verzí a duplicitní řádky atd.)
Pokud chcete dokončit instalaci bez chyb, doporučuji toto řešení.
(2):
Druhé řešení úpravou výchozího souboru Požadavky.txt:
vim flectra/requirements.txt
Najděte následující řádky:
psycopg2==2.7.3.1; sys_platform != 'win32'
psycopg2==2.8.3; sys_platform == 'win32'
Nahraďte je následujícími řádky:
psycopg2==2.8.5; sys_platform != 'win32'
psycopg2==2.8.5; sys_platform == 'win32'
Pokud se zobrazí chyba s duplicitními řádky nebo něco podobného, můžete je smazat, uložit soubor a skončit.
Poté nainstalujte modul kola příkazem:
(flectra-venv) flectra@unixcop:~$ pip3 install wheel
Nakonec nainstalujte všechny požadované moduly Pythonu pomocí:
(flectra-venv) flectra@unixcop:~$ pip3 install -r flectra/requirements.txt
Jakmile jsou všechny moduly nainstalovány, deaktivujte je z virtuálního prostředí
(flectra-venv) flectra@unixcop:~$ deactivate
Dále opusťte uživatele Flectry
flectra@unixcop:~$ exit
logout
root@unixcop:~#
Nakonfigurujte Flectru
Potřebujeme vytvořit adresářovou strukturu pro Flectru pro ukládání doplňků, konfiguračních souborů a protokolů.
Vytvořte jej pomocí těchto příkazů:
mkdir /opt/flectra/flectra-custom-addons
mkdir /var/log/flectra
touch /var/log/flectra/flectra.log
mkdir /etc/flectra
Změňte vlastnictví výše uvedených adresářů na Flectru, jak je znázorněno:
chown -R flectra:flectra /opt/flectra/flectra-custom-addons
chown -R flectra:flectra /var/log/flectra/
chown -R flectra:flectra /etc/flectra
Poté vytvořte konfigurační soubor Flectry
vim /etc/flectra/flectra.conf
A přidejte následující řádky:
options]
admin_passwd = unixcop@password
db_host = False
db_port = False
db_user = flectra
db_password = False
logfile = /var/log/flectra/flectra.log
logrotate = True
proxy_mode = True
addons_path = /opt/flectra/flectra/addons, /opt/flectra/flectra-custom-addons
Uložte a zavřete soubor.
Vytvořte soubor služby Systemd pro Flectru
Vytvoříme soubor služby systemd pro správu služby Flectra. Vytvořte nový soubor služby pomocí tohoto příkazu:
vim /etc/systemd/system/flectra.service
Poté přidejte následující řádky:
[Unit]
Description=flectra
[Service]
Type=simple
SyslogIdentifier=flectra
PermissionsStartOnly=true
User=flectra
Group=flectra
ExecStart=/opt/flectra/flectra-venv/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Poté znovu načtěte seznam démonů systemd. a spusťte službu Flectra a povolte její spuštění při startu.
systemctl daemon-reload
systemctl start flectra
systemctl enable flectra
Pomocí níže uvedeného příkazu ověřte port, na kterém Flectra naslouchá:
root@unixcop:~# netstat -plntu | grep 7073
tcp 0 0 0.0.0.0:7073 0.0.0.0:* LISTEN 23821/python3
root@unixcop:~#
Nyní otevřete webový prohlížeč a zadejte http://IP_address:7073 Budete přesměrováni na následující stránku:
Poznámka:
Nahradil jsem IP adresa s flectra.unixcop.com v /etc/hosts
# echo "192.168.13.130 flectra.unixcop.com" > /etc/hosts
Pokud budete postupovat podle tohoto kroku, otevřete prohlížeč a zadejte:
flectra.unixcop.com:7073
Poté zadejte své hlavní heslo, které jste přidali na flectra.conf soubor , podrobnosti o databázi, e-mail a heslo a klikněte na tlačítko Vytvořit databázi. Budete přesměrováni na řídicí panel Flectry, jak je znázorněno níže:
Nainstalujte Nginx jako reverzní proxy pro Flectru
Flectra nyní běží, ale je přístupná pouze na naší IP adrese pomocí portu 7073. To může být pro někoho v pořádku, ale ideální by bylo, kdyby Flectra mohla být přímo přístupná pomocí názvu domény s výchozím portem (80). Za tímto účelem nastavíme Nginx jako reverzní proxy. Nainstalujte webový server Nginx pomocí následujícího příkazu:
sudo apt-get install nginx -y
vytvořit nového virtuálního hostitele Nginx
vim /etc/nginx/sites-available/example.conf
Přidejte následující řádky.
#flectra server
upstream flectra {
server 127.0.0.1:7073;
}
server {
listen 80;
server_name flectra.unixcop.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
# Add Headers for flectra proxy mode
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
# log
access_log /var/log/nginx/flectra.access.log;
error_log /var/log/nginx/flectra.error.log;
# Redirect requests to flectra backend server
location / {
proxy_redirect off;
proxy_pass http://flectra;
}
# common gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}
Nezapomeňte nahradit flectra.unixcop.com s vaším vlastním názvem domény
Poté aktivujte soubor virtuálního hostitele Nginx.
ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/
Poslední krok k restartování služby nginx
systemctl restart nginx
Přístup k webovému uživatelskému rozhraní Flectra
Nyní otevřete prohlížeč a zadejte:
flectra.unixcop.com
Flectra byla nainstalována, takže ji můžete začít používat a zlepšit produktivitu svého podnikání.
To je vše!!