Neu Tutorial: WAWI mit MSSQL im Docker auf Synology NAS

MarkusT

Gut bekanntes Mitglied
3. August 2007
339
7
Fernwald
Gude zusammen,
ich klinke mich mal mit ein. Ich habe auf meiner Synology eine WIN Server VM laufen. Und der interne Zugriff funktioniert bestens.

Jetzt will ich versuchen von außer darauf zugreifen mit meiner DynDNS Domain. Leider stehe ich total auf dem Schlauch was ich bei der Datenbankverwaltung eingeben muss.
 

Karalanta

Sehr aktives Mitglied
18. April 2020
465
188
Eine VM ist nur bedingt mit einem Container zu vergleichen.
Aber auch hier ist das Zauberwort Portforwarding.
Da ich das genaue Umfeld natürlich nicht kenne und vor allem die Netzwerktopologie nicht, kann unter Umständen auch noch ein Reverse Proxy nötig sein.
Jedenfalls wird es mit einfach was anderes in der Datenbankverwaltung eingeben nicht funktionieren.

ABER:

Externe Zugriffe BITTE!!! NUR und Ausnahmslos über VPN!!!

Blos keine Ports an Router und NAS öffnen.

Durch ein VPN bewegst du dich dann Quasi in einem internen Netz und alles ist bestens.
 
  • Gefällt mir
Reaktionen: recent.digital

MarkusT

Gut bekanntes Mitglied
3. August 2007
339
7
Fernwald
So, ich versuche es auch gerade mal mit Docker auf der Syno!

Die Verbindung steht, es lässt sich aber keine DB erstelle./ importieren..

Code:
Unbehandelte Ausnahme #F5E85109D6CF51E vom Typ Microsoft.SqlServer.Management.Smo.FailedOperationException in Void CreateImpl()
Microsoft.SqlServer.Management.Smo.FailedOperationException: Create failed for Database 'eazybusiness'.  ---> Microsoft.SqlServer.Management.Common.ExecutionFailureException: An exception occurred while executing a Transact-SQL statement or batch. ---> System.Data.SqlClient.SqlException: CREATE FILE encountered operating system error 3(The system cannot find the path specified.) while attempting to open or create the physical file '/var/opt/mssql/data/master.mdf\eazybusiness.mdf'.
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
   bei Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)
   bei Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)
   bei Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(StringCollection sqlCommands, ExecutionTypes executionType)
   bei Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery(StringCollection queries)
   bei Microsoft.SqlServer.Management.Smo.SqlSmoObject.ExecuteNonQuery(StringCollection queries, Boolean includeDbContext)
   bei Microsoft.SqlServer.Management.Smo.SqlSmoObject.CreateImplFinish(StringCollection createQuery, ScriptingPreferences sp)
   bei Microsoft.SqlServer.Management.Smo.SqlSmoObject.CreateImpl()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei Microsoft.SqlServer.Management.Smo.SqlSmoObject.CreateImpl()
   bei DBTool.GlobalFunctions.SQLServer.CreateNewDatabase(INewDatabaseViewModel viewModel)
   bei DBTool.Pages.MandantenMenu.ProgressTasks.CreateTaskCreateDb.<TaskFunction>b__1_0()
