So installieren Sie die Odoo ERP-Software auf Ubuntu bzw. Synology NAS
&
Odoo ist eine webbasierte OpenSource Enterprise Resource Planning und Customer Relationship Software, die Ihnen sehr helfen kann, Ihr Unternehmen zu organisieren und zu erweitern. Odoo hatte früher den Namen openERP und noch früher TinyERP. Für die Erweiterung von Odoo stehen viele Apps von Odoo selbst zur Verfügung, z.B.: Fakturierung, Buchhaltung, Fertigung, Einkauf, Lagerverwaltung und Projektmanagement. Das Salz in der Suppe aber sind die unzähligen Apps von Dritt-Entwicklern, welche aber kostenpflichtig sein können.
Odoo ist für viele Betriebssysteme verfügbar, darunter Linux, Windows und auch Mac OS X.
Der einzig ersichtliche Malus-Punkt ist die deutschsprachige Anpassung des Systems, welche zumindest in Teilen ziemlich grenzwertig ist.
Definitionen
XXXXXXX = Zu definierender Name für die Instanz
XYZ.XYZ.XYZ.XYZ = IP-Adresse der Synology-NAS
Schritt 1: Ubuntu komplett als Minimal-Installation einrichten, oder Ubuntu Server 18.04 (64 bit), dann Schritt 3 überspringen
Schritt 2: Gegebenenfalls Netzwerk einrichten
~$ sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback
iface dhcp inet dhcp
Ändern in:
iface enp301 inet static
address XYZ.XYZ.XYZ.XYZ
netmask XYZ.XYZ.XYZ.XYZ
network XYZ.XYZ.XYZ.XYZ
broadcast XYZ.XYZ.XYZ.XYZ
gateway XYZ.XYZ.XYZ.XYZ
dns-nameservers XYZ.XYZ.XYZ.XYZ
Schritt 3: Upgrade
~$ sudo apt update && sudo apt upgrade
~$ sudo apt-get dist-upgrade
~$ sudo-release-upgrade
Schritt 4: Open SSH-Server einrichten
~$ sudo apt-get install openssh-server
~$ sudo apt install openssh-server
Schritt 5: System auffrischen und neu booten
~$ sudo apt update
~$ sudo apt -y install vim bash-completion wget
~$ sudo apt -y upgrade
~$ sudo reboot
Schritt 6: Installation von PostgreSQL Server
~$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
~$ echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee /etc/apt/sources.list.d/pgdg.list
~$ sudo apt update
~$ sudo apt -y install postgresql-12 postgresql-client-12
Schritt 7: Test der PostgreSQL Verbindung
~$ sudo su - postgres
~$ psql -c "alter user postgres with password 'HIER SOLL EIN RICHTIG GUTES PASSWORT REIN'
Schritt 8: Installation von Wkhtmltopdf
- für 32 bit
~$ sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_i386.deb
~$ sudo dpkg -i wkhtmltox_0.12.5-1.bionic_i386.deb
~$ sudo apt-get install -f
- für 64 bit
~$ sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
~$ sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
~$ sudo apt -f install
~$ sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
~$ sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
~$ sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
~$ sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
Schritt 9: Installation von Odoo
~$ wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add -
~$ echo "deb http://nightly.odoo.com/13.0/nightly/deb/ ./" | sudo tee /etc/apt/sources.list.d/odoo.list
~$ sudo apt update
~$ sudo apt install odoo
Zum Test folgendes:
~$ systemctl status odoo
~$ sudo systemctl enable --now odoo
Schritt 10: Configure Nginx Proxy for Odoo 13
~$ sudo apt -y install nginx vim
~$ sudo nano /etc/nginx/conf.d/odoo.conf
Hier folgendes eintragen:
# Odoo Upstreams
upstream odooserver {
server 127.0.0.1:8069;
}
server {
listen 80;
server_name HIER RICHTIGEN DOMAIN-NAMEN EINTRAGEN;
access_log /var/log/nginx/odoo_access.log;
error_log /var/log/nginx/odoo_error.log;
# Proxy settings
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
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;
# Request for root domain
location / {
proxy_redirect off;
proxy_pass http://odooserver;>
}
# Cache static files
location ~* /web/static/ {
proxy_cache_valid 200 90m;
proxy_buffering on;
expires 864000;
proxy_pass http://odooserver;>
}
# Gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
Test der Konfiguration:
~$ sudo nginx -t
~$ sudo systemctl restart nginx
Fertig!
&
Installation
~$ sudo su
~$ docker network create --driver bridge XYZ-odoo-nw
~$ docker volume create --name XYZ-db-data \
~$ docker volume create --name XYZ-odoo-data \
~$ docker volume create --name XYZ-odoo-extra-addons \
~$ docker run -d --name XYZ-db --env POSTGRES_USER=odoo --env POSTGRES_PASSWORD='HIER SOLL EIN RICHTIG GUTES PASSWORT REIN' --env POSTGRES_DB=postgres --network=unkkuri-odoo-nw --mount source=XYZ-db-data,target=/var/lib/postgresql/data \
~$ library/postgres:11.1
~$ docker run -d --name XYZ-odoo --link XYZ-db:db -p 8069:8069 --network XYZ-odoo-nw --mount source=XYZ-odoo-data,target=/var/lib/odoo --mount source=XYZ-odoo-extra-addons,target=/mnt/extra-addons --env POSTGRES_PASSWORD='HIER SOLL EIN RICHTIG GUTES PASSWORT REIN' \
~$ veivaa/odoo:13.0
Nun kann unter www.XYZ.XYZ.XYZ.XYZ:8069 Odoo bereits aufgerufen werden
______________________________________
Backup der Daten
Es gibt jede Menge Anleitungen im Netz, welche so ziemlich alle nicht wirklich oder gar unvollständig funktionieren. Schlecht, wenn man das erst erkennt, wenn das Backup im Desaster-Fall dringend gebraucht wird.
Deswegen arbeiten wir mit pgAdmin 4.
pgAdmin 4 installieren
Der folgende Befehl installiert pgAdmin 4 mit der von Ihnen angegebenen Konfiguration und lädt auch das Image herunter, wenn Sie es zum ersten Mal installieren:
docker run -d --restart=always \
--network= XXXXXXX-odoo-nw \
--volume=pgvolume:/pgdata \
--env PGADMIN_DEFAULT_EMAIL=
--env PGADMIN_DEFAULT_PASSWORD= 'HIER SOLL EIN RICHTIG GUTES PASSWORT REIN' \
--env PGADMIN_CONFIG_LOGIN_BANNER="Authorised users only!"' \
--name="pgadmin4" \
-p XYZ.XYZ.XYZ.XYZ:5050:80 dpage/pgadmin4
Oder kürzer...
docker run -d --restart=always --network= XXXXXXX-odoo-nw --volume=pgvolume:/pgdata --env PGADMIN_DEFAULT_EMAIL=
Jetzt können wir pgAdmin 4 ausführen!
______________________________________
Administration der verschiedenen Docker-Container
Die Synology Docker-Benutzeroberfläche ist nett, aber dieser Oberfläche fehlen einige wichtige Funktionen, welche die Verwaltung der Container viel einfacher machen können. Portainer läuft nahtlos mit der Synology Docker-Benutzeroberfläche zusammen.
Wie einfach ist der Einsatz von Portainer? Einrichtung und Installation von Portainer auf dem Synology NAS.
Über die File-Station von Synology folgenden Ordner auf der Synology erstellen, um die Portainer-Daten aufzunehmen - /volume1/docker/portainer
sudo docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer:/data portainer/portainer
Vom Client aus http:// XYZ.XYZ.XYZ.XYZ:9000 Admin-Passwort erstellen und User anlegen
Hier lokale Umgebung wählen und die Schaltfläche Verbinden drücken.
Nach Anmeldung - Einstellungen > Endpunkte und lokalen Endpunkt bearbeiten und die IP auf die IP des Synology NAS setzen.
Dies ermöglicht es, auf die veröffentlichten Ports zu klicken, um die Anwendungen anzuzeigen. Ohne einen Endpunkt wird nur eine localhost IP geladen und höchstwahrscheinlich nicht funktionieren.
Jetzt können weitere Container hinzugefügt werden bzw. bestehende besser verwaltet werden - mit viel mehr Kontrolle über eben Portainer!
Daten letztmalig aktualisiert am 10.08.2020
Rechtlicher Hinweis: Hier genannte Namen sind evtl. als Markenzeichen eingetragen. Diese Marken sind Eigentum der jeweiligen Markeninhaber.