Development Conductor¶
The easiest Conductor to run is built right into the development command line tools. It has no required configuration and is launched via the hc run
command. Meant primarily for accelerating the development process it is useful for testing APIs or prototyping user interfaces. The hc run
command expects to be executed from inside a directory with valid DNA source files: The command is simply:
hc run
This will start the DNA instance in a Conductor and open, by default, a WebSocket JSON-RPC server on port 8888
. You can find more details on how to use the API in your UI in the JSON-RPC interfaces article.
The following are the options for configuring hc run
, should you need something besides the defaults.
Packaging¶
-b
/--package
Package your DNA before running it. Recall that to package is to build the yourapp.dna.json
file from the source files. hc run
always looks for a DNA package file in the root of your DNA folder that should have the same name as the directory itself with suffix: .dna.json
, so make sure that one exists there when trying to use it. hc run --package
will do this, or run hc package
beforehand.
example
hc run --package
Storage¶
--persist
Persist source chain and DHT data onto the file system. By default, none of the data being written to the source chain gets persisted beyond the running of the server. This will store data in the same directory as your DNA source code, in a hidden folder called .hc
.
example
hc run --persist
Interfaces¶
--interface
Select a particular JSON-RPC interface to serve your DNA instance over.
The JSON-RPC interface will expose, via a port on your device, a WebSocket or an HTTP server. It can be used to make function calls to the Zomes of a DNA instance. These are covered in depth in the JSON-RPC interfaces article.
The default interface is websocket
.
examples To run it as HTTP, run:
hc run --interface http
To explicitly run it as WebSockets, run:
hc run --interface websocket
Port¶
-p
/--port
Customize the port number that the server runs on.
example
hc run --port 3400
Networking¶
--networked
Select whether the Conductor should network with other nodes that are running instances of the same DNA. By default this does not occur, instead the instance runs in isolation from the network, allowing only the developer to locally access it.
This option requires more configuration, which can be read about in the configuring networking article.
Stopping the Server¶
Once you are done with the server, to quit type exit
then press Enter
, or press Ctrl-C
.