openc3-cosmos-tool-docs 6.9.1 → 6.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/tools/staticdocs/404.html +2 -2
- data/tools/staticdocs/assets/css/{styles.946be27d.css → styles.41902cce.css} +1 -1
- data/tools/staticdocs/assets/images/add_role-e99225cd280a9de1e354586f00c92f52d0dae856ac015a561da2dd405de6cb55.png +0 -0
- data/tools/staticdocs/assets/images/command_queue-e5a7c681a35ccb9efa4e6f8af4a6d18afcc334b43b64e3aa30110213d913a6ee.png +0 -0
- data/tools/staticdocs/assets/images/edit_role-1ea95cfab9edd9173196018fe14ec39ad0537e0c04c8f0f5af53fcf3173867df.png +0 -0
- data/tools/staticdocs/assets/images/keycloak_user_roles-d4c78e2a5d33c4ea3016250d849b3363deccd21b9562561793b81981acf773fe.png +0 -0
- data/tools/staticdocs/assets/images/packages-72c40796a00462cca280fe6e87d6baa92f20a2efb378a0a1a60453827c4cd38f.png +0 -0
- data/tools/staticdocs/assets/images/plugins-2ecbde86aa0ef62523fb1d17c385551a2fd5ff6a8f2db890f67bfb7adf66973e.png +0 -0
- data/tools/staticdocs/assets/images/roles-37653453a2f2b704aacdf1c56c45d46b5fe56ac71c38a6d1fe29510fdc3ac203.png +0 -0
- data/tools/staticdocs/assets/images/scopes-dd892c6192160e86820a63d0d7798ed75eff4f96a4be9be0fb6bddebb82a9ddc.png +0 -0
- data/tools/staticdocs/assets/js/019369f3.4a1653c3.js +1 -0
- data/tools/staticdocs/assets/js/058ffc22.32f2b3f7.js +1 -0
- data/tools/staticdocs/assets/js/0686a885.a7333b95.js +1 -0
- data/tools/staticdocs/assets/js/078dbab0.64ae8502.js +1 -0
- data/tools/staticdocs/assets/js/0f5d161c.7e279344.js +1 -0
- data/tools/staticdocs/assets/js/0ff569c9.2aab45f2.js +1 -0
- data/tools/staticdocs/assets/js/10209fc9.4565c03f.js +1 -0
- data/tools/staticdocs/assets/js/103cc3be.6610d68d.js +1 -0
- data/tools/staticdocs/assets/js/13196248.d66fca61.js +1 -0
- data/tools/staticdocs/assets/js/13c1b4e4.5bb027bf.js +1 -0
- data/tools/staticdocs/assets/js/1c0a0c05.c66d2cd5.js +1 -0
- data/tools/staticdocs/assets/js/1e02e6a3.9bd7e41d.js +1 -0
- data/tools/staticdocs/assets/js/2047b354.57091c5c.js +1 -0
- data/tools/staticdocs/assets/js/22b3ac48.afad8999.js +1 -0
- data/tools/staticdocs/assets/js/{26b8abb2.858cb22d.js → 26b8abb2.dcaf4a64.js} +1 -1
- data/tools/staticdocs/assets/js/{3326.2db66e1b.js → 2754.1aabb61a.js} +1 -1
- data/tools/staticdocs/assets/js/2bb7bf90.417c7c24.js +1 -0
- data/tools/staticdocs/assets/js/2c15ad40.9ac78174.js +1 -0
- data/tools/staticdocs/assets/js/35398c5c.e106e87e.js +1 -0
- data/tools/staticdocs/assets/js/{3dd7ef3b.ceb26a04.js → 3dd7ef3b.d7f8b9cd.js} +1 -1
- data/tools/staticdocs/assets/js/40365d27.d9f50fa2.js +1 -0
- data/tools/staticdocs/assets/js/411898ad.2ba42394.js +1 -0
- data/tools/staticdocs/assets/js/{9623.44668503.js → 4212.6d8bdfa0.js} +1 -1
- data/tools/staticdocs/assets/js/42170351.067ef5bf.js +1 -0
- data/tools/staticdocs/assets/js/43652efd.658da795.js +1 -0
- data/tools/staticdocs/assets/js/4684.14bc5dde.js +1 -0
- data/tools/staticdocs/assets/js/{53ca7c5b.3ae5bb0f.js → 53ca7c5b.dfd52859.js} +1 -1
- data/tools/staticdocs/assets/js/{54d0d530.2f7aa091.js → 54d0d530.2cb8d081.js} +1 -1
- data/tools/staticdocs/assets/js/567dad64.2839bb3d.js +1 -0
- data/tools/staticdocs/assets/js/5738ba7a.d3cf18a7.js +1 -0
- data/tools/staticdocs/assets/js/59ed27a4.eb69cbc8.js +1 -0
- data/tools/staticdocs/assets/js/5b233ba7.c96c3512.js +1 -0
- data/tools/staticdocs/assets/js/5bc719f6.1ac7eb68.js +1 -0
- data/tools/staticdocs/assets/js/5c6ce5ec.507ee82d.js +1 -0
- data/tools/staticdocs/assets/js/{5e3ed378.821e5ed4.js → 5e3ed378.4df9c862.js} +1 -1
- data/tools/staticdocs/assets/js/5fe211ef.f88f4388.js +1 -0
- data/tools/staticdocs/assets/js/6822.e7d145ca.js +1 -0
- data/tools/staticdocs/assets/js/{6831b732.dc5bae56.js → 6831b732.e1f6dba2.js} +1 -1
- data/tools/staticdocs/assets/js/{696b4199.d197d085.js → 696b4199.ca5589ac.js} +1 -1
- data/tools/staticdocs/assets/js/6b210247.9645038a.js +1 -0
- data/tools/staticdocs/assets/js/6b65133b.e20fd90a.js +1 -0
- data/tools/staticdocs/assets/js/6f92e431.4af1d84b.js +1 -0
- data/tools/staticdocs/assets/js/72c6d8a8.33b4ade8.js +1 -0
- data/tools/staticdocs/assets/js/{5525.dd1645b0.js → 7453.c108c718.js} +1 -1
- data/tools/staticdocs/assets/js/75e64983.180a00e7.js +1 -0
- data/tools/staticdocs/assets/js/7724.decf13c5.js +1 -0
- data/tools/staticdocs/assets/js/867640d5.8e389f8a.js +1 -0
- data/tools/staticdocs/assets/js/89e76475.19eee62b.js +1 -0
- data/tools/staticdocs/assets/js/8b939c74.695b23ba.js +1 -0
- data/tools/staticdocs/assets/js/8f7843ee.fffd1922.js +1 -0
- data/tools/staticdocs/assets/js/9424f0b3.b69449bb.js +1 -0
- data/tools/staticdocs/assets/js/964eb012.ee8b3c36.js +1 -0
- data/tools/staticdocs/assets/js/97535711.237fc358.js +1 -0
- data/tools/staticdocs/assets/js/99581c43.0582936a.js +1 -0
- data/tools/staticdocs/assets/js/{9d6e81d0.879c9e9e.js → 9d6e81d0.2e825d3a.js} +1 -1
- data/tools/staticdocs/assets/js/9fb6059a.10a4e6be.js +1 -0
- data/tools/staticdocs/assets/js/a677c089.b21f50bd.js +1 -0
- data/tools/staticdocs/assets/js/a9987364.7fc39b81.js +1 -0
- data/tools/staticdocs/assets/js/a9b2dc27.a75a110f.js +1 -0
- data/tools/staticdocs/assets/js/aa6b6c1b.fe979b93.js +1 -0
- data/tools/staticdocs/assets/js/b062d239.17662e64.js +1 -0
- data/tools/staticdocs/assets/js/b38a6d74.8868b9d0.js +1 -0
- data/tools/staticdocs/assets/js/{b4596165.9e7f0be7.js → b4596165.2ed4461b.js} +1 -1
- data/tools/staticdocs/assets/js/b6d70f94.5c2fecd8.js +1 -0
- data/tools/staticdocs/assets/js/{b9f60ba6.63638354.js → b9f60ba6.b670205f.js} +1 -1
- data/tools/staticdocs/assets/js/bd0034eb.4f47d05b.js +1 -0
- data/tools/staticdocs/assets/js/c24eae19.59d90845.js +1 -0
- data/tools/staticdocs/assets/js/c956ad1e.78603023.js +1 -0
- data/tools/staticdocs/assets/js/cb8c3f08.2df335b2.js +1 -0
- data/tools/staticdocs/assets/js/cd879be4.c7304d91.js +1 -0
- data/tools/staticdocs/assets/js/cf1c01b8.0e7608a1.js +1 -0
- data/tools/staticdocs/assets/js/d1b923aa.9f1cb7ab.js +1 -0
- data/tools/staticdocs/assets/js/d1bfc316.61e55cb2.js +1 -0
- data/tools/staticdocs/assets/js/d24bf9b6.a79f1a36.js +1 -0
- data/tools/staticdocs/assets/js/d57a4b5d.1c05ac31.js +1 -0
- data/tools/staticdocs/assets/js/d59d8a14.849274f0.js +1 -0
- data/tools/staticdocs/assets/js/d5d77c37.efea20c9.js +1 -0
- data/tools/staticdocs/assets/js/d66bf9c0.742ff681.js +1 -0
- data/tools/staticdocs/assets/js/d8ca4191.1c930b0b.js +1 -0
- data/tools/staticdocs/assets/js/d9b92eba.df6e59c2.js +1 -0
- data/tools/staticdocs/assets/js/db8fa1d0.7f3090fa.js +1 -0
- data/tools/staticdocs/assets/js/dbe31111.2d5f3225.js +1 -0
- data/tools/staticdocs/assets/js/{dc5f7beb.c703e464.js → dc5f7beb.53bef49e.js} +1 -1
- data/tools/staticdocs/assets/js/e501b0d1.c2d8ca29.js +1 -0
- data/tools/staticdocs/assets/js/f15615f1.7cc36bfe.js +1 -0
- data/tools/staticdocs/assets/js/f75a5f33.bc43f96a.js +1 -0
- data/tools/staticdocs/assets/js/{fd886806.fb8a587e.js → fd886806.e52d2c97.js} +1 -1
- data/tools/staticdocs/assets/js/{main.2bcd58cc.js → main.1ae7ceb9.js} +6 -6
- data/tools/staticdocs/assets/js/runtime~main.44a60fd4.js +1 -0
- data/tools/staticdocs/docs/configuration/accessors.html +75 -75
- data/tools/staticdocs/docs/configuration/command.html +95 -95
- data/tools/staticdocs/docs/configuration/conversions.html +55 -55
- data/tools/staticdocs/docs/configuration/format.html +25 -25
- data/tools/staticdocs/docs/configuration/interfaces.html +81 -81
- data/tools/staticdocs/docs/configuration/limits-response.html +13 -13
- data/tools/staticdocs/docs/configuration/plugins.html +131 -131
- data/tools/staticdocs/docs/configuration/processors.html +22 -22
- data/tools/staticdocs/docs/configuration/protocols.html +80 -80
- data/tools/staticdocs/docs/configuration/ssl-tls.html +59 -59
- data/tools/staticdocs/docs/configuration/table.html +56 -56
- data/tools/staticdocs/docs/configuration/target.html +20 -20
- data/tools/staticdocs/docs/configuration/telemetry-screens.html +259 -259
- data/tools/staticdocs/docs/configuration/telemetry.html +90 -90
- data/tools/staticdocs/docs/configuration.html +2 -2
- data/tools/staticdocs/docs/development/curl.html +21 -21
- data/tools/staticdocs/docs/development/developing.html +31 -31
- data/tools/staticdocs/docs/development/json-api.html +23 -23
- data/tools/staticdocs/docs/development/log-structure.html +12 -12
- data/tools/staticdocs/docs/development/roadmap.html +5 -5
- data/tools/staticdocs/docs/development/streaming-api.html +63 -63
- data/tools/staticdocs/docs/development/testing.html +27 -27
- data/tools/staticdocs/docs/development.html +2 -2
- data/tools/staticdocs/docs/getting-started/cli.html +49 -43
- data/tools/staticdocs/docs/getting-started/generators.html +37 -37
- data/tools/staticdocs/docs/getting-started/gettingstarted.html +66 -66
- data/tools/staticdocs/docs/getting-started/installation.html +30 -30
- data/tools/staticdocs/docs/getting-started/key-concepts.html +35 -35
- data/tools/staticdocs/docs/getting-started/podman.html +41 -41
- data/tools/staticdocs/docs/getting-started/requirements.html +38 -38
- data/tools/staticdocs/docs/getting-started/upgrading.html +93 -93
- data/tools/staticdocs/docs/getting-started/util.html +112 -0
- data/tools/staticdocs/docs/getting-started.html +2 -2
- data/tools/staticdocs/docs/guides/bridges.html +25 -25
- data/tools/staticdocs/docs/guides/cfs.html +43 -43
- data/tools/staticdocs/docs/guides/custom-widgets.html +39 -39
- data/tools/staticdocs/docs/guides/dynamic-packets.html +12 -12
- data/tools/staticdocs/docs/guides/exposing-microservices.html +23 -23
- data/tools/staticdocs/docs/guides/little-endian-bitfields.html +8 -8
- data/tools/staticdocs/docs/guides/local-mode.html +14 -14
- data/tools/staticdocs/docs/guides/logging.html +11 -11
- data/tools/staticdocs/docs/guides/monitoring.html +20 -20
- data/tools/staticdocs/docs/guides/performance.html +21 -21
- data/tools/staticdocs/docs/guides/raspberrypi.html +42 -42
- data/tools/staticdocs/docs/guides/reference-architectures.html +19 -19
- data/tools/staticdocs/docs/guides/roles-permissions.html +191 -0
- data/tools/staticdocs/docs/guides/script-writing.html +108 -108
- data/tools/staticdocs/docs/guides/scripting-api.html +693 -693
- data/tools/staticdocs/docs/guides/troubleshooting.html +27 -27
- data/tools/staticdocs/docs/guides.html +2 -2
- data/tools/staticdocs/docs/meta/contributing.html +24 -24
- data/tools/staticdocs/docs/meta/licenses.html +42 -42
- data/tools/staticdocs/docs/meta/philosophy.html +9 -9
- data/tools/staticdocs/docs/meta/vulnerabilities.html +8 -0
- data/tools/staticdocs/docs/meta/xtce.html +85 -85
- data/tools/staticdocs/docs/meta.html +2 -2
- data/tools/staticdocs/docs/privacy.html +18 -18
- data/tools/staticdocs/docs/tools/admin.html +32 -26
- data/tools/staticdocs/docs/tools/autonomic.html +19 -19
- data/tools/staticdocs/docs/tools/bucket-explorer.html +11 -11
- data/tools/staticdocs/docs/tools/calendar.html +27 -27
- data/tools/staticdocs/docs/tools/cmd-sender.html +19 -19
- data/tools/staticdocs/docs/tools/cmd-tlm-server.html +29 -29
- data/tools/staticdocs/docs/tools/command-history.html +7 -7
- data/tools/staticdocs/docs/tools/command-queue.html +12 -12
- data/tools/staticdocs/docs/tools/data-extractor.html +33 -33
- data/tools/staticdocs/docs/tools/data-viewer.html +13 -13
- data/tools/staticdocs/docs/tools/handbooks.html +5 -5
- data/tools/staticdocs/docs/tools/limits-monitor.html +22 -22
- data/tools/staticdocs/docs/tools/log-explorer.html +20 -20
- data/tools/staticdocs/docs/tools/packet-viewer.html +20 -20
- data/tools/staticdocs/docs/tools/script-runner.html +58 -58
- data/tools/staticdocs/docs/tools/systemhealth.html +26 -26
- data/tools/staticdocs/docs/tools/table-manager.html +17 -17
- data/tools/staticdocs/docs/tools/tlm-grapher.html +28 -28
- data/tools/staticdocs/docs/tools/tlm-viewer.html +18 -18
- data/tools/staticdocs/docs/tools.html +2 -2
- data/tools/staticdocs/docs.html +12 -12
- data/tools/staticdocs/img/admin/packages.png +0 -0
- data/tools/staticdocs/img/admin/plugins.png +0 -0
- data/tools/staticdocs/img/admin/roles.png +0 -0
- data/tools/staticdocs/img/admin/scopes.png +0 -0
- data/tools/staticdocs/img/calendar/calendar.png +0 -0
- data/tools/staticdocs/img/command_queue/command_queue.png +0 -0
- data/tools/staticdocs/img/guides/roles-permissions/add_role.png +0 -0
- data/tools/staticdocs/img/guides/roles-permissions/edit_role.png +0 -0
- data/tools/staticdocs/img/guides/roles-permissions/keycloak_user_roles.png +0 -0
- data/tools/staticdocs/index.html +2 -2
- data/tools/staticdocs/lunr-index-1762372934557.json +1 -0
- data/tools/staticdocs/lunr-index.json +1 -1
- data/tools/staticdocs/markdown-page.html +3 -3
- data/tools/staticdocs/search-doc-1762372934557.json +1 -0
- data/tools/staticdocs/search-doc.json +1 -1
- data/tools/staticdocs/sitemap.xml +1 -1
- metadata +109 -93
- data/tools/staticdocs/assets/images/command_queue-1a7f929500f5b51d87c653b83236b886fa2d348127a986d294813de5c52ff80b.png +0 -0
- data/tools/staticdocs/assets/images/packages-3bfae1a91b0534077280c323a40e879a8ac6a7c3ac45376b3c706a098dab12c3.png +0 -0
- data/tools/staticdocs/assets/images/plugins-aabbe060bec19e6fa2490b737f20758af9000066121f5af85f260a3b14f9b3d8.png +0 -0
- data/tools/staticdocs/assets/js/019369f3.64763f3d.js +0 -1
- data/tools/staticdocs/assets/js/058ffc22.4be515f5.js +0 -1
- data/tools/staticdocs/assets/js/0686a885.3d58085e.js +0 -1
- data/tools/staticdocs/assets/js/078dbab0.f2cbcc66.js +0 -1
- data/tools/staticdocs/assets/js/0f5d161c.978b9fee.js +0 -1
- data/tools/staticdocs/assets/js/0ff569c9.27128023.js +0 -1
- data/tools/staticdocs/assets/js/10209fc9.669ef887.js +0 -1
- data/tools/staticdocs/assets/js/103cc3be.1a538098.js +0 -1
- data/tools/staticdocs/assets/js/13196248.e93bfd65.js +0 -1
- data/tools/staticdocs/assets/js/13c1b4e4.9735bb59.js +0 -1
- data/tools/staticdocs/assets/js/1c0a0c05.427f2699.js +0 -1
- data/tools/staticdocs/assets/js/1e02e6a3.da7b7250.js +0 -1
- data/tools/staticdocs/assets/js/2047b354.c86efa5f.js +0 -1
- data/tools/staticdocs/assets/js/22b3ac48.1932e5a5.js +0 -1
- data/tools/staticdocs/assets/js/2bb7bf90.78594fbb.js +0 -1
- data/tools/staticdocs/assets/js/2c15ad40.1b2d4730.js +0 -1
- data/tools/staticdocs/assets/js/3402.80344ef5.js +0 -1
- data/tools/staticdocs/assets/js/35398c5c.8a74eece.js +0 -1
- data/tools/staticdocs/assets/js/40365d27.f6769d57.js +0 -1
- data/tools/staticdocs/assets/js/4071.821f3b2b.js +0 -1
- data/tools/staticdocs/assets/js/411898ad.8ed3452c.js +0 -1
- data/tools/staticdocs/assets/js/42170351.7ff72adc.js +0 -1
- data/tools/staticdocs/assets/js/43652efd.ec6bb7e9.js +0 -1
- data/tools/staticdocs/assets/js/59ed27a4.695b2435.js +0 -1
- data/tools/staticdocs/assets/js/5b233ba7.b0d1a8b1.js +0 -1
- data/tools/staticdocs/assets/js/5bc719f6.c731b998.js +0 -1
- data/tools/staticdocs/assets/js/5c6ce5ec.211ced47.js +0 -1
- data/tools/staticdocs/assets/js/5fe211ef.9d68057c.js +0 -1
- data/tools/staticdocs/assets/js/6246.60dfff30.js +0 -1
- data/tools/staticdocs/assets/js/6b210247.d400f853.js +0 -1
- data/tools/staticdocs/assets/js/6b65133b.3550bdf0.js +0 -1
- data/tools/staticdocs/assets/js/6f92e431.0bc45585.js +0 -1
- data/tools/staticdocs/assets/js/72c6d8a8.1bbde831.js +0 -1
- data/tools/staticdocs/assets/js/75e64983.338d2338.js +0 -1
- data/tools/staticdocs/assets/js/867640d5.555ba5ca.js +0 -1
- data/tools/staticdocs/assets/js/89e76475.a301b5e3.js +0 -1
- data/tools/staticdocs/assets/js/8b939c74.0ebaed2a.js +0 -1
- data/tools/staticdocs/assets/js/8f7843ee.e33ef7db.js +0 -1
- data/tools/staticdocs/assets/js/9424f0b3.4b6f004e.js +0 -1
- data/tools/staticdocs/assets/js/964eb012.c7f626c5.js +0 -1
- data/tools/staticdocs/assets/js/97535711.a6342866.js +0 -1
- data/tools/staticdocs/assets/js/99581c43.2bd0766d.js +0 -1
- data/tools/staticdocs/assets/js/9fb6059a.ce4de002.js +0 -1
- data/tools/staticdocs/assets/js/a677c089.758701f0.js +0 -1
- data/tools/staticdocs/assets/js/a9987364.e29e8a93.js +0 -1
- data/tools/staticdocs/assets/js/a9b2dc27.b7e66efd.js +0 -1
- data/tools/staticdocs/assets/js/aa6b6c1b.b566ee29.js +0 -1
- data/tools/staticdocs/assets/js/b062d239.2cebb42b.js +0 -1
- data/tools/staticdocs/assets/js/b38a6d74.bb58fcec.js +0 -1
- data/tools/staticdocs/assets/js/b6d70f94.5e40680e.js +0 -1
- data/tools/staticdocs/assets/js/bd0034eb.9f460215.js +0 -1
- data/tools/staticdocs/assets/js/c24eae19.2ef0c706.js +0 -1
- data/tools/staticdocs/assets/js/cb8c3f08.28d962a4.js +0 -1
- data/tools/staticdocs/assets/js/cd879be4.782edb7f.js +0 -1
- data/tools/staticdocs/assets/js/cf1c01b8.7d5b6d66.js +0 -1
- data/tools/staticdocs/assets/js/d1b923aa.c012712f.js +0 -1
- data/tools/staticdocs/assets/js/d1bfc316.13a64896.js +0 -1
- data/tools/staticdocs/assets/js/d24bf9b6.bb93853a.js +0 -1
- data/tools/staticdocs/assets/js/d57a4b5d.e9712631.js +0 -1
- data/tools/staticdocs/assets/js/d59d8a14.79f4b29e.js +0 -1
- data/tools/staticdocs/assets/js/d5d77c37.e29ff552.js +0 -1
- data/tools/staticdocs/assets/js/d66bf9c0.ca34a583.js +0 -1
- data/tools/staticdocs/assets/js/d8ca4191.599a241b.js +0 -1
- data/tools/staticdocs/assets/js/d9b92eba.44fde84d.js +0 -1
- data/tools/staticdocs/assets/js/db8fa1d0.39b9fdb6.js +0 -1
- data/tools/staticdocs/assets/js/dbe31111.4e811739.js +0 -1
- data/tools/staticdocs/assets/js/e501b0d1.c00adfa4.js +0 -1
- data/tools/staticdocs/assets/js/f15615f1.8591b830.js +0 -1
- data/tools/staticdocs/assets/js/f75a5f33.f16b6dd5.js +0 -1
- data/tools/staticdocs/assets/js/runtime~main.0b4f5e9a.js +0 -1
- data/tools/staticdocs/lunr-index-1759687174225.json +0 -1
- data/tools/staticdocs/search-doc-1759687174225.json +0 -1
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/podman" data-has-hydrated=false><head><meta charset=UTF-8><meta name=generator content="Docusaurus v3.9.
|
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/podman" data-has-hydrated=false><head><meta charset=UTF-8><meta name=generator content="Docusaurus v3.9.2"><title data-rh=true>Podman | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"/><meta data-rh=true name=twitter:card content=summary_large_image /><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman /><meta data-rh=true property=og:locale content=en /><meta data-rh=true name=docusaurus_locale content=en /><meta data-rh=true name=docsearch:language content=en /><meta data-rh=true name=docusaurus_version content=current /><meta data-rh=true name=docusaurus_tag content=docs-default-current /><meta data-rh=true name=docsearch:version content=current /><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current /><meta data-rh=true property=og:title content="Podman | OpenC3 Docs"/><meta data-rh=true name=description content="Installing and running COSMOS with Podman"/><meta data-rh=true property=og:description content="Installing and running COSMOS with Podman"/><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png /><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman /><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman hreflang=en /><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman hreflang=x-default /><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman","name":"Podman","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.41902cce.css /><script src=/tools/staticdocs/assets/js/runtime~main.44a60fd4.js defer></script><script src=/tools/staticdocs/assets/js/main.1ae7ceb9.js defer></script></head><body class=navigation-with-keyboard><svg style="display: none;"><defs>
|
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
|
3
3
|
</defs></svg>
|
|
4
|
-
<script>!function(){var t;document.documentElement.setAttribute("data-theme",t||"dark"),document.documentElement.setAttribute("data-theme-choice",t||"dark")}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg /><div role=region aria-label="Skip to main content"><a class=
|
|
5
|
-
<div class="theme-admonition theme-admonition-info
|
|
4
|
+
<script>!function(){var t;document.documentElement.setAttribute("data-theme",t||"dark"),document.documentElement.setAttribute("data-theme-choice",t||"dark")}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg /><div role=region aria-label="Skip to main content"><a class=skipToContent_Ad3x href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_iYMB themedComponent--light__u60"/><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_iYMB themedComponent--dark_bnZ2"/></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_BlpL><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled/></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_LBOZ"><div class=docsWrapper_fTY1><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_yH7o" type=button></button><div class=docRoot_stlz><aside class="theme-doc-sidebar-container docSidebarContainer_GDN6"><div class=sidebarViewport_N1UE><div class=sidebar_dl38><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu___bF"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs><span title=Introduction class=linkLabel_XLMJ>Introduction</span></a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started><span title="Getting Started" class=categoryLinkLabel_RXyj>Getting Started</span></a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts><span title="Key Concepts" class=linkLabel_XLMJ>Key Concepts</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation><span title=Installation class=linkLabel_XLMJ>Installation</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted><span title="Getting Started" class=linkLabel_XLMJ>Getting Started</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading><span title=Upgrading class=linkLabel_XLMJ>Upgrading</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli><span title="Command Line Interface" class=linkLabel_XLMJ>Command Line Interface</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/util><span title="Utility Commands" class=linkLabel_XLMJ>Utility Commands</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators><span title="Code Generators" class=linkLabel_XLMJ>Code Generators</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/podman><span title=Podman class=linkLabel_XLMJ>Podman</span></a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements><span title="Requirements and Design" class=linkLabel_XLMJ>Requirements and Design</span></a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration><span title=Configuration class=categoryLinkLabel_RXyj>Configuration</span></a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools><span title=Tools class=categoryLinkLabel_RXyj>Tools</span></a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides><span title=Guides class=categoryLinkLabel_RXyj>Guides</span></a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist" href=/tools/staticdocs/docs/development><span title=Development class=categoryLinkLabel_RXyj>Development</span></a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="categoryLink_u_d3 menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta><span title=Meta class=categoryLinkLabel_RXyj>Meta</span></a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy><span title="OpenC3, Inc. Privacy Policy" class=linkLabel_XLMJ>OpenC3, Inc. Privacy Policy</span></a></ul></nav></div></div></aside><main class=docMainContainer_I77d><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_Vt7O"><div class=docItemContainer_E44C><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_j0mV" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_bFVZ><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Podman</span></ul></nav><div class="tocCollapsible_XYrz theme-doc-toc-mobile tocMobile_SBzZ"><button type=button class="clean-btn tocCollapsibleButton_hLJL">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Podman</h1></header><h3 class="anchor anchorTargetStickyNavbar_BQm5" id=openc3-cosmos-using-rootless-podman-and-docker-compose>OpenC3 COSMOS Using Rootless Podman and Docker-Compose<a href=#openc3-cosmos-using-rootless-podman-and-docker-compose class=hash-link aria-label="Direct link to OpenC3 COSMOS Using Rootless Podman and Docker-Compose" title="Direct link to OpenC3 COSMOS Using Rootless Podman and Docker-Compose" translate=no></a></h3>
|
|
5
|
+
<div class="theme-admonition theme-admonition-info admonition_C0T0 alert alert--info"><div class=admonitionHeading_mLyw><span class=admonitionIcon_OyK8><svg viewBox="0 0 14 16"><path fill-rule=evenodd d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"/></svg></span>Optional Installation Option</div><div class=admonitionContent_AIhD><p>These directions are for installing and running COSMOS using Podman instead of Docker. If you have Docker available, that is a simpler method.</div></div>
|
|
6
6
|
<p>Podman is an alternative container technology to Docker that is actively promoted by RedHat. The key benefit is that Podman can run without a root-level daemon service, making it significantly more secure by design, over standard Docker. However, it is a little more complicated to use. These directions will get you up and running with Podman. The following directions have been tested against RHEL 8.8, and RHEL 9.2, but should be similar on other operating systems.</p>
|
|
7
|
-
<div class="theme-admonition theme-admonition-warning
|
|
7
|
+
<div class="theme-admonition theme-admonition-warning admonition_C0T0 alert alert--warning"><div class=admonitionHeading_mLyw><span class=admonitionIcon_OyK8><svg viewBox="0 0 16 16"><path fill-rule=evenodd d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"/></svg></span>Rootless Podman Does Not Work (Directly) with NFS Home Directories</div><div class=admonitionContent_AIhD><p>NFS does not work for holding container storage due to issues with user ids and group ids. There are workarounds available but they all involve moving container storage to another location: either a different partition on the host local disk, or into a special mounted disk image. See: [<a href=https://www.redhat.com/sysadmin/rootless-podman-nfs target=_blank rel="noopener noreferrer" class="">https://www.redhat.com/sysadmin/rootless-podman-nfs</a>]<a href=https://www.redhat.com/sysadmin/rootless-podman-nfs target=_blank rel="noopener noreferrer" class="">https://www.redhat.com/sysadmin/rootless-podman-nfs</a>). Note that there is also a newish Podman setting that allows you to more easily change where the storage location is in /etc/containers/storage.conf called rootless_storage_path. See <a href=https://www.redhat.com/sysadmin/nfs-rootless-podman target=_blank rel="noopener noreferrer" class="">https://www.redhat.com/sysadmin/nfs-rootless-podman</a></div></div>
|
|
8
8
|
<h1>Redhat 8.8 and 9.2 Instructions</h1>
|
|
9
9
|
<ol>
|
|
10
|
-
<li>
|
|
10
|
+
<li class="">
|
|
11
11
|
<p>Install Prerequisite Packages</p>
|
|
12
12
|
<p>Note: This downloads and installs docker-compose from the latest 2.x release on Github. If your operating system has a docker-compose package, it will be easier to install using that instead. RHEL8 does not have a docker-compose package.</p>
|
|
13
|
-
<div class="language-bash
|
|
13
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> yum update</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> yum </span><span class="token function" style="color:rgb(130, 170, 255)">install</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">git</span><span class="token plain"> podman-docker netavark</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-SL</span><span class="token plain"> https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-linux-x86_64 </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-o</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">docker-compose</span><span class="token plain"></span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">mv</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">docker-compose</span><span class="token plain"> /usr/local/bin/docker-compose</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">chmod</span><span class="token plain"> +x /usr/local/bin/docker-compose</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">ln</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-s</span><span class="token plain"> /usr/local/bin/docker-compose /usr/bin/docker-compose</span><br/></span></code></pre></div></div>
|
|
14
14
|
</li>
|
|
15
|
-
<li>
|
|
15
|
+
<li class="">
|
|
16
16
|
<p>Configure Host OS for Redis</p>
|
|
17
|
-
<div class="language-bash
|
|
17
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">su</span><span class="token plain"></span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">echo</span><span class="token plain"> never </span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> /sys/kernel/mm/transparent_hugepage/enabled</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">echo</span><span class="token plain"> never </span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> /sys/kernel/mm/transparent_hugepage/defrag</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sysctl</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-w</span><span class="token plain"> </span><span class="token assign-left variable" style="color:rgb(214, 222, 235)">vm.max_map_count</span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token number" style="color:rgb(247, 140, 108)">262144</span><span class="token plain"></span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">exit</span><br/></span></code></pre></div></div>
|
|
18
18
|
</li>
|
|
19
|
-
<li>
|
|
19
|
+
<li class="">
|
|
20
20
|
<p>Configure Podman to increase the PID limit</p>
|
|
21
|
-
<div class="language-bash
|
|
21
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">cp</span><span class="token plain"> /usr/share/containers/containers.conf /etc/containers/.</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> /etc/containers/containers.conf</span><br/></span></code></pre></div></div>
|
|
22
22
|
<p>Then edit the <code>pids_limit</code> value to -1 (unlimited)</p>
|
|
23
23
|
</li>
|
|
24
|
-
<li>
|
|
24
|
+
<li class="">
|
|
25
25
|
<p>Configure Podman to use Netavark for DNS</p>
|
|
26
|
-
<div class="language-bash
|
|
26
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">sh</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-c</span><span class="token plain"> </span><span class="token string" style="color:rgb(173, 219, 103)">'echo ip_tables > /etc/modules-load.d/ip_tables.conf'</span><span class="token plain"></span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> /etc/containers/containers.conf</span><br/></span></code></pre></div></div>
|
|
27
27
|
<p>Then edit the network_backend line to be "netavark" instead of "cni"</p>
|
|
28
28
|
</li>
|
|
29
29
|
</ol>
|
|
30
|
-
<div class="theme-admonition theme-admonition-warning
|
|
30
|
+
<div class="theme-admonition theme-admonition-warning admonition_C0T0 alert alert--warning"><div class=admonitionHeading_mLyw><span class=admonitionIcon_OyK8><svg viewBox="0 0 16 16"><path fill-rule=evenodd d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"/></svg></span>Netavark needs the ip_tables module</div><div class=admonitionContent_AIhD><p>The above "echo ip_tables" line is added because RHEL 9.x uses nftables by default. The legacy ip_tables kernel module is not guaranteed to be loaded at boot — particularly on cloud images such as AWS EC2. However, netavark still requires ip_tables to implement NAT and forwarding for rootless Podman containers. Rootless users cannot load kernel modules, so if ip_tables is missing, netavark networking fails silently. If using rootless Podman with netavark ensure the ip_tables kernel module is preload.</div></div>
|
|
31
31
|
<ol>
|
|
32
|
-
<li>
|
|
32
|
+
<li class="">
|
|
33
33
|
<p>Start rootless podman socket service</p>
|
|
34
|
-
<div class="language-bash
|
|
34
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token plain">systemctl </span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">enable</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--now</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--user</span><span class="token plain"> podman.socket</span><br/></span></code></pre></div></div>
|
|
35
35
|
</li>
|
|
36
|
-
<li>
|
|
36
|
+
<li class="">
|
|
37
37
|
<p>Put the following into your .bashrc file (or .bash_profile or whatever)</p>
|
|
38
|
-
<div class="language-bash
|
|
38
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token builtin class-name" style="color:rgb(255, 203, 139)">export</span><span class="token plain"> </span><span class="token assign-left variable" style="color:rgb(214, 222, 235)">DOCKER_HOST</span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token string" style="color:rgb(173, 219, 103)">"unix://</span><span class="token string environment constant" style="color:rgb(130, 170, 255)">$XDG_RUNTIME_DIR</span><span class="token string" style="color:rgb(173, 219, 103)">/podman/podman.sock"</span><br/></span></code></pre></div></div>
|
|
39
39
|
</li>
|
|
40
|
-
<li>
|
|
40
|
+
<li class="">
|
|
41
41
|
<p>Source the profile file for your current terminal</p>
|
|
42
|
-
<div class="language-bash
|
|
42
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token builtin class-name" style="color:rgb(255, 203, 139)">source</span><span class="token plain"> .bashrc</span><br/></span></code></pre></div></div>
|
|
43
43
|
</li>
|
|
44
|
-
<li>
|
|
44
|
+
<li class="">
|
|
45
45
|
<p>Get COSMOS - A release or the current main branch (main branch shown)</p>
|
|
46
|
-
<div class="language-bash
|
|
46
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">git</span><span class="token plain"> clone https://github.com/OpenC3/cosmos.git</span><br/></span></code></pre></div></div>
|
|
47
47
|
</li>
|
|
48
|
-
<li>
|
|
48
|
+
<li class="">
|
|
49
49
|
<p>Optional - Set Default Container Registry</p>
|
|
50
50
|
<p>If you don't want podman to keep querying you for which registry to use, you can create a $HOME/.config/containers/registries.conf and modify to just have the main docker registry (or modify the /etc/containers/registries.conf file directly)</p>
|
|
51
|
-
<div class="language-bash
|
|
51
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">mkdir</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-p</span><span class="token plain"> </span><span class="token environment constant" style="color:rgb(130, 170, 255)">$HOME</span><span class="token plain">/.config/containers</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">cp</span><span class="token plain"> /etc/containers/registries.conf </span><span class="token environment constant" style="color:rgb(130, 170, 255)">$HOME</span><span class="token plain">/.config/containers/.</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> </span><span class="token environment constant" style="color:rgb(130, 170, 255)">$HOME</span><span class="token plain">/.config/containers/registries.conf</span><br/></span></code></pre></div></div>
|
|
52
52
|
<p>Then edit the unqualified-search-registries = line to just have the registry you care about (probably docker.io)</p>
|
|
53
53
|
</li>
|
|
54
|
-
<li>
|
|
54
|
+
<li class="">
|
|
55
55
|
<p>Edit cosmos/compose.yaml</p>
|
|
56
|
-
<div class="language-bash
|
|
56
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token builtin class-name" style="color:rgb(255, 203, 139)">cd</span><span class="token plain"> cosmos</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> compose.yaml</span><br/></span></code></pre></div></div>
|
|
57
57
|
<p>Edit compose.yaml and uncomment the user: 0:0 lines and comment the user: <code>"${OPENC3_USER_ID}:${OPENC3_GROUP_ID}"</code> lines.
|
|
58
58
|
You may also want to update the traefik configuration to allow access from the internet by removing 127.0.0.1 and probably switching to either an SSL config file, or the allow http one. Also make sure your firewall allows
|
|
59
59
|
whatever port you choose to use in. Rootless podman will need to use a higher numbered port (not 1-1023).</p>
|
|
60
60
|
</li>
|
|
61
|
-
<li>
|
|
61
|
+
<li class="">
|
|
62
62
|
<p>Run COSMOS</p>
|
|
63
|
-
<div class="language-bash
|
|
63
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token plain">./openc3.sh run</span><br/></span></code></pre></div></div>
|
|
64
64
|
</li>
|
|
65
|
-
<li>
|
|
66
|
-
<p>Wait until everything is built and running and then goto <a href=http://localhost:2900 target=_blank rel="noopener noreferrer">http://localhost:2900</a> in your browser</p>
|
|
65
|
+
<li class="">
|
|
66
|
+
<p>Wait until everything is built and running and then goto <a href=http://localhost:2900 target=_blank rel="noopener noreferrer" class="">http://localhost:2900</a> in your browser</p>
|
|
67
67
|
</li>
|
|
68
68
|
</ol>
|
|
69
|
-
<div class="theme-admonition theme-admonition-info
|
|
70
|
-
<h2 class="anchor
|
|
69
|
+
<div class="theme-admonition theme-admonition-info admonition_C0T0 alert alert--info"><div class=admonitionHeading_mLyw><span class=admonitionIcon_OyK8><svg viewBox="0 0 14 16"><path fill-rule=evenodd d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"/></svg></span>Podman on MacOS</div><div class=admonitionContent_AIhD><p>Podman can also be used on MacOS, though we still generally recommend Docker Desktop</div></div>
|
|
70
|
+
<h2 class="anchor anchorTargetStickyNavbar_BQm5" id=macos-instructions>MacOS Instructions<a href=#macos-instructions class=hash-link aria-label="Direct link to MacOS Instructions" title="Direct link to MacOS Instructions" translate=no></a></h2>
|
|
71
71
|
<ol>
|
|
72
|
-
<li>
|
|
72
|
+
<li class="">
|
|
73
73
|
<p>Install podman</p>
|
|
74
|
-
<div class="language-bash
|
|
74
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token plain">brew </span><span class="token function" style="color:rgb(130, 170, 255)">install</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">podman</span><br/></span></code></pre></div></div>
|
|
75
75
|
</li>
|
|
76
|
-
<li>
|
|
76
|
+
<li class="">
|
|
77
77
|
<p>Start the podman virtual machine</p>
|
|
78
|
-
<div class="language-bash
|
|
78
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">podman</span><span class="token plain"> machine init</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">podman</span><span class="token plain"> machine start</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic"># Note: update to your username in the next line or copy paste from what 'podman machine start' says</span><span class="token plain"></span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">export</span><span class="token plain"> </span><span class="token assign-left variable" style="color:rgb(214, 222, 235)">DOCKER_HOST</span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token string" style="color:rgb(173, 219, 103)">'unix:///Users/ryanmelt/.local/share/containers/podman/machine/qemu/podman.sock'</span><br/></span></code></pre></div></div>
|
|
79
79
|
</li>
|
|
80
|
-
<li>
|
|
80
|
+
<li class="">
|
|
81
81
|
<p>Install docker-compose</p>
|
|
82
|
-
<div class="language-bash
|
|
82
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token plain">brew </span><span class="token function" style="color:rgb(130, 170, 255)">install</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">docker-compose</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic"># Optional if you already have Docker Desktop</span><br/></span></code></pre></div></div>
|
|
83
83
|
</li>
|
|
84
|
-
<li>
|
|
84
|
+
<li class="">
|
|
85
85
|
<p>Edit cosmos/compose.yaml</p>
|
|
86
86
|
<p>Edit compose.yaml and uncomment the user: 0:0 lines and comment the user: <code>"${OPENC3_USER_ID}:${OPENC3_GROUP_ID}"</code> lines.</p>
|
|
87
87
|
<p>Important: on MacOS you must also remove all <!-- -->:z<!-- --> from the volume mount lines</p>
|
|
88
88
|
<p>You may also want to update the traefik configuration to allow access from the internet.</p>
|
|
89
89
|
</li>
|
|
90
|
-
<li>
|
|
90
|
+
<li class="">
|
|
91
91
|
<p>Run COSMOS</p>
|
|
92
|
-
<div class="language-bash
|
|
92
|
+
<div class="language-bash codeBlockContainer_LH35 theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_mFD5><pre tabindex=0 class="prism-code language-bash codeBlock_RQxj thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_WS_B><span class=token-line style=color:#d6deeb><span class="token builtin class-name" style="color:rgb(255, 203, 139)">cd</span><span class="token plain"> cosmos</span><br/></span><span class=token-line style=color:#d6deeb><span class="token plain">./openc3.sh run</span><br/></span></code></pre></div></div>
|
|
93
93
|
</li>
|
|
94
|
-
</ol></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class=col><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/getting-started/podman.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=
|
|
94
|
+
</ol></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class="col noPrint_yVnS"><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/getting-started/podman.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=iconEdit_ilel aria-hidden=true><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"/></g></svg>Edit this page</a></div><div class="col lastUpdated_UZ1E"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href=/tools/staticdocs/docs/getting-started/generators><div class=pagination-nav__sublabel>Previous</div><div class=pagination-nav__label>Code Generators</div></a><a class="pagination-nav__link pagination-nav__link--next" href=/tools/staticdocs/docs/getting-started/requirements><div class=pagination-nav__sublabel>Next</div><div class=pagination-nav__label>Requirements and Design</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_Ka_U thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href=#openc3-cosmos-using-rootless-podman-and-docker-compose class="table-of-contents__link toc-highlight">OpenC3 COSMOS Using Rootless Podman and Docker-Compose</a><li><a href=#macos-instructions class="table-of-contents__link toc-highlight">MacOS Instructions</a></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Homepage</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://openc3.com target=_blank rel="noopener noreferrer" class=footer__link-item>Home</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Docs</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs>Documentation</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://www.linkedin.com/company/openc3 target=_blank rel="noopener noreferrer" class=footer__link-item>LinkedIn<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_IsiZ><use href=#theme-svg-external-link /></svg></a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/OpenC3/cosmos target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_IsiZ><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs/privacy>Privacy</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © 2025 OpenC3, Inc.</div></div></div></footer></div></body>
|