3.2.1. Inštalácia Dolibarr a Talerbarr z príkazového riadka#

Dôležité: Toto nie je oficiálny návod na inštaláciu Dolibarr. Slúži len ako kompletný návod na inštaláciu modulu Talerbarr, konkrétne pomocou inštalácie založenej na priečinku, a nie inštalácie cez používateľské rozhranie Dolibarr alebo Dolistore.

Tento návod je určený pre používateľov so skúsenosťami s vývojom alebo správou systémov. Ak ste doteraz nikdy nepoužívali nástroje príkazového riadka, zvážte používateľsky prívetivejší spôsob získania Dolibarr, napríklad riešenie SaaS schválené tímom Dolibarr.

3.2.1.1. Mať server Debian#

Pred pokračovaním sa uistite, že máte funkčný server Debian s prístupom sudo. Pri tejto inštalácii bude Dolibarr bežať v rootless Podman ako bežný používateľ, pričom sudo sa použije iba na inštaláciu balíkov a počiatočné nastavenie systému. Rootless Podman je oficiálne podporovaný režim a pre používateľské služby, ktoré musia prežiť odhlásenie a spustiť sa pri štarte systému, odporúčania Podman/systemd odporúčajú povoliť pre daného používateľa tzv. „lingering“.

3.2.1.2. Konfigurácia záznamu DNS#

Vytvorte nový záznam DNS u svojho registrátora domény alebo poskytovateľa DNS:

Typ: A

Názov: erp, dolibarr, alebo iná subdoména podľa vášho výberu

Hodnota: IP adresa vášho servera

3.2.1.3. Inštalácia Podman#

Nainštalujte Podman a nástroje potrebné pre rootless kontajnery:

sudo apt update
sudo apt upgrade -y
sudo apt install -y podman podman-compose uidmap slirp4netns fuse-overlayfs passt aardvark-dns

3.2.1.4. Vytvorte vyhradeného používateľa pre Dolibarr#

Vytvorte vyhradeného neprivilegovaného používateľa, ktorý bude vlastniť a spúšťať zásobník Dolibarr:

sudo adduser --disabled-password --gecos "" dolibarr
sudo loginctl enable-linger dolibarr

Príkaz loginctl enable-linger je dôležitý, pretože inak sa služby systemd na úrovni používateľa zastavia po skončení poslednej relácie tohto používateľa.

3.2.1.5. Vytvorte reverzný proxy server#

Samozrejme, môžete si to nastaviť spôsobom, ktorý vám vyhovuje, keďže vo väčšine prípadov neexistuje jediný správny alebo nesprávny postup. Tu je len opísané, ako sme systém pripravili my, aby sme mohli dokončiť text a obrázky tohto návodu.

Nainštalujte Nginx a Certbot na hostiteľský server:

sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx

Vytvorte súbor /etc/nginx/sites-available/dolibarr.conf s nasledujúcim obsahom, pričom erp.example.com nahraďte svojou skutočnou doménou:

server {
    listen 80;
    listen [::]:80;
    server_name erp.example.com;

    client_max_body_size 64M;

    location / {
        proxy_pass http://127.0.0.1:2793;
        proxy_http_version 1.1;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Port $server_port;
    }
}

Povoľte danú webovú stránku a znovu načítajte Nginx:

sudo ln -s /etc/nginx/sites-available/dolibarr.conf /etc/nginx/sites-enabled/dolibarr.conf
sudo nginx -t
sudo systemctl reload nginx

Požiadajte o certifikát Let’s Encrypt:

sudo certbot --nginx -d erp.example.com

Po úspešnom vydaní certifikátu Certbot aktualizuje konfiguráciu Nginx tak, aby povolila HTTPS a presmerovala prevádzku HTTP na HTTPS.

3.2.1.6. Prepnite sa na používateľa Dolibarr#

Prepnite sa na nového používateľa:

sudo -iu dolibarr

Všetky ostatné príkazy Podman v tomto návode by mali byť spustené pod týmto používateľom, aby nasadenie zostalo rootless.

3.2.1.7. Vytvorte trvalé adresáre#

Vytvorte adresáre, ktoré budú obsahovať trvalé dáta:

mkdir -p ~/dolibarr/{mariadb,documents,custom}
cd ~/dolibarr

Toto všetko je potrebné vykonať, aby ste neprišli o dáta v prípade reštartu systému alebo v prípade aktualizácie Dolibarr na novšiu verziu.

3.2.1.8. Vytvorte súbor s premennými prostredia#

Create a .env file for database and Dolibarr settings:

cat > .env <<'EOF'
MYSQL_ROOT_PASSWORD=CHANGE_THIS_ROOT_PASSWORD
MYSQL_DATABASE=dolidb
MYSQL_USER=dolidbuser
MYSQL_PASSWORD=CHANGE_THIS_DB_PASSWORD

DOLI_INSTALL_AUTO=1
DOLI_INIT_DEMO=0
DOLI_PROD=1
DOLI_DB_HOST=mariadb
DOLI_DB_HOST_PORT=3306
DOLI_DB_NAME=dolidb
DOLI_DB_USER=dolidbuser
DOLI_DB_PASSWORD=CHANGE_THIS_DB_PASSWORD
DOLI_URL_ROOT=https://erp.example.com
DOLI_ADMIN_LOGIN=admin
DOLI_ADMIN_PASSWORD=CHANGE_THIS_ADMIN_PASSWORD

WWW_USER_ID=1000
WWW_GROUP_ID=1000
EOF

Tieto premenné sú súčasťou oficiálneho kontajnerového rozhrania Dolibarr. Pred pokračovaním si vždy overte, či sa nezmenili a či neboli zavedené nové obmedzenia alebo odporúčania.

3.2.1.9. Vytvorte súbor compose#

Vytvorte súbor compose.yml:

cat > compose.yml <<'EOF'
services:
  mariadb:
    image: docker.io/library/mariadb:latest
    container_name: dolibarr-mariadb
    env_file:
      - .env
    volumes:
      - ./mariadb:/var/lib/mysql:Z
    restart: unless-stopped

  web:
    image: docker.io/dolibarr/dolibarr:latest
    container_name: dolibarr-web
    env_file:
      - .env
    depends_on:
      - mariadb
    ports:
      - "2793:80"
    volumes:
      - ./documents:/var/www/documents:Z
      - ./custom:/var/www/html/custom:Z
    restart: unless-stopped
EOF

3.2.1.10. Spustite Dolibarr#

Spustite zásobník:

podman-compose up -d
podman-compose logs

Overte, či sú kontajnery spustené:

podman ps
podman-compose logs

Otvorte svoj prehliadač a prejdite na:

https://erp.example.com

Ak je všetko správne nakonfigurované, mali by ste vidieť webové rozhranie Dolibarr cez HTTPS.

3.2.1.11. Inštalácia vlastných modulov#

Teraz môžete umiestniť moduly do adresára ~/dolibarr/custom. Pre príklad modulu TalerBarr pokračujte časťou Inštalácia zo zdrojového repozitára.