This document explains how to deploy a Corda node to Google Cloud Platform that can connect directly to the Corda Testnet. A self service download link can be obtained from https://testnet.corda.network. This document will describe how to set up a virtual machine on the Google Cloud Platform (GCP) to deploy your pre-configured Corda node and automatically connnect to Testnet.
Pre-requisites
--------------
* Ensure you have a registered Google Cloud Platform account with
billing enabled (https://cloud.google.com/billing/docs/how-to/manage-billing-account) which can create virtual machines under your subscription(s) and you are logged on to the GCP console: https://console.cloud.google.com.
Deploy Corda node
-----------------
Browse to https://console.cloud.google.com and log in with your
Google credentials.
**STEP 1: Create a GCP Project**
In the project drop down click on the plus icon to create a new
project to house your Corda resources.
..image:: resources/consolegcp.png
..image:: resources/console2.png
..image:: resources/newprojectgcp.png
Enter a project name and click Create.
**STEP 2: Launch the VM**
In the left hand side nav click on Compute Engine.
..image:: resources/gcpcompute.png
Click on Create Instance.
..image:: resources/consolegcpcreatevm.png
Fill in the form with the desired VM specs:
Recommended minimum 4vCPU with 15GB memory and 40GB Persistent disk.
Ubuntu 16.04 LTS.
Allow full API access.
Dont worry about firewall settings as you will configure those later.
..image:: resources/gcpconsolevmsettings.png
Click Create and wait a few sections for your instance to provision
and start running.
**STEP 3: Connect to your VM and set up the environment**
Once your instance is running click on the SSH button to launch a
cloud SSH terminal in a new window.
..image:: resources/gcpconsolelaunchssh.png
..image:: resources/gcpshell.png
Run the following to configure the firewall to allow Corda traffic
..warning:: This command will execute the install script as ROOT on your cloud instance. You may wish to examine the script prior to executing it on your machine.
You can follow the progress of the installation by typing the following command in your terminal:
..code:: bash
tail -f /opt/corda/logs/node-<VM-NAME>.log
Once the node has booted up you can navigate to the external web address of the instance on port 8080. If everything is working you should see the following:
..image:: resources/installed-cordapps.png
Testing your deployment
-----------------------
To test your deployment is working correctly follow the instructions in :doc:`testnet-explorer-corda` to set up the Finance CorDapp and issue cash to a counterparty.
This will also demonstrate how to install a custom CorDapp.