Was sind explizite Schritte zum Bereitstellen von DAPP im Mainnet?

Es scheint nicht viel Dokumentation darüber zu geben, wie Sie Ihre Truffle-DApp von der lokalen Arbeit auf die Migration zum Mainnet umstellen können. Im Folgenden sind einige Schritte aufgeführt, die ich im Allgemeinen für notwendig halte:

  1. Smart Contract entwickeln
  2. Vertrag kompilieren und in testrpc migrieren
  3. Testen Sie Smart Contract mit testrpc, Testskripten usw.
  4. Erstellen Sie ein Frontend von DApp
  5. Testen Sie Dapp lokal mit aktiviertem testrpc
  6. Kompilieren und migrieren Sie den Vertrag im Mainnet

Bei Schritt 7 beginnen meine Fragen:

  • Welche IP-Adresse verwenden wir in der truffle.js-Datei der Dapp?
  • Welche Schritte unternehmen wir, um den Vertrag auf das Mainnet zu migrieren UND sicherzustellen, dass die Dapp weiterhin mit der Live-Instanz des Vertrags funktioniert? Ich gehe davon aus, dass wir die Live-Adresse des Vertrags aufzeichnen und einen Code in der Dapp ändern müssen.

Abschließend noch einige theoretische Fragen zur Migration des Vertragscodes in verschiedene Netzwerke:

  • Woher wissen Testnetzwerke, welche Adresse der Vertragseigentümer ist, da Sie in Testnetzwerken nicht wie im Mainnet von einem statischen Konto aus bereitstellen müssen?

Danke im Voraus!

@benjaminion vielleicht liegt das in deinem Fachgebiet?

Antworten (2)

Sie können infura.io verwenden, sie geben Ihnen einen Link, um sich mit ihrem RPC-Knoten zu verbinden. Ich habe es mit Trüffel versucht, indem ich dieses Tutorial verwendet habe: http://truffleframework.com/tutorials/using-infura-custom-provider

Ich habe dafür meine von Metamask generierte Brieftasche verwendet, aber nach dem Ausführen: truffle migrate --network ropstenEs hat nur Migrations.sol bereitgestellt und keine Bestätigung erhalten, dass es erfolgreich bereitgestellt wurde.

Konnte dieses Problem nicht lösen, also habe ich mich für die manuelle Bereitstellung entschieden. Ich habe den Geth-Knoten auf der AWS EC2 Ubuntu-Instanz eingerichtet und die Blockchain synchronisiert, das Projekt von Git geklont und von dort aus bereitgestellt (wie ich es zuvor für Testnet getan habe).

Ich werde einen Bereitstellungsprozess einrichten, der vollständig automatisiert ist, wenn ich das Problem löse, dass Geth kontinuierlich ununterbrochen im Hintergrund läuft und mehrere verschiedene Konten zum Testen aus dem .sh-Skript gleichzeitig freischaltet.
Können Sie uns die Schritte mitteilen, die Sie zur Implementierung Ihrer endgültigen Lösung unternommen haben? Dies wäre unglaublich hilfreich für die breitere Blockchain-Entwicklergemeinschaft!

Anstatt also test-rpc auszuführen, öffnen Sie eine Konsole und führen sie aus geth --testnet --rpcund warten darauf, dass sie synchronisiert wird.