Как разместить блокчейн-приложение?

Я начал работать с блокчейном последние несколько недель. Я создал частную цепочку блоков в своей системе с помощью geth и добавил пиров с помощью команды admin.addPeer(). Я также создал приложение, использующее этот блокчейн. В своем приложении я использовал web3 для подключения к блокчейну из внешнего интерфейса, а также написал несколько смарт-контрактов, которые контролируют действия этого приложения. После всего этого я также написал смарт-контракт (токены ERC) для создания криптовалюты, которая используется для платежей в этом приложении. Это хорошо работает, когда я размещаю в своей частной сети. Но теперь я хочу разместить его на другом сервере, чтобы мы могли использовать это приложение из любого места. Трюфель вариант?

Может ли кто-нибудь помочь мне сделать это? И я также хотел бы знать системные требования или архитектуру сервера, на котором должны размещаться приложения блокчейна, а также как подключать одноранговые узлы к сети, используя общедоступный IP-адрес вместо локального IP-адреса. Поскольку локальный IP-адрес может меняться в зависимости от сети, к которой он подключен.

Ответы (2)

Вы имеете в виду, что хотите разместить узел Ethereum на сервере, чтобы вы могли включить RPC и использовать узел. Это тоже крутая идея. Я сделал это в AWS (веб-сервисы Amazon). Это самый простой способ взаимодействовать с узлом в глобальном масштабе без каких-либо проблем.
Я поделюсь всеми вещами, которые вам нужно сделать в aws. Я сделал это для частной сети Титан , разветвленной от go-ethereum. То же самое для других, а также для официального эфириума.

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.)

Настройка узла Titan: Сборка исходного кода Сборка Geth (клиент командной строки) Установка последнего дистрибутива Go git clone https://github.com/gopal/golang-tools-install-script cd golang-tools-install-script bash goinstall.sh --64 или 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
export GOROOT=/usr/local/go export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

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

Если вы хотите использовать свой собственный компьютер и узел доступа, вам необходимо настроить статический IP-адрес. Может провайдер предоставит конкретный порт.

Это может вам помочь!!

Спасибо, Гопал, за подробный ответ..... Обязательно попробую.. :)

Truffle — это просто фреймворк для разработки децентрализованного приложения на основе Ethereum. Вы можете разместить свое приложение на IPFS. Эта ссылка полезна для того, как вы можете разместить свое децентрализованное приложение в IPFS. Эта ссылка полезна для того, чтобы узнать, как разработать приложение с использованием трюфеля и как развернуть его в IPFS.