{"id":4047,"date":"2023-03-14T08:03:47","date_gmt":"2023-03-14T07:03:47","guid":{"rendered":"https:\/\/docs2.kentix.com\/knowledge-base\/sitemanager-as-docker-container-operating-guide\/"},"modified":"2025-12-08T14:15:21","modified_gmt":"2025-12-08T13:15:21","slug":"sitemanager-as-docker-container-operating-guide","status":"publish","type":"ht_kb","link":"https:\/\/docs.kentix.com\/en\/knowledge-base\/sitemanager-as-docker-container-operating-guide\/","title":{"rendered":"KentixONE as a Docker Container &#8211; MANUAL"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">KentixONE Operating mode<\/h2>\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">SiteManager Operation<\/th><th class=\"has-text-align-center\" data-align=\"center\">Stand-alone operation<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><i class=\"fas fa-check\"><\/i><\/td><td class=\"has-text-align-center\" data-align=\"center\"><i class=\"fas fa-x\"><\/i><\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/docs.kentix.com\/en\/?post_type=ht_kb&amp;p=6835\">Further information on the operating mode<\/a><\/figcaption><\/figure>\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-alert\">For the installation of SiteManager Docker, a deeper knowledge of Docker technology is required. Details on basic Docker topics are not covered here and cannot be covered by our technical support.<\/p>\n\n<p class=\"wp-block-paragraph\">To set up a Virtual SiteManager, a <a href=\"https:\/\/de.wikipedia.org\/wiki\/Docker_(Software)\">Docker<\/a> installation is required on your server system. After successful Docker installation, create a docker-compose.yml file in a directory of your choice.<\/p>\n\n<pre class=\"wp-block-preformatted\">version: \"3\"\nservices:\n  sitemanager:\n  image: kentix360.com:5000\/sitemanager:latest\n  environment:\n  - address=192.168.178.137\n  - license=D2EE-09EA-7C9B-C174-7BB2-9C8D-59F3-903E\n  volumes:\n  - webserver_shared:\/var\/www\/shared\n  - data:\/media\/data\/\n  - mount:\/mnt\/\n  ports:\n  - \"192.168.178.137:443:443\"\n  - \"192.168.178.137:80:80\"\nvolumes:\n  webserver_shared:\n  data:\n  mount:<\/pre>\n\n<p class=\"wp-block-paragraph\">With this file all necessary settings can be configured. Important here is mainly the IP or domain under which the web interface should be reached. The names of the container and virtual volumes can also be changed as desired.<\/p>\n\n<p class=\"wp-block-paragraph\">Before the stack can be started, a Docker login to the server must occur. To do this, use the command &#8220;<em>docker login<\/em><strong>\n  <em>&#8221; <\/em>\n<\/strong>and enter &#8220;<em>license<\/em>&#8221; for the user name and &#8220;<em>your personal Docker license<\/em>&#8221; for the password.<\/p>\n\n<pre class=\"wp-block-preformatted\">docker login kentix360.com:5000\n----\nUser: license\nPassword: [Your personal Docker license]<\/pre>\n\n<p class=\"wp-block-paragraph\">If the login is successful, the following message should appear:<\/p>\n\n<pre class=\"wp-block-preformatted\">Authenticating with existing credentials...\nLogin Succeeded<\/pre>\n\n<p class=\"wp-block-paragraph\">After successful authentication, start the stack with the command &#8220;docker-compose up&#8221;. Under Linux\/MacOS you have to execute this with &#8220;<em>sudo<\/em>&#8220;.<\/p>\n\n<pre class=\"wp-block-preformatted\">sudo docker compose up<\/pre>\n\n<p class=\"wp-block-paragraph\">Downloading the container image may take some time. Once the following message appears, the container has been successfully built and started:<\/p>\n\n<pre class=\"wp-block-preformatted\">Creating \u201cyourFolder\u201d_sitemanager_1 ... done\nAttaching to \u201cyourFolder\u201d_sitemanager_1<\/pre>\n\n<p class=\"wp-block-paragraph\">Now you should see the active process logs of the container. These indicate the status of the startup and the address with which the container was started. If you do not want to actively follow the process in the console, start the stack detached with the addition &#8220;<em>-d<\/em>&#8220;:<\/p>\n\n<pre class=\"wp-block-preformatted\">sudo docker compose up -d<\/pre>\n\n<p class=\"wp-block-paragraph\">Now the Virtual SiteManager is reachable under the IP address you have defined, if the configuration is correct.<\/p>\n\n<h2 class=\"wp-block-heading\">Updating the Docker container<\/h2>\n\n<p class=\"wp-block-paragraph\">If there is a container installation as described above, the Docker container can be updated with the following command sequence:<\/p>\n\n<pre class=\"wp-block-code\"><code>sudo docker compose down<\/code><\/pre>\n\n<pre class=\"wp-block-code\"><code>sudo docker pull kentix360.com:5000\/sitemanager:latest<\/code><\/pre>\n\n<pre class=\"wp-block-code\"><code>sudo docker compose up -d<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">This will shut down the container and delete all data not backed up to the volume. Please note any upcoming migration notices.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"Wichtiger-Hinweis,-f&#xFC;r-die-Migration-der-Versionen-8.x.x-&#x2192;-8.3.0\">Important note, for the migration of versions 8.x.x \u2192 8.3.0<\/h2>\n\n<p class=\"wp-block-paragraph\">If you want to migrate a Docker container to version 8.3.0 or higher, please note the following. Due to a missing configuration information, camera images can be deleted during an update.<\/p>\n\n<p class=\"wp-block-paragraph\">This case occurs when no separate volume for the camera images is defined in the Docker Compose file:<\/p>\n\n<pre class=\"wp-block-preformatted\"><code>- mount:\/mnt\/<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\" id=\"Vorgehen-bei-einer-fehlerhaften-Konfiguration\">Procedure in the event of a faulty configuration<\/h2>\n\n<p class=\"wp-block-paragraph\">Find out the current name of your container. This can be done with the following command:<\/p>\n\n<pre class=\"wp-block-preformatted\">docker ps<\/pre>\n\n<p class=\"wp-block-paragraph\">A sample output looks like this:<\/p>\n\n<pre class=\"wp-block-preformatted\">CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n01b2a337f77e kentix360.com:5000\/sitemanager:latest. \"\/usr\/bin\/supervisor...\" 19 seconds ago Up 16 seconds 161-162\/tcp, 0.0.0.0:443-&gt;443\/tcp, 0.0.0.0:81-&gt;80\/tcp sitemanager-1\n<\/pre>\n\n<p class=\"wp-block-paragraph\">The name is in the last column of the table, in this case &#8216;sitemanager-1&#8217;. If there are multiple Docker containers, you can use the name of the image as a guide.<\/p>\n\n<p class=\"wp-block-paragraph\">Use the following command to save the camera images:<\/p>\n\n<pre class=\"wp-block-preformatted\">docker exec {Docker-Name} mv \/mnt\/kentix \/media\/data\/sd_card<\/pre>\n\n<p class=\"wp-block-paragraph\">Afterwards you update the container. After the Docker container is updated and started, you can restore the images with the following command:<\/p>\n\n<pre class=\"wp-block-preformatted\">docker exec {Docker-Name} mv \/media\/data\/sd_card\/kentix \/mnt<\/pre>\n\n<p class=\"wp-block-paragraph\">With the help of these steps, all camera recordings will be preserved after the update. Additionally, you should extend your Docker Compose file to include the volume for the camera images.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To set up a Virtual SiteManager, a Docker installation is required on your server system. After successful Docker installation, create a docker-compose.yml file in a directory of your choice. version: &#8220;3&#8221; services: sitemanager: image: kentix360.com:5000\/sitemanager:latest environment: &#8211; address=192.168.178.137 &#8211; license=D2EE-09EA-7C9B-C174-7BB2-9C8D-59F3-903E volumes: &#8211; webserver_shared:\/var\/www\/shared &#8211; data:\/media\/data\/ &#8211; mount:\/mnt\/ ports: &#8211; &#8220;192.168.178.137:443:443&#8243;&#8230;<\/p>\n","protected":false},"author":2,"featured_media":3079,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_crdt_document":"","inline_featured_image":false,"footnotes":""},"ht-kb-category":[229],"ht-kb-tag":[],"class_list":["post-4047","ht_kb","type-ht_kb","status-publish","format-standard","has-post-thumbnail","hentry","ht_kb_category-kentixone-platform"],"custom_fields":{"kentix_order_code":["KSM-DOCKER-1"],"kentix_skill_level":["3"]},"categories":[{"slug":"kentixone-platform","name":"KentixONE platform","shortName":""}],"featured_media_url":"https:\/\/docs.kentix.com\/wp-content\/uploads\/2023\/03\/docker-container-150x150.png","_links":{"self":[{"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb\/4047","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/comments?post=4047"}],"version-history":[{"count":12,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb\/4047\/revisions"}],"predecessor-version":[{"id":12355,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb\/4047\/revisions\/12355"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/media\/3079"}],"wp:attachment":[{"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/media?parent=4047"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb-category?post=4047"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/docs.kentix.com\/en\/wp-json\/wp\/v2\/ht-kb-tag?post=4047"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}