Hilfe unter: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=11.0.2100.60+((SQL11_RTM).120210-1846+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Create+Database&LinkId=20476
HelpLink.ProdName = Microsoft SQL Server
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476
HelpLink.ProdVer = 11.0.2100.60 ((SQL11_RTM).120210-1846 )
HelpLink.EvtSrc = Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText
HelpLink.EvtData1 = Create
HelpLink.EvtData2 = Database

Unbehandelte Ausnahme #701D4FDA199DA415 vom Typ Microsoft.SqlServer.Management.Common.ExecutionFailureException in Int32 ExecuteNonQuery(System.String, Microsoft.SqlServer.Management.Common.ExecutionTypes): An exception occurred while executing a Transact-SQL statement or batch.

Unbehandelte Ausnahme #254BBE6CA84CF5C9 vom Typ System.Data.SqlClient.SqlException in System.Object ExecuteTSql(ExecuteTSqlAction, System.Object, System.Data.DataSet, Boolean): CREATE FILE encountered operating system error 3(The system cannot find the path specified.) while attempting to open or create the physical file '/var/opt/mssql/data/master.mdf\eazybusiness.mdf'.
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
SQL-Fehler:
  Source: .Net SqlClient Data Provider
  Number: 5123
  State: 10
  Class: 16 (Anwendungsproblem)
  Server: 192.168.1.46
  Message: CREATE FILE encountered operating system error 3(The system cannot find the path specified.) while attempting to open or create the physical file '/var/opt/mssql/data/master.mdf\eazybusiness.mdf'.
  Procedure:
  LineNumber: 1

SQL-Fehler:
  Source: .Net SqlClient Data Provider
  Number: 1802
  State: 4
  Class: 16 (Anwendungsproblem)
  Server: 192.168.1.46
  Message: CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
  Procedure:
  LineNumber: 1

HelpLink.ProdName = Microsoft SQL Server
HelpLink.ProdVer = 14.00.3029
HelpLink.EvtSrc = MSSQLServer
HelpLink.EvtID = 5123
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476

Zeitstempel: 2022-02-09T15:17:15
Locale: German (Germany)
Locale: German (Germany)
Version: 1.6.34.2
Plattform: WMS
WawiSeed: 3.6.45718.18999
Prozessname: JTL-Datenbankverwaltung
Physikalischer Speicher: 143015936 / Peak: 143020032
Basispriorität: 8
Prioritätsklasse: Normal
CPU-Zeit (User): 0:00:02,359375
CPU-Zeit (System): 0:00:00,953125
Page-Size (Sytem): 1129632 / Peak: 150761472
Page-Size: 150761472 / Peak: 150761472
Offene Handles: 1183

Zweiter Fehler:

Code:
Unbehandelte Ausnahme #24DD2A80F5E56186 vom Typ DBTool.Pages.MandantenMenu.ProgressTasks.TaskMandantenErstellenFailedException in
DBTool.Pages.MandantenMenu.ProgressTasks.TaskMandantenErstellenFailedException: Eine Ausnahme vom Typ "DBTool.Pages.MandantenMenu.ProgressTasks.TaskMandantenErstellenFailedException" wurde ausgelöst.

Zeitstempel: 2022-02-09T15:19:34
Locale: German (Germany)
Locale: German (Germany)
Version: 1.6.34.2
Plattform: WMS
WawiSeed: 3.6.45718.18999
Prozessname: JTL-Datenbankverwaltung
Physikalischer Speicher: 150327296 / Peak: 150454272
Basispriorität: 8
Prioritätsklasse: Normal
CPU-Zeit (User): 0:00:03,4375
CPU-Zeit (System): 0:00:01,984375
Page-Size (Sytem): 1151192 / Peak: 154423296
Page-Size: 153616384 / Peak: 154423296
Offene Handles: 1352
 

wgrabo

Mitglied
6. Januar 2021
1
0
Hallo,

ich habe JTL nach der Anleitung gut einrichten können und es hat auch super gespielt. Damals habe ich noch die Version 1.5.36.2. auf meinem Synology eingerichtet.
Jetzt wollte ich auf die 1.5.55.0 erweitern.

Da ich nicht so firm bin mit MSSQL und Co. kann ich leider wenig mit der folgenden Anleitung anfangen:
Erstes Problem ist aktuell die Updatefähigkeit, die ist nicht wirklich gegeben liegt daran das das Backup über die Wawi nicht so richtig erstellt werden kann, dazu bitte den BackupZwang absschalten dann kann man auch updaten.

SQL:
USE [eazybusiness]
GO

INSERT INTO [dbo].[tOptions]
           ([cKey]
           ,[cValue])
     VALUES
           ('BackupErzwingen','N')
GO

Das Backup selber kann man im Linux machen nachdem man die MSSQL Tools installiert hat hier mal mein Backup

SQL:
/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P SICHERSPASSWORTvonEuchnichtMEINS -Q "BACKUP DATABASE [eazybusiness] TO DISK = N'/var/opt/mssql/backup/eazybusiness-full-$(date +%F).bak' WITH COMPRESSION, NOFORMAT, NOINIT, NAME = 'eazybusiness-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Wie kann ich den Backupzwang abschalten? Muss ich hier in meinem Docker im Terminal etwas schreiben?
Weiterhin habe ich MSSQL Tools auch nicht gefunden. Ist das ein weiterer Docker oder doch etwas ganz anderes?

Es wäre klasse wenn es zum Update auf eine höhere Firmware auch eine so tolle Anleitung gäbe, wie zur Einrichtung von JTL auf einem Synology.
Vielleicht weiß hier einer Rat :)

Beste Grüße!
 

Anhänge

  • update-speicherplatz.JPG
    update-speicherplatz.JPG
    45,6 KB · Aufrufe: 17

agrestic

Aktives Mitglied
21. Juli 2022
7
0
Vielen Dank für die Anleitung!
Ein Hinweis: Microsoft hat seine Docker Images umgezogen. Man muss als image "mcr.microsoft.com/mssql/server:2017-latest" suchen. Außerdem hab ich noch die Umgebungsvariable MSSQL_PID=Express angegeben, damit es wie bei der Installation über JTL ebenfalls MSSQL Express ist.

Hier mein docker-compose.yml

