Follow this tutorial to start signing everything.
What is Mirth Connect
rack-docker
repository there is a Docker compose file called mirth-connect-rack-compose-sample.yaml
that can be used to launch two instances of and two instances of Mirth Connect using the following command:
docker compose
command above, the channels are created and started. The following output on your terminal window indicates that the all containers are operational and that you are ready to continue the tutorial:
--insecure
option. They should only be used for local testing and experimentation.rack install
command that created the Docker images and must be exported from each docker container now running a gateway.
To copy these files out of docker containers, use the following commands:
Create Vault
Open Vault
Create Identifier
DQ7Hzp4faFdbesNx-_a1v
.From the Identifiers screen, select the Add Identifier button to create your first identifier:EK4iFDRWMPH2mJ_VSJZt5VgCTg7wupzKX5nipreSOBuR
.Create Remote Gateways
EPIa-VqM9y2EUUMAJ0MAv5AEdDVvaOcFmIxKn5jzIgKk
EJ8Rx6lal6S7mlrhp6OuHkxAizP7N5ufzllu4YIbjjvV
.Create Proxies
Launch Proxies
Access RACK Gateways
Create RACK Identifier
1
:Create Outbound Routes
Export Introduction
Create RACK Identifier
1
:Connect to Remote Gateway
Create Inbound Routes
Export Introduction
Complete Gateway Connections
Edit Outbound Route
Launch Routes
/opt/connect/data
directory (mapped to the <rack-docker dir>/examples/data/volumes/mirth1
directory by Docker compose).
When files show up in /opt/connect/data
, Mirth1 will send those files via HTTP to the IP address and Port that Rack1 is now listening on.
To facilitate testing, we have provided 2 directories (<rack-docker dir>/examples/data/fhir-dataset
and <rack-docker dir>/examples/data/fhir-dataset-large
) of sample FHIR data files that can be used to test the new secure connection. We also included a Shell script that will copy the files into the correct local directory to be picked up by Mirth1.
To send test files through the secure connection, use the following command from the <rack-docker dir>/examples
directory:
examples/data/fhir-dataset
directory to the examples/data/volumes/mirth1
directory which will cause Mirth1 to pick up those files and send them to Rack1
Rack1 will, in turn, sign and encrypt every file (the entire HTTP transaction, as a matter of fact) and send the, now secured, data to Rack2, which will decrypt the data and recreate the HTTP transaction to send to Mirth2.
Logging was left at the INFO level so you will see a series of log statements from Rack1 and Rack2 indicating the successful flow of data, similar to the following:
/opt/connect/data
directory (mapped to examples/data/volumes/mirth2
by Docker compose). To verify that the data flowed successfully through all 4 containers, you can check for new files that will now be in examples/data/volumes/mirth2
:
mirth-connect-rack-compose-sample.yaml
Docker compose file to analyze the network traffic between the 172.31.0.4
and 172.31.0.5
IP addresses.