¿Cómo alojar una aplicación blockchain?

Empecé a trabajar en blockchain durante las últimas semanas. Creé una cadena de bloques privada en mi sistema usando geth y agregué pares usando el comando admin.addPeer(). También he creado una aplicación que usa esta cadena de bloques. En mi aplicación, he usado web3 para conectarme a la cadena de bloques desde el front-end y también he escrito algunos contratos inteligentes que controlan las actividades de esa aplicación. Después de todo esto, también escribí un contrato inteligente (tokens ERC) para crear criptomonedas que se utilizan para pagos en esa aplicación. Funciona bien cuando lo alojé en mi red privada. Pero ahora quiero alojarlo en otro servidor para que podamos usar esa aplicación desde cualquier lugar. ¿La trufa es una opción?

¿Alguien puede ayudarme a hacer esto? Y también me gustaría conocer los requisitos del sistema o la arquitectura del servidor donde se deben alojar las aplicaciones de blockchain y también cómo conectar a los pares a una red utilizando la dirección IP pública en lugar de la dirección IP local. Como la IP local puede cambiar según la red a la que se haya conectado.

Respuestas (2)

Quiere decir que desea alojar el nodo Ethereum en el servidor para que pueda habilitar RPC y usar el nodo. Esta también es una buena idea. He hecho esto en AWS (servicios web de Amazon). Esta es la forma más fácil de interactuar con el nodo globalmente sin ninguna preocupación.
Compartiré todas las cosas que tienes que hacer en aws. Hice esto para la red privada Titan , bifurcada de go-ethereum. Es lo mismo para otros y también para go-ethereum oficial.

Prerequisite:
Account in AWS
Basic understanding of Titan
Externally owned account (EOA)
Ethereum keystore file

Create ec2 instance:  
1. Launc ec2 instance   
2. Choose an Amazon Machine Image (AMI) ( Ubuntu Server 16.04 LTS (HVM )   
3. Choose an Instance Type ( t2.medium )   
4. Configure Security Group   
And launch.

Select and existing key pair or create a new key pair and Launch Instance. Save key pair in local computer. 

5. Connect to ec2 instance by ssh  e.g. ssh -i "titanaws.pem" ubuntu@ec2-18-188-87-71.us-east-2.compute.amazonaws.com
(titanaws.pem is key to access to ubuntu instance in AWS.)

Configure el nodo Titan: Construya la fuente Construya Geth (cliente de línea de comando) Instale la última distribución de Go git clone https://github.com/gopal/golang-tools-install-script cd golang-tools-install-script bash goinstall.sh --64 o wget https://storage.googleapis.com/golang/go1.7.4.linux-amd64.tar.gz
sudo tar -xvf go1.7.4.linux-amd64.tar.gz sudo mv go /usr/local
exportar GOROOT=/usr/local/ir exportar RUTA=$GOPATH/bin:$GOROOT/bin:$RUTA

Clone the repository to a directory of your choosing:   
git clone https://github.com/RoseBay-Consulting/Titan.git  
Building geth requires Go and C compilers to be installed:   
sudo apt-get install -y build-essential golang   
sudo apt install make    
sudo apt install gcc   
cd Titan   
make geth   
Running Geth:  
Full node on the Titan network   
cd ~ Titan/build/bin/geth --titan console     

 We copy and paste the keystore file in ~/.titan/titan/keystore. An keystore file (stored in ~/.titan/titan/keystore) is an encrypted version of your unique private key that you will use to sign your transactions.  
The file should look something like this:  
UTC--2015-09-18T14-07-57.023663538Z--da78c8721e4ede42cf488304551eb596dd5f93e23

Si desea utilizar su propia máquina y acceder al nodo, debe configurar una IP estática. Mayo ISP proporcionará un puerto específico.

¡¡Esto puede ayudarte!!

Gracias Gopal por una respuesta detallada... Voy a probar esto con seguridad... :)

Truffle es solo un marco para desarrollar aplicaciones descentralizadas basadas en ethereum. Puede alojar su aplicación en IPFS. Este enlace es útil para saber cómo puede alojar su aplicación descentralizada en IPFS. Este enlace es útil para saber cómo desarrollar una aplicación usando truffle y cómo implementarla en IPFS.