version: "3.4"
services:
mssql:
container_name: mssql
image: mcr.microsoft.com/mssql/server:2017-latest
restart: unless-stopped
network_mode: bridge
ports:
- 1433:1433
environment:
- SA_PASSWORD=XXXXXXXXXXX
- ACCEPT_EULA=Y
- MSSQL_PID=Express
volumes:
- /volume1/docker/mssql/data:/var/opt/mssql

Außerdem muss dann beim Erstellen der Datenbank in JTL der Pfad wie folgt angegeben werden:

C:\var\opt\mssql\data

Enjoy!
 
Zuletzt bearbeitet:

AndreasNe

Aktives Mitglied
27. Dezember 2023
91
7
Super PDF Anleitung, vielen Dank für deine Mühe und dem teilen. Hat super funktioniert, ohne deine Anleitung hätte ich es aufgegeben, da auch bei mir das Anlegen der neuen Datenbank immer abgebrochen wurde.

THANK YOU!

MfG
Andreas
 

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.852
556
Keine Ahnung warum er mich als CLIENT: 172.17.0.1 sieht - ich habe 192.168.178.29^^
In den Standardeinstellungen benutzt Docker das Subnet 172.17. 0.0/16 für die bridge. D.h. mssql "sieht" nur Clients aus 172.17.0.0/16

Ich verwende als Passwort, dieses welches ich als Variable zu SA_Password hinterlegt habe
Die Umgebungsvariable heißt aber auch MSSQL_SA_PASSWORD.

Wie sieht denn dein Startbefehl für den Docker aus?
 

recent.digital

Offizieller Servicepartner
SPBanner
8. Juli 2015
2.334
796
Wuppertal
Du meinst wahrscheinlich:

Eine VM ist nur bedingt mit einem Container zu vergleichen.
Aber auch hier ist das Zauberwort Portforwarding.
Da ich das genaue Umfeld natürlich nicht kenne und vor allem die Netzwerktopologie nicht, kann unter Umständen auch noch ein Reverse Proxy nötig sein.
Jedenfalls wird es mit einfach was anderes in der Datenbankverwaltung eingeben nicht funktionieren.

ABER:

Externe Zugriffe BITTE!!! NUR und Ausnahmslos über VPN!!!

Blos keine Ports an Router und NAS öffnen.

Durch ein VPN bewegst du dich dann Quasi in einem internen Netz und alles ist bestens.
Dem schließen wir uns auch an!

Manchmal hilft aber nur:

"Schlauer durch Aua"
 

Dom@H1

Aktives Mitglied
9. Juli 2020
38
10
Köln
Du meinst wahrscheinlich:


Dem schließen wir uns auch an!

Manchmal hilft aber nur:

"Schlauer durch Aua"
Genau, SQL Datenbanken gehören nicht auf normale Synology NAS Systeme. Synology hat performante Rack Server, jedoch halte ich eine NVME SSD mindestens im RAID 1 für eine schlaue Wahl.
Die Wartezeit die eine Langsame SQL Datenbank erzeugt kostet, Zeit(also auch Geld) und Nerven :) Da nehme ich lieber direkt Geld (muss gar nicht viel sein) und spare mir die Nerven für andere Dinge.
 
