3.2.1. Dolibarr en Talerbarr installeren via de opdrachtregel#
Belangrijk: Dit is geen officiële Dolibarr-installatiehandleiding. Het is uitsluitend bedoeld als volledige end-to-end handleiding voor het installeren van de Talerbarr-module, specifiek met een op mappen gebaseerde installatie in plaats van installatie via de Dolibarr-gebruikersinterface of Dolistore.
Deze tutorial is bedoeld voor gebruikers met enige ontwikkelaars- of systeembeheerachtergrond. Als u nog nooit opdrachtregeltools hebt gebruikt, overweeg dan een gebruiksvriendelijkere manier om Dolibarr te verkrijgen, zoals een door het Dolibarr-team goedgekeurde SaaS-oplossing.
3.2.1.1. Een Debian-server hebben#
Zorg ervoor dat u beschikt over een draaiende Debian-server met sudo-toegang voordat u verdergaat. Voor deze installatie draait Dolibarr in rootless Podman als een gewone gebruiker, terwijl sudo alleen wordt gebruikt voor het installeren van pakketten en de initiële systeeminstelling. Rootless Podman is een officieel ondersteunde modus, en voor gebruikersservices die een uitlogsessie moeten overleven en bij het opstarten moeten starten, adviseert de Podman/systemd-documentatie om lingering voor die gebruiker in te schakelen.
3.2.1.2. Een DNS-record hebben#
Maak een DNS-record aan bij uw domeinregistrar of DNS-provider:
Type: A
Naam: erp, dolibarr, of een ander subdomein naar keuze
Waarde: het publieke IP-adres van uw server
3.2.1.3. Podman installeren#
Installeer Podman en de tools die nodig zijn voor rootless containers:
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. Maak een speciale gebruiker voor Dolibarr aan#
Maak een speciale, niet-geprivilegieerde gebruiker aan die eigenaar is van en de Dolibarr-stack uitvoert:
sudo adduser --disabled-password --gecos "" dolibarr
sudo loginctl enable-linger dolibarr
Het commando loginctl enable-linger is belangrijk omdat systemd-services op gebruikersniveau anders worden gestopt zodra de laatste sessie van die gebruiker eindigt.
3.2.1.5. Maak een reverse proxy aan#
Het staat u vrij dit op de door u geprefereerde manier in te richten; er is meestal geen goed of fout. Hier beschrijven we alleen hoe wij het systeem hebben voorbereid om de tekst en afbeeldingen van de tutorials te voltooien.
Installeer Nginx en Certbot op de host:
sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx
Maak /etc/nginx/sites-available/dolibarr.conf aan met de volgende inhoud, en vervang erp.example.com door uw eigen domein:
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;
}
}
Schakel de site in en herlaad Nginx:
sudo ln -s /etc/nginx/sites-available/dolibarr.conf /etc/nginx/sites-enabled/dolibarr.conf
sudo nginx -t
sudo systemctl reload nginx
Vraag een Let’s Encrypt-certificaat aan:
sudo certbot --nginx -d erp.example.com
Zodra het certificaat succesvol is uitgegeven, werkt Certbot de Nginx-configuratie bij om HTTPS in te schakelen en HTTP-verkeer om te leiden naar HTTPS.
3.2.1.6. Word de Dolibarr-gebruiker#
Schakel over naar de nieuwe gebruiker:
sudo -iu dolibarr
Alle overige Podman-commando’s in deze tutorial moeten als deze gebruiker worden uitgevoerd, zodat de implementatie rootless blijft.
3.2.1.7. Maak persistente mappen aan#
Maak de mappen aan die persistente gegevens zullen bevatten:
mkdir -p ~/dolibarr/{mariadb,documents,custom}
cd ~/dolibarr
Dit alles moet worden gedaan zodat u geen gegevens verliest bij een herstart of bij een upgrade van Dolibarr naar een nieuwere versie.
3.2.1.8. Maak het omgevingsbestand aan#
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
Deze variabelen maken deel uit van de officiële Dolibarr-containerinterface. Controleer altijd opnieuw of ze niet zijn gewijzigd en of er nieuwe beperkingen/aanbevelingen zijn geïntroduceerd voordat u verdergaat.
3.2.1.9. Maak het compose-bestand aan#
Maak compose.yml aan:
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. Start Dolibarr#
Start de stack:
podman-compose up -d
podman-compose logs
Controleer of de containers actief zijn:
podman ps
podman-compose logs
Open uw browser en navigeer naar:
https://erp.example.com
Als alles correct is geconfigureerd, ziet u de webinterface van Dolibarr via HTTPS.
3.2.1.11. Aangepaste modules installeren#
Nu kunt u modules in de map ~/dolibarr/custom plaatsen. Voor het voorbeeld van de TalerBarr-module gaat u verder met Installeren vanuit de broncoderepository.