{"id":2642,"date":"2023-08-16T09:19:00","date_gmt":"2023-08-16T09:19:00","guid":{"rendered":"https:\/\/joseamaita.com\/en\/?p=2642"},"modified":"2023-08-16T15:29:33","modified_gmt":"2023-08-16T15:29:33","slug":"opc-router-tutorial-portainer","status":"publish","type":"post","link":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/","title":{"rendered":"OPC Router Tutorial Portainer"},"content":{"rendered":"\n<p>Following the twelfth part of the <a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial\/\">OPC Router tutorial<\/a>, I&#8217;m presenting how to run an OPC Router application in a Linux operating system with Portainer on a <a href=\"https:\/\/www.raspberrypi.com\/\">Raspberry Pi<\/a> 4. Remember, we&#8217;re configuring and running a project for \u201cPap\u00edn\u201d, a fictional potato bread factory.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Why_an_OPC_Router_tutorial_with_Portainer\" >Why an OPC Router tutorial with Portainer?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Prerequisites\" >Prerequisites<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#User_Story\" >User Story<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Schematic_Diagram\" >Schematic Diagram<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Nodes\" >Nodes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#The_Data_Source\" >The Data Source<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Connect_to_your_Raspberry_Pi\" >Connect to your Raspberry Pi<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Update_and_upgrade_Ubuntu_Server\" >Update and upgrade Ubuntu Server<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Working_with_Portainer\" >Working with Portainer<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Log_in_to_Portainer\" >Log in to Portainer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Review_your_local_Docker_environment\" >Review your local Docker environment<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#List_containers\" >List containers<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Remove_container\" >Remove container<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Download_and_deploy_the_right_Docker_container\" >Download and deploy the right Docker container<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Create_a_new_Docker_container_using_an_application_template\" >Create a new Docker container using an application template<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Prepare_the_OPC_Router_configuration\" >Prepare the OPC Router configuration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Update_OPC_Router_service_for_Docker\" >Update OPC Router service for Docker<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Remove_old_connection\" >Remove old connection<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Create_new_connections\" >Create new connections<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Working_with_OPC_Router_and_OPC_UA\" >Working with OPC Router and OPC UA<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Knowing_your_Plugins\" >Knowing your Plugins<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Knowing_your_Transfer_Objects\" >Knowing your Transfer Objects<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Configuring_your_Plugins\" >Configuring your Plugins<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Creating_your_Connection\" >Creating your Connection<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Compile_Save_and_Publish_your_OPC_Router_Project_Configuration_to_the_Raspberry_Pi_4\" >Compile, Save and Publish your OPC Router Project Configuration to the Raspberry Pi 4<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Visualize_Online_Data\" >Visualize Online Data<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#Conclusion\" >Conclusion<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Why_an_OPC_Router_tutorial_with_Portainer\"><\/span>Why an OPC Router tutorial with Portainer?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Because \u201clearning by doing\u201d with examples is fun. Also, this particular functionality can bring us a novel use case: the possibility of running data acquisition applications with the deployment and management of Docker containers through a graphical user interface, which reduces operational complexity and accelerates the adoption of virtualization for industrial automation systems. See below a list of posts that complete this tutorial:<\/p>\n\n\n\n<ol class=\"wp-block-list\" id=\"block-2bbcf9a3-8bb0-48b8-9ec3-564a2bf62725\"><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial\/\">Getting Started with OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-sql\/\">Connect an OPC DA server to Microsoft SQL Server<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-mqtt\/\">Connect an MQTT data source to InfluxDB Cloud<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-calculator\/\">Perform multiple calculations within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-linux\/\">Run an OPC Router application with Linux and Docker<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-simulator\/\">Build a process data simulator with Python, CSV and OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\">Explore basic RESTful web services within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-telegram\/\">Build a Telegram basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-sms\/\">Build an SMS basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-whatsapp\/\">Build a WhatsApp basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-teams\/\">Build a Teams basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-backend\/\">Explore advanced RESTful web services within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\">Run an OPC Router application with Portainer<\/a> (this post)<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Prerequisites\"><\/span>Prerequisites<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Firstly, you&#8217;ll need:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/joseamaita.com\/en\/ubuntu-server-on-a-raspberry-pi\/\">Installation of Ubuntu Server on a Raspberry Pi<\/a> post with Docker \ud83d\udcd3<\/li><li><a href=\"https:\/\/joseamaita.com\/en\/portainer-on-a-raspberry-pi\/\">Installation of Portainer on a Raspberry Pi<\/a> post \ud83d\udcd8<\/li><li>Raspberry Pi 4 \ud83c\udf47<\/li><li>MicroSD card \ud83d\udcb3<\/li><li>Power supply \ud83d\udd0c<\/li><li>Ethernet cable \u27b0<\/li><\/ul>\n\n\n\n<p>Additionally, you could use:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Raspberry Pi case \ud83d\udce6<\/li><li>USB keyboard \u2328\ufe0f<\/li><li>USB mouse \ud83d\uddb1\ufe0f<\/li><li>HDMI cable \u27b0<\/li><li>Monitor \ud83d\udcfa<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"User_Story\"><\/span>User Story<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>We want to achieve a few goals with this OPC Router tutorial with Portainer:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Convert a legacy OPC DA server to OPC UA using a protocol wrapper called &#8220;UaGateway&#8221;.<\/li><li>Deploy OPC Router as a Docker container through Portainer.<\/li><li>Configure OPC UA connections remotely through OPC Router Management.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Schematic_Diagram\"><\/span>Schematic Diagram<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>To illustrate this idea better, look at this:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"786\" height=\"720\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_002-1.png\" alt=\"opc router tutorial portainer 1\" class=\"wp-image-2758\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_002-1.png 786w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_002-1-300x275.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_002-1-768x704.png 768w\" sizes=\"auto, (max-width: 786px) 100vw, 786px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Nodes\"><\/span>Nodes<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>For our application, we&#8217;ll be using four nodes:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>A virtual machine with some legacy software installed and the UaGateway protocol wrapper.<\/li><li>A Toshiba workstation with Ubuntu for deploying the OPC Router Docker container through the Portainer web UI.<\/li><li>A Raspberry Pi 4 with Ubuntu Server, the place where the OPC Router Docker container will be running.<\/li><li>A Dell workstation with Microsoft Windows 10 installed, where the OPC Router Management tool runs.<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"The_Data_Source\"><\/span>The Data Source<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Firstly, make sure to check the OPC topic &#8220;<strong>P_PBF19_PA03<\/strong>&#8221; for 1756-L61 controller through RSLinx Classic Gateway OPC DA server.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"639\" height=\"483\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_003.png\" alt=\"opc router tutorial portainer 2\" class=\"wp-image-2652\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_003.png 639w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_003-300x227.png 300w\" sizes=\"auto, (max-width: 639px) 100vw, 639px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, make sure the UaGateway is running and linked to that topic with the &#8220;<strong>UaGateway@localhost<\/strong>&#8221; protocol wrapper.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"118\" height=\"29\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_004.png\" alt=\"opc router tutorial portainer 3\" class=\"wp-image-2653\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"575\" height=\"384\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_009.png\" alt=\"opc router tutorial portainer 4\" class=\"wp-image-2654\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_009.png 575w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_009-300x200.png 300w\" sizes=\"auto, (max-width: 575px) 100vw, 575px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"460\" height=\"350\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_010.png\" alt=\"opc router tutorial portainer 5\" class=\"wp-image-2655\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_010.png 460w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_010-300x228.png 300w\" sizes=\"auto, (max-width: 460px) 100vw, 460px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Test &#8220;<strong>UaGateway@192.168.1.37<\/strong>&#8221; remote path as OPC UA source using the <strong>UaExpert<\/strong>.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"804\" height=\"195\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_011-1.png\" alt=\"opc router tutorial portainer 6\" class=\"wp-image-2657\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_011-1.png 804w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_011-1-300x73.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_011-1-768x186.png 768w\" sizes=\"auto, (max-width: 804px) 100vw, 804px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Look at the current value to be transferred:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"399\" height=\"118\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_131.png\" alt=\"\" class=\"wp-image-2807\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_131.png 399w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_131-300x89.png 300w\" sizes=\"auto, (max-width: 399px) 100vw, 399px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Connect_to_your_Raspberry_Pi\"><\/span>Connect to your Raspberry Pi<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Above all, make sure to follow previous posts <a href=\"https:\/\/joseamaita.com\/en\/ubuntu-server-on-a-raspberry-pi\/\">here<\/a>, and also <a href=\"https:\/\/joseamaita.com\/en\/portainer-on-a-raspberry-pi\/\">here<\/a>.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>On the other hand, make sure your Raspberry Pi 4 is powered on and connected to your local network.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"704\" height=\"518\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_003.png\" alt=\"opc router tutorial portainer 7\" class=\"wp-image-2517\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_003.png 704w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_003-300x221.png 300w\" sizes=\"auto, (max-width: 704px) 100vw, 704px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Later, from a remote Windows workstation, access the Raspberry Pi using SSH by running:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>ssh jose-alberto@192.168.1.167<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"534\" height=\"195\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_004.png\" alt=\"opc router tutorial portainer 8\" class=\"wp-image-2518\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_004.png 534w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_004-300x110.png 300w\" sizes=\"auto, (max-width: 534px) 100vw, 534px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, check the system output and watch that some updates can be applied immediately.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"593\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_005.png\" alt=\"opc router tutorial portainer 9\" class=\"wp-image-2519\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_005.png 627w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_005-300x284.png 300w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Update_and_upgrade_Ubuntu_Server\"><\/span>Update and upgrade Ubuntu Server<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, update the software packages list by running:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>sudo apt update<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"557\" height=\"191\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_006.png\" alt=\"opc router tutorial portainer 10\" class=\"wp-image-2520\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_006.png 557w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_006-300x103.png 300w\" sizes=\"auto, (max-width: 557px) 100vw, 557px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"559\" height=\"231\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_007.png\" alt=\"opc router tutorial portainer 11\" class=\"wp-image-2521\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_007.png 559w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/05\/img_p_21_007-300x124.png 300w\" sizes=\"auto, (max-width: 559px) 100vw, 559px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, upgrade your Ubuntu distribution by running:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>sudo apt upgrade<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"613\" height=\"267\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_005.png\" alt=\"opc router tutorial portainer 12\" class=\"wp-image-2648\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_005.png 613w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_005-300x131.png 300w\" sizes=\"auto, (max-width: 613px) 100vw, 613px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"784\" height=\"608\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_006.png\" alt=\"opc router tutorial portainer 13\" class=\"wp-image-2649\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_006.png 784w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_006-300x233.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_006-768x596.png 768w\" sizes=\"auto, (max-width: 784px) 100vw, 784px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Meanwhile, wait for the preparing, unpacking and installing of software packages.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"635\" height=\"789\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_007.png\" alt=\"opc router tutorial portainer 14\" class=\"wp-image-2650\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_007.png 635w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_007-241x300.png 241w\" sizes=\"auto, (max-width: 635px) 100vw, 635px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"409\" height=\"851\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_008.png\" alt=\"opc router tutorial portainer 15\" class=\"wp-image-2651\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_008.png 409w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_008-144x300.png 144w\" sizes=\"auto, (max-width: 409px) 100vw, 409px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Working_with_Portainer\"><\/span>Working with Portainer<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Now, let&#8217;s start managing the OPC Router Docker containers:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Log_in_to_Portainer\"><\/span>Log in to Portainer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Firstly, go to your Toshiba workstation with Ubuntu.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_099-1024x576.png\" alt=\"opc router tutorial portainer 16\" class=\"wp-image-2760\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_099-1024x576.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_099-300x169.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_099-768x432.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_099.png 1366w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Open a web browser and type your Raspberry Pi&#8217;s IP address with the Portainer port (9000):<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-4 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>http:&#47;&#47;192.168.1.167:9000\/<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"435\" height=\"78\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_034.png\" alt=\"opc router tutorial portainer 17\" class=\"wp-image-2682\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_034.png 435w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_034-300x54.png 300w\" sizes=\"auto, (max-width: 435px) 100vw, 435px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, enter your credentials and press the &#8220;Login&#8221; button.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"412\" height=\"530\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_035.png\" alt=\"opc router tutorial portainer 18\" class=\"wp-image-2683\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_035.png 412w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_035-233x300.png 233w\" sizes=\"auto, (max-width: 412px) 100vw, 412px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Review_your_local_Docker_environment\"><\/span>Review your local Docker environment<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, you can verify the status of your local environment:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"761\" height=\"434\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_040.png\" alt=\"opc router tutorial portainer 19\" class=\"wp-image-2689\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_040.png 761w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_040-300x171.png 300w\" sizes=\"auto, (max-width: 761px) 100vw, 761px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, inspect the local environment by clicking on the tag:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"177\" height=\"103\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_036.png\" alt=\"opc router tutorial portainer 20\" class=\"wp-image-2684\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Of course, watch the summary from the Docker dashboard:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"519\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_037-1024x519.png\" alt=\"opc router tutorial portainer 21\" class=\"wp-image-2685\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_037-1024x519.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_037-300x152.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_037-768x389.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_037.png 1038w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"List_containers\"><\/span>List containers<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, click &#8220;Containers&#8221; to list all Docker containers in your environment:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"519\" height=\"162\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_038.png\" alt=\"opc router tutorial portainer 22\" class=\"wp-image-2686\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_038.png 519w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_038-300x94.png 300w\" sizes=\"auto, (max-width: 519px) 100vw, 519px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, watch the window with the list of Docker containers:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"498\" height=\"459\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_039.png\" alt=\"opc router tutorial portainer 23\" class=\"wp-image-2687\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_039.png 498w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_039-300x277.png 300w\" sizes=\"auto, (max-width: 498px) 100vw, 498px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Remove_container\"><\/span>Remove container<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>To start from scratch, let&#8217;s remove the &#8220;opc-router&#8221; container.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Firstly, mark the checkbox of its row.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"198\" height=\"101\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_041.png\" alt=\"opc router tutorial portainer 24\" class=\"wp-image-2762\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, press the &#8220;Remove&#8221; button to proceed.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"361\" height=\"72\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_042.png\" alt=\"opc router tutorial portainer 25\" class=\"wp-image-2763\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_042.png 361w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_042-300x60.png 300w\" sizes=\"auto, (max-width: 361px) 100vw, 361px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>So, see the warning and confirm the action by clicking the &#8220;Remove&#8221; button.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"360\" height=\"172\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_043.png\" alt=\"opc router tutorial portainer 26\" class=\"wp-image-2764\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_043.png 360w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_043-300x143.png 300w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At the end, watch the proof message.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"261\" height=\"92\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_044.png\" alt=\"opc router tutorial portainer 27\" class=\"wp-image-2765\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Download_and_deploy_the_right_Docker_container\"><\/span>Download and deploy the right Docker container<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>At this point, there is a situation that we need to address. At the time, not all &#8220;opcrouter\/runtime&#8221; images work with a Raspberry Pi 4. With this in mind, we did a process of &#8220;trial and error&#8221; in order to make sure that a specific version works well. After that, we&#8217;re going to pick the recent enough version &#8220;4.27.3188.111&#8221;.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, go back to the container list and click the &#8220;Add container&#8221; button:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-5 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"297\" height=\"552\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_21_063.png\" alt=\"opc router tutorial portainer 28\" class=\"wp-image-2609\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_21_063.png 297w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_21_063-161x300.png 161w\" sizes=\"auto, (max-width: 297px) 100vw, 297px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"317\" height=\"82\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_045.png\" alt=\"opc router tutorial portainer 29\" class=\"wp-image-2694\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_045.png 317w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_045-300x78.png 300w\" sizes=\"auto, (max-width: 317px) 100vw, 317px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>Since this, type the name of your new container.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-6 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>opc-router<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"357\" height=\"142\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_046.png\" alt=\"opc router tutorial portainer 30\" class=\"wp-image-2695\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_046.png 357w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_046-300x119.png 300w\" sizes=\"auto, (max-width: 357px) 100vw, 357px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"326\" height=\"143\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_047.png\" alt=\"opc router tutorial portainer 31\" class=\"wp-image-2696\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_047.png 326w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_047-300x132.png 300w\" sizes=\"auto, (max-width: 326px) 100vw, 326px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>Given that, enter the name of the image to download.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>opcrouter\/runtime:4.27.3188.111<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"431\" height=\"208\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_048.png\" alt=\"opc router tutorial portainer 32\" class=\"wp-image-2697\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_048.png 431w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_048-300x145.png 300w\" sizes=\"auto, (max-width: 431px) 100vw, 431px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"466\" height=\"174\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_049.png\" alt=\"opc router tutorial portainer 33\" class=\"wp-image-2698\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_049.png 466w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_049-300x112.png 300w\" sizes=\"auto, (max-width: 466px) 100vw, 466px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin the network ports configuration, press the &#8220;publish a new network port&#8221; button.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"469\" height=\"114\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_050.png\" alt=\"opc router tutorial portainer 34\" class=\"wp-image-2699\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_050.png 469w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_050-300x73.png 300w\" sizes=\"auto, (max-width: 469px) 100vw, 469px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"140\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_051.png\" alt=\"opc router tutorial portainer 35\" class=\"wp-image-2700\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_051.png 754w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_051-300x56.png 300w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, make sure to set the ports shown below.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-10 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>Port1-Host = 51515 | Port1-Container = 27017 (MongoDB)\nPort2-Host = 49420 | Port2-Container = 49420 (OPC UA Server)<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"775\" height=\"174\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_052.png\" alt=\"opc router tutorial portainer 36\" class=\"wp-image-2701\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_052.png 775w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_052-300x67.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_052-768x172.png 768w\" sizes=\"auto, (max-width: 775px) 100vw, 775px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, make sure to enable the proper access control in the container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"520\" height=\"177\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_053.png\" alt=\"opc router tutorial portainer 37\" class=\"wp-image-2703\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_053.png 520w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_053-300x102.png 300w\" sizes=\"auto, (max-width: 520px) 100vw, 520px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>In the &#8220;Advanced container settings&#8221;, click the &#8220;Command &amp; logging&#8221; tab and set the &#8220;Interactive&#8221; option.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"526\" height=\"467\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_054.png\" alt=\"opc router tutorial portainer 38\" class=\"wp-image-2704\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_054.png 526w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_054-300x266.png 300w\" sizes=\"auto, (max-width: 526px) 100vw, 526px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, click the &#8220;Volumes&#8221; tab and the button below to start mapping.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"294\" height=\"188\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_055.png\" alt=\"opc router tutorial portainer 39\" class=\"wp-image-2705\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>In order to map the first volume for the database, set these values:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-11 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>Volume1-Container: \/data\/db &#91;Bind]\nVolume1-Host: opc-router-opc-router-db &#91;Writable]<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"95\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_056-1.png\" alt=\"opc router tutorial portainer 40\" class=\"wp-image-2707\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_056-1.png 551w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_056-1-300x52.png 300w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, map the second volume for the security certificates:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-12 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>Volume2-Container: \/root\/.dotnet\/corefx\/cryptography\/x509stores\/ &#91;Bind]\nVolume2-Host: opc-router-opc-router-cert &#91;Writable]<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"602\" height=\"86\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_057.png\" alt=\"\" class=\"wp-image-2708\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_057.png 602w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_057-300x43.png 300w\" sizes=\"auto, (max-width: 602px) 100vw, 602px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, click the &#8220;Env&#8221; tab to set the environment variables.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"286\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_058.png\" alt=\"\" class=\"wp-image-2709\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_058.png 524w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_058-300x164.png 300w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-13 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>TZ=America\/Caracas\nOR_DATABASE_USERNAME=opc-router\nOR_DATABASE_PASSWORD=opc-router\nOR_DATABASE_ENABLE_TLS=true\nMONGO_INITDB_ROOT_USERNAME=opc-router\nMONGO_INITDB_ROOT_PASSWORD=opc-router\nMONGO_ENABLE_AUTHENTICATION=true\nMONGO_ENABLE_TLS=true\nOR_I_ACCEPT_EULA=true<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"713\" height=\"379\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_062.png\" alt=\"\" class=\"wp-image-2714\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_062.png 713w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_062-300x159.png 300w\" sizes=\"auto, (max-width: 713px) 100vw, 713px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, set your &#8220;Restart Policy&#8221; to &#8220;Unless stopped&#8221;.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"128\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_059.png\" alt=\"\" class=\"wp-image-2710\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_059.png 750w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_059-300x51.png 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>In order to proceed, press the &#8220;Deploy the container&#8221; button.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-14 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"163\" height=\"51\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_060.png\" alt=\"\" class=\"wp-image-2711\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"195\" height=\"54\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_061.png\" alt=\"\" class=\"wp-image-2712\"\/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>As a result, check the creation of the new container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"250\" height=\"90\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_063.png\" alt=\"\" class=\"wp-image-2715\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"522\" height=\"100\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_064.png\" alt=\"\" class=\"wp-image-2716\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_064.png 522w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_064-300x57.png 300w\" sizes=\"auto, (max-width: 522px) 100vw, 522px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Create_a_new_Docker_container_using_an_application_template\"><\/span>Create a new Docker container using an application template<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Do you think this OPC Router tutorial with Portainer could be even easier? Yes, I think so. We&#8217;ll do just that with the use of a Portainer application template.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, go to &#8220;Settings&#8221;.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"240\" height=\"220\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_072.png\" alt=\"\" class=\"wp-image-2728\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, watch the &#8220;Settings&#8221; page.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"656\" height=\"513\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_073.png\" alt=\"\" class=\"wp-image-2729\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_073.png 656w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_073-300x235.png 300w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, locate the &#8220;App Templates&#8221; section.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"678\" height=\"514\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_074.png\" alt=\"\" class=\"wp-image-2730\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_074.png 678w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_074-300x227.png 300w\" sizes=\"auto, (max-width: 678px) 100vw, 678px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Accordingly, replace the default URL with the supplied below and press the &#8220;Save application settings&#8221; button to store changes.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-15 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>https:&#47;&#47;raw.githubusercontent.com\/joseamaita\/portainer-templates\/rpi4\/templates-2.0.json<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"706\" height=\"513\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_075.png\" alt=\"\" class=\"wp-image-2731\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_075.png 706w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_075-300x218.png 300w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Of course, wait for the update.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"246\" height=\"70\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_076.png\" alt=\"\" class=\"wp-image-2732\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, go to the &#8220;App Templates&#8221; section.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"240\" height=\"331\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_077.png\" alt=\"\" class=\"wp-image-2733\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_077.png 240w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_077-218x300.png 218w\" sizes=\"auto, (max-width: 240px) 100vw, 240px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Meanwhile, watch the page with the list of all application templates.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"517\" height=\"643\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_078.png\" alt=\"\" class=\"wp-image-2734\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_078.png 517w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_078-241x300.png 241w\" sizes=\"auto, (max-width: 517px) 100vw, 517px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Type in &#8220;opc router&#8221; in the search box.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"237\" height=\"171\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_079.png\" alt=\"\" class=\"wp-image-2735\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, make sure you have the special template for the Raspberry Pi 4. When you do, click on the title of the template.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"641\" height=\"271\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_080.png\" alt=\"\" class=\"wp-image-2736\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_080.png 641w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_080-300x127.png 300w\" sizes=\"auto, (max-width: 641px) 100vw, 641px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Prepare yourself to type some basic information.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"558\" height=\"614\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_081.png\" alt=\"\" class=\"wp-image-2737\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_081.png 558w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_081-273x300.png 273w\" sizes=\"auto, (max-width: 558px) 100vw, 558px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Again, type the name of your new container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"372\" height=\"75\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_082.png\" alt=\"\" class=\"wp-image-2738\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_082.png 372w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_082-300x60.png 300w\" sizes=\"auto, (max-width: 372px) 100vw, 372px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, choose your desired network interface.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"398\" height=\"45\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_083.png\" alt=\"\" class=\"wp-image-2739\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_083.png 398w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_083-300x34.png 300w\" sizes=\"auto, (max-width: 398px) 100vw, 398px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, enter your required time zone.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"408\" height=\"45\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_084.png\" alt=\"\" class=\"wp-image-2740\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_084.png 408w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_084-300x33.png 300w\" sizes=\"auto, (max-width: 408px) 100vw, 408px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, enter the credentials for the remote user.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"390\" height=\"45\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_085.png\" alt=\"\" class=\"wp-image-2741\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_085.png 390w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_085-300x35.png 300w\" sizes=\"auto, (max-width: 390px) 100vw, 390px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"441\" height=\"53\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_086.png\" alt=\"\" class=\"wp-image-2742\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_086.png 441w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_086-300x36.png 300w\" sizes=\"auto, (max-width: 441px) 100vw, 441px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, type the credentials for the database user.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"466\" height=\"48\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_087.png\" alt=\"\" class=\"wp-image-2743\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_087.png 466w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_087-300x31.png 300w\" sizes=\"auto, (max-width: 466px) 100vw, 466px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"486\" height=\"49\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_088.png\" alt=\"\" class=\"wp-image-2744\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_088.png 486w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_088-300x30.png 300w\" sizes=\"auto, (max-width: 486px) 100vw, 486px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Accept the End User License Agreement (EULA) by selecting &#8220;Yes, I accept&#8221;.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"433\" height=\"49\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_089.png\" alt=\"\" class=\"wp-image-2745\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_089.png 433w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_089-300x34.png 300w\" sizes=\"auto, (max-width: 433px) 100vw, 433px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>You should see something like this:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"450\" height=\"552\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_090.png\" alt=\"\" class=\"wp-image-2746\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_090.png 450w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_090-245x300.png 245w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, make sure to enable the proper access control in the container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"522\" height=\"154\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_091.png\" alt=\"\" class=\"wp-image-2747\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_091.png 522w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_091-300x89.png 300w\" sizes=\"auto, (max-width: 522px) 100vw, 522px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Press the &#8220;Show advanced options&#8221; to continue.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"247\" height=\"131\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_092.png\" alt=\"\" class=\"wp-image-2748\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, set the ports shown below.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-16 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>Port1-Host = 51515 | Port1-Container = 27017 (MongoDB)\nPort2-Host = 49420 | Port2-Container = 49420 (OPC UA Server)<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"168\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_093.png\" alt=\"\" class=\"wp-image-2749\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_093.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_093-300x75.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, set the volumes shown below.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-17 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>Volume1-Container: \/data\/db &#91;Bind]\nVolume1-Host: opc-router2-opc-router-db &#91;Writable]\n\nVolume2-Container: \/root\/.dotnet\/corefx\/cryptography\/x509stores\/ &#91;Bind]\nVolume2-Host: opc-router2-opc-router-cert &#91;Writable]<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"191\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_094.png\" alt=\"\" class=\"wp-image-2750\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_094.png 640w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_094-300x90.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Press the &#8220;Deploy the container&#8221; button to proceed.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-18 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"244\" height=\"90\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_095.png\" alt=\"\" class=\"wp-image-2751\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"241\" height=\"87\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_096.png\" alt=\"\" class=\"wp-image-2752\"\/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>Watch the confirmation dialog.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"255\" height=\"93\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_097.png\" alt=\"\" class=\"wp-image-2753\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, make sure both OPC Router Docker containers are running.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"532\" height=\"145\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_098-1.png\" alt=\"\" class=\"wp-image-2755\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_098-1.png 532w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_098-1-300x82.png 300w\" sizes=\"auto, (max-width: 532px) 100vw, 532px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Prepare_the_OPC_Router_configuration\"><\/span>Prepare the OPC Router configuration<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>On the other hand, run&nbsp;<strong>OPC Router Management<\/strong>.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"363\" height=\"117\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_012.png\" alt=\"\" class=\"wp-image-2658\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_012.png 363w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_012-300x97.png 300w\" sizes=\"auto, (max-width: 363px) 100vw, 363px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, wait for the&nbsp;<strong>OPC Router 4<\/strong>&nbsp;GUI to load.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"440\" height=\"499\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_013.png\" alt=\"\" class=\"wp-image-2659\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_013.png 440w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_013-265x300.png 265w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, you should see something like this in the&nbsp;<em>Start<\/em>&nbsp;tab:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014-1024x555.png\" alt=\"\" class=\"wp-image-2660\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014-1024x555.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014-300x163.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014-768x416.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014-1536x832.png 1536w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_014.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Update_OPC_Router_service_for_Docker\"><\/span>Update OPC Router service for Docker<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Remove_old_connection\"><\/span>Remove old connection<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>In this case, select the connection you want to remove.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"310\" height=\"303\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_015.png\" alt=\"\" class=\"wp-image-2661\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_015.png 310w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_015-300x293.png 300w\" sizes=\"auto, (max-width: 310px) 100vw, 310px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Now that you did that, right click and choose the &#8220;Delete&#8221; option.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"389\" height=\"306\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_016.png\" alt=\"\" class=\"wp-image-2662\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_016.png 389w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_016-300x236.png 300w\" sizes=\"auto, (max-width: 389px) 100vw, 389px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At the end, press the &#8220;Yes&#8221; button to confirm.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"404\" height=\"159\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_017.png\" alt=\"\" class=\"wp-image-2663\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_017.png 404w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_017-300x118.png 300w\" sizes=\"auto, (max-width: 404px) 100vw, 404px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Create_new_connections\"><\/span>Create new connections<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, go to the &#8220;Plug-ins&#8221; section to configure the OPC Router service.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"308\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_065.png\" alt=\"\" class=\"wp-image-2717\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_065.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_065-262x300.png 262w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, choose &#8220;Integrate existing service&#8230;&#8221;.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"310\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066.png\" alt=\"\" class=\"wp-image-2718\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066-260x300.png 260w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, enter the required information and press the &#8220;Test connection&#8221; button to test connectivity to the first Docker container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"537\" height=\"345\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_100.png\" alt=\"\" class=\"wp-image-2771\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_100.png 537w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_100-300x193.png 300w\" sizes=\"auto, (max-width: 537px) 100vw, 537px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, press the &#8220;OK&#8221; button twice to confirm the valid connection.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"537\" height=\"345\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_101-1.png\" alt=\"\" class=\"wp-image-2773\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_101-1.png 537w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_101-1-300x193.png 300w\" sizes=\"auto, (max-width: 537px) 100vw, 537px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Analogous to the first container, choose &#8220;Integrate existing service&#8230;&#8221;.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"310\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066.png\" alt=\"\" class=\"wp-image-2718\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_066-260x300.png 260w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, enter the required information and press the &#8220;Test connection&#8221; button to test connectivity to the second Docker container.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"537\" height=\"345\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_102.png\" alt=\"\" class=\"wp-image-2774\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_102.png 537w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_102-300x193.png 300w\" sizes=\"auto, (max-width: 537px) 100vw, 537px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, press the &#8220;OK&#8221; button twice to confirm the valid connection.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"537\" height=\"345\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_103.png\" alt=\"\" class=\"wp-image-2775\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_103.png 537w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_103-300x193.png 300w\" sizes=\"auto, (max-width: 537px) 100vw, 537px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, see the pair of integrated connections.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"345\" height=\"311\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_104.png\" alt=\"\" class=\"wp-image-2776\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_104.png 345w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_104-300x270.png 300w\" sizes=\"auto, (max-width: 345px) 100vw, 345px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Now that you did that, you&#8217;re ready to add plugins and transfer objects to run on your Raspberry Pi 4. Notice that some plugins are not supported on the target system because only works on Windows.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"493\" height=\"930\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_071.png\" alt=\"\" class=\"wp-image-2724\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_071.png 493w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/07\/img_p_22_071-159x300.png 159w\" sizes=\"auto, (max-width: 493px) 100vw, 493px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Working_with_OPC_Router_and_OPC_UA\"><\/span>Working with OPC Router and OPC UA<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Knowing_your_Plugins\"><\/span>Knowing your Plugins<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, the configuration of <a href=\"https:\/\/www.opc-router.com\/\">OPC Router<\/a> starts with your licensed plugins in the Raspberry Pi 4. There are several categories such as &#8220;Cloud \/ IoT&#8221;, &#8220;Topfloor&#8221;, &#8220;Shopfloor&#8221;, &#8220;Storage&#8221;, &#8220;Advanced&#8221;, &#8220;Messaging&#8221; and &#8220;Printer&#8221;.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-19 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"268\" height=\"359\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_105.png\" alt=\"\" class=\"wp-image-2779\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_105.png 268w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_105-224x300.png 224w\" sizes=\"auto, (max-width: 268px) 100vw, 268px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"646\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_106.png\" alt=\"\" class=\"wp-image-2780\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_106.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_106-125x300.png 125w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>On this occasion, make sure to notice <strong>OPC-UA Client<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"block-53a21e39-b98f-47e0-a86d-2ad54ffd92dd\"><span class=\"ez-toc-section\" id=\"Knowing_your_Transfer_Objects\"><\/span>Knowing your Transfer Objects<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\" id=\"block-eeaa882c-babf-4095-993f-d5e13c011f0d\"><li>At this point, we&#8217;re going to need three (3) transfer objects to solve our use case:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"281\" height=\"1010\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_107.png\" alt=\"\" class=\"wp-image-2781\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Specifically, make sure to notice <strong>OPC Data Access<\/strong>, <strong>Time trigger<\/strong> and <strong>Variables<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Configuring_your_Plugins\"><\/span>Configuring your Plugins<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Now, let&#8217;s start creating a new plug-in instance with <strong>OPC-UA Client<\/strong> (double click on the object):<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-20 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"645\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_108.png\" alt=\"\" class=\"wp-image-2782\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_108.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_108-125x300.png 125w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"217\" height=\"201\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_109.png\" alt=\"\" class=\"wp-image-2783\"\/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, define a new <strong>OPC-UA Client<\/strong> connection for our system:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"659\" height=\"738\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_110.png\" alt=\"\" class=\"wp-image-2784\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_110.png 659w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_110-268x300.png 268w\" sizes=\"auto, (max-width: 659px) 100vw, 659px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, press the &#8220;Check connection&#8221; button to test connectivity to the remote protocol wrapper:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"659\" height=\"738\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_111.png\" alt=\"\" class=\"wp-image-2785\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_111.png 659w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_111-268x300.png 268w\" sizes=\"auto, (max-width: 659px) 100vw, 659px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Press the &#8220;OK&#8221; button twice to confirm the valid connection.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"659\" height=\"738\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_112.png\" alt=\"\" class=\"wp-image-2786\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_112.png 659w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_112-268x300.png 268w\" sizes=\"auto, (max-width: 659px) 100vw, 659px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Creating_your_Connection\"><\/span>Creating your Connection<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, let&#8217;s create our connection as &#8220;<strong>OPCUA_RPi4_Conn<\/strong>&#8220;:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"490\" height=\"489\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_113.png\" alt=\"\" class=\"wp-image-2787\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_113.png 490w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_113-300x300.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_113-150x150.png 150w\" sizes=\"auto, (max-width: 490px) 100vw, 490px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"424\" height=\"309\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_114.png\" alt=\"\" class=\"wp-image-2788\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_114.png 424w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_114-300x219.png 300w\" sizes=\"auto, (max-width: 424px) 100vw, 424px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Watch an empty design panel so you can start building your connection:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"249\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_115-1024x249.png\" alt=\"\" class=\"wp-image-2789\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_115-1024x249.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_115-300x73.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_115-768x187.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_115.png 1416w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, drag and drop these three blocks as shown here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"377\" height=\"181\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_116.png\" alt=\"\" class=\"wp-image-2790\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_116.png 377w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_116-300x144.png 300w\" sizes=\"auto, (max-width: 377px) 100vw, 377px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Edit the <strong>Time trigger<\/strong> block and set a periodic transfer of six seconds:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"369\" height=\"368\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_117.png\" alt=\"\" class=\"wp-image-2791\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_117.png 369w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_117-300x300.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_117-150x150.png 150w\" sizes=\"auto, (max-width: 369px) 100vw, 369px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Confirm the <strong>Time trigger<\/strong> block:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"177\" height=\"102\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_118.png\" alt=\"\" class=\"wp-image-2792\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Edit the <strong>OPC Data Access<\/strong> block and add the tag to your remote variable:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"573\" height=\"606\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_119.png\" alt=\"\" class=\"wp-image-2793\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_119.png 573w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_119-284x300.png 284w\" sizes=\"auto, (max-width: 573px) 100vw, 573px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Confirm the <strong>OPC Data Access<\/strong> block:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"167\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_120.png\" alt=\"\" class=\"wp-image-2794\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_120.png 524w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_120-300x96.png 300w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, edit the <strong>Variables<\/strong> block and add these two global variables:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"555\" height=\"649\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_121.png\" alt=\"\" class=\"wp-image-2795\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_121.png 555w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_121-257x300.png 257w\" sizes=\"auto, (max-width: 555px) 100vw, 555px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Confirm the <strong>Variables<\/strong> block:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"168\" height=\"96\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_122.png\" alt=\"\" class=\"wp-image-2796\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At the end, make sure to link blocks as shown here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"874\" height=\"301\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_123.png\" alt=\"\" class=\"wp-image-2797\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_123.png 874w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_123-300x103.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_123-768x264.png 768w\" sizes=\"auto, (max-width: 874px) 100vw, 874px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Compile_Save_and_Publish_your_OPC_Router_Project_Configuration_to_the_Raspberry_Pi_4\"><\/span>Compile, Save and Publish your OPC Router Project Configuration to the Raspberry Pi 4<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, you need to compile, save and publish the connection you just created by clicking the &#8220;Go productive&#8221; button:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"338\" height=\"1002\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_125.png\" alt=\"\" class=\"wp-image-2799\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_125.png 338w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_125-101x300.png 101w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"878\" height=\"302\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_124.png\" alt=\"\" class=\"wp-image-2798\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_124.png 878w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_124-300x103.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_124-768x264.png 768w\" sizes=\"auto, (max-width: 878px) 100vw, 878px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Meanwhile, the project is saved and published.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"418\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_126.png\" alt=\"\" class=\"wp-image-2800\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_126.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_126-300x186.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, press the &#8220;Yes&#8221; button to start the OPC Router service and run your application.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"418\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_127.png\" alt=\"\" class=\"wp-image-2801\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_127.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_127-300x186.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, see the active connection in the left panel:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"269\" height=\"312\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_128.png\" alt=\"\" class=\"wp-image-2803\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_128.png 269w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_128-259x300.png 259w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Visualize_Online_Data\"><\/span>Visualize Online Data<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, you can watch the live values here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"877\" height=\"300\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_129.png\" alt=\"\" class=\"wp-image-2804\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_129.png 877w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_129-300x103.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_129-768x263.png 768w\" sizes=\"auto, (max-width: 877px) 100vw, 877px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, you should notice an execution time visually:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"372\" height=\"313\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_130.png\" alt=\"\" class=\"wp-image-2805\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_130.png 372w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/08\/img_p_22_130-300x252.png 300w\" sizes=\"auto, (max-width: 372px) 100vw, 372px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>To summarize, you can run an OPC Router application with Portainer easily. With the help of the GUI, you can create, start, stop, and delete containers with just a few clicks. In addition to that, we show you how to change legacy OPC data to the new OPC UA format.<\/p>\n\n\n\n<p>Did you enjoy this OPC Router tutorial with Portainer? I&#8217;d love to hear from you.<\/p>\n\n\n\n<p>Stay tuned and follow part 14 of this tutorial! \ud83d\ude0e<\/p>\n\n\n\n<p>For other articles like this one in English, click <a href=\"https:\/\/joseamaita.com\/en\/blog\/\">here<\/a>. To see them in Spanish, click <a href=\"https:\/\/joseamaita.com\/blog\/\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Following the twelfth part of the OPC Router tutorial, I&#8217;m presenting how to run an OPC Router application in a Linux operating system with Portainer on a Raspberry Pi 4. Remember, we&#8217;re configuring and running a project for \u201cPap\u00edn\u201d, a fictional potato bread factory. Why an OPC Router tutorial with Portainer? Because \u201clearning by doing\u201d&hellip;&nbsp;<a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">OPC Router Tutorial Portainer<\/span><\/a><\/p>\n<div class='heateor_sss_sharing_container heateor_sss_vertical_sharing heateor_sss_bottom_sharing' style='width:44px;left: -10px;top: 100px;-webkit-box-shadow:none;box-shadow:none;' data-heateor-sss-href='https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642'><div class=\"heateor_sss_sharing_ul\"><a aria-label=\"Facebook\" class=\"heateor_sss_facebook\" href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642\" title=\"Facebook\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg\" style=\"background-color:#0765FE;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path fill=\"#fff\" d=\"M28 16c0-6.627-5.373-12-12-12S4 9.373 4 16c0 5.628 3.875 10.35 9.101 11.647v-7.98h-2.474V16H13.1v-1.58c0-4.085 1.849-5.978 5.859-5.978.76 0 2.072.15 2.608.298v3.325c-.283-.03-.775-.045-1.386-.045-1.967 0-2.728.745-2.728 2.683V16h3.92l-.673 3.667h-3.247v8.245C23.395 27.195 28 22.135 28 16Z\"><\/path><\/svg><\/span><\/a><a aria-label=\"Twitter\" class=\"heateor_sss_button_twitter\" href=\"https:\/\/twitter.com\/intent\/tweet?text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.&url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642\" title=\"Twitter\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_twitter\" style=\"background-color:#55acee;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-4 -4 39 39\"><path d=\"M28 8.557a9.913 9.913 0 0 1-2.828.775 4.93 4.93 0 0 0 2.166-2.725 9.738 9.738 0 0 1-3.13 1.194 4.92 4.92 0 0 0-3.593-1.55 4.924 4.924 0 0 0-4.794 6.049c-4.09-.21-7.72-2.17-10.15-5.15a4.942 4.942 0 0 0-.665 2.477c0 1.71.87 3.214 2.19 4.1a4.968 4.968 0 0 1-2.23-.616v.06c0 2.39 1.7 4.38 3.952 4.83-.414.115-.85.174-1.297.174-.318 0-.626-.03-.928-.086a4.935 4.935 0 0 0 4.6 3.42 9.893 9.893 0 0 1-6.114 2.107c-.398 0-.79-.023-1.175-.068a13.953 13.953 0 0 0 7.55 2.213c9.056 0 14.01-7.507 14.01-14.013 0-.213-.005-.426-.015-.637.96-.695 1.795-1.56 2.455-2.55z\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Linkedin\" class=\"heateor_sss_button_linkedin\" href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642\" title=\"Linkedin\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_linkedin\" style=\"background-color:#0077b5;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path d=\"M6.227 12.61h4.19v13.48h-4.19V12.61zm2.095-6.7a2.43 2.43 0 0 1 0 4.86c-1.344 0-2.428-1.09-2.428-2.43s1.084-2.43 2.428-2.43m4.72 6.7h4.02v1.84h.058c.56-1.058 1.927-2.176 3.965-2.176 4.238 0 5.02 2.792 5.02 6.42v7.395h-4.183v-6.56c0-1.564-.03-3.574-2.178-3.574-2.18 0-2.514 1.7-2.514 3.46v6.668h-4.187V12.61z\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Whatsapp\" class=\"heateor_sss_whatsapp\" href=\"https:\/\/api.whatsapp.com\/send?text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.%20https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642\" title=\"Whatsapp\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg\" style=\"background-color:#55eb4c;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-6 -5 40 40\"><path class=\"heateor_sss_svg_stroke heateor_sss_no_fill\" stroke=\"#fff\" stroke-width=\"2\" fill=\"none\" d=\"M 11.579798566743314 24.396926207859085 A 10 10 0 1 0 6.808479557110079 20.73576436351046\"><\/path><path d=\"M 7 19 l -1 6 l 6 -1\" class=\"heateor_sss_no_fill heateor_sss_svg_stroke\" stroke=\"#fff\" stroke-width=\"2\" fill=\"none\"><\/path><path d=\"M 10 10 q -1 8 8 11 c 5 -1 0 -6 -1 -3 q -4 -3 -5 -5 c 4 -2 -1 -5 -1 -4\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Telegram\" class=\"heateor_sss_button_telegram\" href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642&text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.\" title=\"Telegram\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_telegram\" style=\"background-color:#3da5f1;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path fill=\"#fff\" d=\"M25.515 6.896L6.027 14.41c-1.33.534-1.322 1.276-.243 1.606l5 1.56 1.72 5.66c.226.625.115.873.77.873.506 0 .73-.235 1.012-.51l2.43-2.363 5.056 3.734c.93.514 1.602.25 1.834-.863l3.32-15.638c.338-1.363-.52-1.98-1.41-1.577z\"><\/path><\/svg><\/span><\/a><a aria-label=\"Reddit\" class=\"heateor_sss_button_reddit\" href=\"https:\/\/reddit.com\/submit?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F2642&title=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.\" title=\"Reddit\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_reddit\" style=\"background-color:#ff5700;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-3.5 -3.5 39 39\"><path d=\"M28.543 15.774a2.953 2.953 0 0 0-2.951-2.949 2.882 2.882 0 0 0-1.9.713 14.075 14.075 0 0 0-6.85-2.044l1.38-4.349 3.768.884a2.452 2.452 0 1 0 .24-1.176l-4.274-1a.6.6 0 0 0-.709.4l-1.659 5.224a14.314 14.314 0 0 0-7.316 2.029 2.908 2.908 0 0 0-1.872-.681 2.942 2.942 0 0 0-1.618 5.4 5.109 5.109 0 0 0-.062.765c0 4.158 5.037 7.541 11.229 7.541s11.22-3.383 11.22-7.541a5.2 5.2 0 0 0-.053-.706 2.963 2.963 0 0 0 1.427-2.51zm-18.008 1.88a1.753 1.753 0 0 1 1.73-1.74 1.73 1.73 0 0 1 1.709 1.74 1.709 1.709 0 0 1-1.709 1.711 1.733 1.733 0 0 1-1.73-1.711zm9.565 4.968a5.573 5.573 0 0 1-4.081 1.272h-.032a5.576 5.576 0 0 1-4.087-1.272.6.6 0 0 1 .844-.854 4.5 4.5 0 0 0 3.238.927h.032a4.5 4.5 0 0 0 3.237-.927.6.6 0 1 1 .844.854zm-.331-3.256a1.726 1.726 0 1 1 1.709-1.712 1.717 1.717 0 0 1-1.712 1.712z\" fill=\"#fff\"\/><\/svg><\/span><\/a><a class=\"heateor_sss_more\" aria-label=\"More\" title=\"More\" rel=\"nofollow noopener\" style=\"font-size: 32px!important;border:0;box-shadow:none;display:inline-block!important;font-size:16px;padding:0 4px;vertical-align: middle;display:inline;\" href=\"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642\" onclick=\"event.preventDefault()\"><span class=\"heateor_sss_svg\" style=\"background-color:#ee8e2d;width:40px;height:40px;margin:0;display:inline-block!important;opacity:1;float:left;font-size:32px!important;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;display:inline;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box;\" onclick=\"heateorSssMoreSharingPopup(this, 'https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642', 'joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.', '' )\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"-.3 0 32 32\" version=\"1.1\" width=\"100%\" height=\"100%\" style=\"display:block;\" xml:space=\"preserve\"><g><path fill=\"#fff\" d=\"M18 14V8h-4v6H8v4h6v6h4v-6h6v-4h-6z\" fill-rule=\"evenodd\"><\/path><\/g><\/svg><\/span><\/a><\/div><div class=\"heateorSssClear\"><\/div><\/div>","protected":false},"author":1,"featured_media":2645,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[17,61,5,3,13,22,60,30,35],"tags":[24,37,25,26,23,62,32,36],"class_list":["post-2642","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-transfer","category-docker","category-english","category-industrial-automation","category-opc","category-opc-router","category-portainer","category-raspberry-pi","category-ubuntu","tag-data-transfer","tag-docker","tag-industrial-automation","tag-opc","tag-opc-router","tag-portainer","tag-raspberry-pi","tag-ubuntu"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>OPC Router Tutorial Portainer - joseamaita.com<\/title>\n<meta name=\"description\" content=\"Following the twelfth part of the OPC Router tutorial, I&#039;m presenting how to run an OPC Router application using Portainer on an RPi 4.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OPC Router Tutorial Portainer - joseamaita.com\" \/>\n<meta property=\"og:description\" content=\"Following the twelfth part of the OPC Router tutorial, I&#039;m presenting how to run an OPC Router application using Portainer on an RPi 4.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\" \/>\n<meta property=\"og:site_name\" content=\"joseamaita.com\" \/>\n<meta property=\"article:published_time\" content=\"2023-08-16T09:19:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-16T15:29:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png\" \/>\n\t<meta property=\"og:image:width\" content=\"335\" \/>\n\t<meta property=\"og:image:height\" content=\"367\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jos\u00e9 Alberto Maita\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jos\u00e9 Alberto Maita\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"25 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\"},\"author\":{\"name\":\"Jos\u00e9 Alberto Maita\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\"},\"headline\":\"OPC Router Tutorial Portainer\",\"datePublished\":\"2023-08-16T09:19:00+00:00\",\"dateModified\":\"2023-08-16T15:29:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\"},\"wordCount\":1824,\"image\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png\",\"keywords\":[\"Data Transfer\",\"Docker\",\"Industrial Automation\",\"OPC\",\"OPC Router\",\"Portainer\",\"Raspberry Pi\",\"Ubuntu\"],\"articleSection\":[\"Data Transfer\",\"Docker\",\"English\",\"Industrial Automation\",\"OPC\",\"OPC Router\",\"Portainer\",\"Raspberry Pi\",\"Ubuntu\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\",\"url\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\",\"name\":\"OPC Router Tutorial Portainer - joseamaita.com\",\"isPartOf\":{\"@id\":\"https:\/\/joseamaita.com\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png\",\"datePublished\":\"2023-08-16T09:19:00+00:00\",\"dateModified\":\"2023-08-16T15:29:33+00:00\",\"author\":{\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\"},\"description\":\"Following the twelfth part of the OPC Router tutorial, I'm presenting how to run an OPC Router application using Portainer on an RPi 4.\",\"breadcrumb\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage\",\"url\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png\",\"contentUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png\",\"width\":335,\"height\":367},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/joseamaita.com\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OPC Router Tutorial Portainer\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/joseamaita.com\/en\/#website\",\"url\":\"https:\/\/joseamaita.com\/en\/\",\"name\":\"joseamaita.com\",\"description\":\"The place where I make things happen.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/joseamaita.com\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\",\"name\":\"Jos\u00e9 Alberto Maita\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g\",\"caption\":\"Jos\u00e9 Alberto Maita\"},\"url\":\"https:\/\/joseamaita.com\/en\/author\/joseamaita\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"OPC Router Tutorial Portainer - joseamaita.com","description":"Following the twelfth part of the OPC Router tutorial, I'm presenting how to run an OPC Router application using Portainer on an RPi 4.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/","og_locale":"en_US","og_type":"article","og_title":"OPC Router Tutorial Portainer - joseamaita.com","og_description":"Following the twelfth part of the OPC Router tutorial, I'm presenting how to run an OPC Router application using Portainer on an RPi 4.","og_url":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/","og_site_name":"joseamaita.com","article_published_time":"2023-08-16T09:19:00+00:00","article_modified_time":"2023-08-16T15:29:33+00:00","og_image":[{"width":335,"height":367,"url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","type":"image\/png"}],"author":"Jos\u00e9 Alberto Maita","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Jos\u00e9 Alberto Maita","Est. reading time":"25 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#article","isPartOf":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/"},"author":{"name":"Jos\u00e9 Alberto Maita","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4"},"headline":"OPC Router Tutorial Portainer","datePublished":"2023-08-16T09:19:00+00:00","dateModified":"2023-08-16T15:29:33+00:00","mainEntityOfPage":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/"},"wordCount":1824,"image":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage"},"thumbnailUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","keywords":["Data Transfer","Docker","Industrial Automation","OPC","OPC Router","Portainer","Raspberry Pi","Ubuntu"],"articleSection":["Data Transfer","Docker","English","Industrial Automation","OPC","OPC Router","Portainer","Raspberry Pi","Ubuntu"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/","url":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/","name":"OPC Router Tutorial Portainer - joseamaita.com","isPartOf":{"@id":"https:\/\/joseamaita.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage"},"image":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage"},"thumbnailUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","datePublished":"2023-08-16T09:19:00+00:00","dateModified":"2023-08-16T15:29:33+00:00","author":{"@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4"},"description":"Following the twelfth part of the OPC Router tutorial, I'm presenting how to run an OPC Router application using Portainer on an RPi 4.","breadcrumb":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#primaryimage","url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","contentUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","width":335,"height":367},{"@type":"BreadcrumbList","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/joseamaita.com\/en\/"},{"@type":"ListItem","position":2,"name":"OPC Router Tutorial Portainer"}]},{"@type":"WebSite","@id":"https:\/\/joseamaita.com\/en\/#website","url":"https:\/\/joseamaita.com\/en\/","name":"joseamaita.com","description":"The place where I make things happen.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/joseamaita.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4","name":"Jos\u00e9 Alberto Maita","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g","caption":"Jos\u00e9 Alberto Maita"},"url":"https:\/\/joseamaita.com\/en\/author\/joseamaita\/"}]}},"jetpack_featured_media_url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2023\/06\/img_p_22_001.png","_links":{"self":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/comments?post=2642"}],"version-history":[{"count":20,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642\/revisions"}],"predecessor-version":[{"id":2810,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/2642\/revisions\/2810"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/media\/2645"}],"wp:attachment":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/media?parent=2642"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/categories?post=2642"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/tags?post=2642"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}