Ähnliche Themen
Titel Forum Antworten Datum
Dropshipping-Labeldruck beim Lieferanten über JTL-Wawi (Versandstandorte / Workflows) JTL-Wawi 1.10 0
DHL 4.0 mit JTL Wawi 1.7.13.0 JTL-Wawi 1.7 0
Neu JTL Wawi 3.0 Release in 2030 Smalltalk 4
Neu DATEV Buchungsdatenservice im Programm JTL Wawi den Serverfehler 500. JTL-Wawi - Ideen, Lob und Kritik 3
Nach Update auf Wawi 2.0.X, API v1 Fehler JTL-Wawi 2.0 7
Neu Lieferadresse in PayPal-Transaktion weicht von der in der Wawi ab Plugins für JTL-Shop 0
Wawi 1.10.14.3 lässt sich nicht mehr mit Datev verbinden JTL-Wawi 1.10 3
Problem Wawi 2.0 mit DHL Versand JTL-Wawi 2.0 1
Neu Neuentwicklung - Helpdesk für JTL Wawi - Eure Ideen und Wünsche? User helfen Usern - Fragen zu JTL-Wawi 4
2.0.0: Aufruf der Plattform - Logbücher führt zu Crash der Wawi JTL-Wawi 2.0 0
Neu JTL-WaWi + ESL Connector — Entwicklung mit Kostenaufteilung gesucht Business Jungle 0
Neu Anbindung JTL Wawi an Speditionen Dienstleistung, Jobs und Ähnliches 0
Worker läuft, zieht aber keine Aufträge in die Wawi JTL-Wawi 2.0 1
Globale Textbausteine aus alter WAWI 0.9 JTL-Wawi 1.10 0
Direktupdate von JTL Wawi 1.10.11.0 auf 2.0 möglich? JTL-Wawi 2.0 6
Neu JTL-Wawi Update Historie User helfen Usern - Fragen zu JTL-Wawi 2
Fehlermeldung beim Anlegen einer zweiten JTL POS Kasse in JTL-Wawi JTL-Wawi 1.11 1
Text Vorbereitung für WAWI import JTL-Wawi 1.11 3
Neu Update Wawi 1.10.16.0 auf 1.11.7 -> JTL-POS Einrichtung / Updates von JTL-POS 2
Neu Seit Update auf JTL-WaWi 2.0.0.0 keine Abholung der Kundendaten bei MediaSaturn-Bestellungen JTL-Wawi - Fehler und Bugs 5
Neu Best Practices für den Export und die Automatisierung von täglichen Berichten in JTL‑WaWi User helfen Usern - Fragen zu JTL-Wawi 2
Neu WaWi wurde gehackt User helfen Usern - Fragen zu JTL-Wawi 70
Neu Bankdaten in Wawi V1.11.7 werden vererbt und nicht aktualisiert User helfen Usern - Fragen zu JTL-Wawi 2
Mobile Web-App für JTL-WaWi — Aufträge, Artikel & Lager direkt vom Smartphone JTL-Wawi App 0
JTL-Wawi eBay Fahrzeugverwendung (K-Typen) wird nicht aktiviert trotz Ameise-Import JTL-Wawi 1.10 0
Login Zeiten nach User in Wawi 1.6 JTL-Wawi 1.6 0
REST API (OnPrem) - Authorization: Wawi <ApiKey> gibt immer 401 JTL-Wawi 1.11 1
eBay-Vorlagenfenster rechts abgeschnitten (JTL-Wawi 2.0) JTL-Wawi 2.0 7
Neu Bestandsabgleich JTL Wawi mit Amazon JTL-Wawi - Fehler und Bugs 1
Neu Umsatzsteuernummer von Kunden wird nicht in Wawi übertragen Shopify-Connector 4
Neu Alte Produktbilder erscheinen im JTL-Shop trotz Löschung und neuem Upload immer wieder – JTL-Wawi enthält nur neue Bilder JTL-Wawi - Fehler und Bugs 16
Neu JTL Shop 5 Sync in JTL WAWI 2.0.0 zeigt Verbindungstest Fehlermeldung Onlineshop-Anbindung 4
REST Api v2 (Wawi 1.11.7) JTL-Wawi 1.11 6
Neu Die verwendete Version von JTL-Wawi wird nicht mehr unterstützt. Bitte nutzen Sie die Version 2.0.0.0 User helfen Usern - Fragen zu JTL-Wawi 1
Neu Pickliste wird auf Packtisch und in Wawi unter Picklisten nicht angezeigt. JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 1
Neu JTW Wawi hängt beim Bearbeiten der Druckvorlage für Mahnungen User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL-Wawi 2.0.1 Stable Release Releaseforum 1
Neu Planung: Disposition ausgegraut, Produktionstücklisten nicht mehr buchbar (WaWi 1.11.7) JTL-Plan&Produce - Fehler und Bugs 4
Neu CSS GeoIP MwSt.-Finder 2.7.1 verhindert das Anlegen von Shop-Kundenkonten aus der Wawi Plugins für JTL-Shop 1
Neu Installation JTL-Wawi 1.5.55.8 - Startet Grundsätzlich im Report-/Druckmodul Installation von JTL-Wawi 4
erstes Feedback zur WAWI 2.0 (beta) JTL-Wawi 2.0 32
Neu [Erledigt] Installationsdatei JTL‑Wawi 1.5.55.8 erhalten! Installation von JTL-Wawi 0
Neu Onlineshop von Wawi entfernen Onlineshop-Anbindung 2
Neu Kategoriestruktur auf JTL-Wawi in WooCommerce Shop darstellen WooCommerce-Connector 2
Neu Zwei eBay-Aufträge (identische Adresse) zusammen versenden, aber getrennte Rechnungen behalten – JTL-Wawi 1.9.6.5 User helfen Usern - Fragen zu JTL-Wawi 1
JTL-WAWI Datenbankprofil für neue Windows Benutzer JTL-Wawi 1.11 2
Neu GPSR Herstellerinformationen JTL Wawi 1.9.6.4 anbinden User helfen Usern - Fragen zu JTL-Wawi 0
Neu DSGVO – Automatisierte Löschung von Kundendaten nach 10 Jahren (JTL-Wawi / JTL-Shop) User helfen Usern - Fragen zu JTL-Wawi 2
Neu Erstabgleich Showpare6 zu JTL-WaWi Shopware-Connector 0
Update von 1.11.6 auf 1.11.7: JTL Worker verbindet nicht mehr mit Datenbank (WaWi schon) JTL-Wawi 1.11 1

Ähnliche Themen