| <!doctype html><html itemscope itemtype=http://schema.org/WebPage lang=en class=no-js><head><script>(function(){const t=localStorage.getItem("theme");t==="dark"?document.documentElement.classList.add("dark-mode"):t==="light"&&document.documentElement.classList.remove("dark-mode");const n=document.documentElement.classList.contains("dark-mode"),e=document.getElementById("theme-icon");e&&(e.classList&&e.classList.toggle("fa-sun",!n),e.classList&&e.classList.toggle("fa-moon",n))})()</script><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=alternate type=text/html href=/docs/installation/prereq/server/generic/_print/><link rel=alternate type=application/rss+xml href=/docs/installation/prereq/server/generic/index.xml><meta name=robots content="index, follow"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons/favicon-32x32.png sizes=32x32><link rel=icon type=image/png href=/favicons/android-36x36.png sizes=36x36><link rel=icon type=image/png href=/favicons/android-48x48.png sizes=48x48><link rel=icon type=image/png href=/favicons/android-72x72.png sizes=72x72><link rel=icon type=image/png href=/favicons/android-96x96.png sizes=96x96><link rel=icon type=image/png href=/favicons/android-144x144.png sizes=144x144><link rel=icon type=image/png href=/favicons/android-192x192.png sizes=192x192><title>SSH and Sudo | Apache OpenServerless™</title> |
| <meta name=description content="General prerequisites to install OpenServerless"><meta property="og:url" content="/docs/installation/prereq/server/generic/"><meta property="og:site_name" content="Apache OpenServerless™"><meta property="og:title" content="SSH and Sudo"><meta property="og:description" content="General prerequisites to install OpenServerless"><meta property="og:locale" content="en"><meta property="og:type" content="website"><meta itemprop=name content="SSH and Sudo"><meta itemprop=description content="General prerequisites to install OpenServerless"><meta itemprop=dateModified content="2025-08-01T16:51:57+02:00"><meta itemprop=wordCount content="486"><meta name=twitter:card content="summary"><meta name=twitter:title content="SSH and Sudo"><meta name=twitter:description content="General prerequisites to install OpenServerless"><link rel=preload href=/scss/main.min.63d3665407fbf8c19373c7376d20ae27b458d1c085cc6645b75d65bbf044b537.css as=style><link href=/scss/main.min.63d3665407fbf8c19373c7376d20ae27b458d1c085cc6645b75d65bbf044b537.css rel=stylesheet integrity><script src=/js/jquery-3.7.1.min.js></script><script defer src=/js/lunr-2.3.9.min.js></script><link rel=stylesheet href=/css/prism.css></head><body class=td-section><header><nav class="td-navbar js-navbar-scroll" data-bs-theme=dark><div class="container-fluid flex-column flex-md-row"><a class=navbar-brand href=/><span class="navbar-brand__logo navbar-logo"><svg viewBox="0 0 1024 781"><g stroke-width="2" fill="none" stroke-linecap="butt"><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M438.8 120.98Q435.57 121.88 434.78 122.21 431.12 123.7 423.21 127.52"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M423.21 127.52C416.56 130.57 409.18 133.39 403.28 136.68Q394.42 141.62 387.66 147.15 379.83 153.54 367.83 164.27C360.8 170.55 354.15 177.8 347.45 184.72"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M347.45 184.72 342.5 189.88Q342.21 190.18 341.84 190.38 341.07 190.8 341.03 191.71 341.01 192.11 340.65 191.92 340.53 191.86 340.4 191.9 339.91 192.07 339.71 192.6 339.03 194.41 337.73 195.89 337.39 196.28 337.81 195.97 337.86 195.93 337.92 195.9 338.54 195.6 338.12 196.15 335.04 200.12 332.21 203.99 332.03 204.23 331.79 204.04L331.46 203.78Q331.41 203.74 331.44 203.69 332.29 202.33 333.12 201.24 333.2 201.13 333.11 201 333.07 200.95 333.03 201 332.05 202.53 330.7 203.79 330.54 203.94 330.75 203.87 330.79 203.85 330.84 203.87 331.05 203.97 331.06 204.2 331.13 205.63 329.99 206.5A1.85 1.78 81.9 00329.4 207.32Q329.06 208.29 328.39 209.14 328.09 209.52 327.61 209.58 325.89 209.82 326 211.78A1.3 1.27-28 01325.72 212.66Q324.07 214.8 323.12 217.7"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M323.12 217.7 318.02 228.46"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M318.02 228.46Q313.27 234.86 311.76 237.75 309.37 242.33 305.99 252.05 304.46 256.44 305.93 254.25"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M305.93 254.25Q305.62 255.63 304.89 256.82 304.77 257.01 304.97 257.12L305.2 257.24Q305.23 257.26 305.24 257.22 306.13 255.05 307.26 252.78 307.34 252.62 307.51 252.71L307.73 252.82Q307.75 252.84 307.74 252.86 306.25 255.22 305.41 257.9 304.19 261.82 302.64 265.97 302.35 266.75 301.89 267.38C300.98 268.59 301.07 270.27 300.39 271.68Q299.06 274.47 298.36 277.53 298.26 277.97 297.92 278.28 297.32 278.84 297.16 279.76 296.53 283.42 295.29 287.79C294.38 290.99 294.69 294.16 293.83 297.36 292.99 300.5 293.12 303.75 292.59 306.9Q290.82 317.42 290.83 332.15C290.83 348.21 291.88 362.54 296.59 377.96Q298.48 384.15 300.49 390.37 301.18 392.52 299.65 390.86 298.11 389.19 295.54 387.72 290.29 384.72 285.05 381.84"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M285.05 381.84Q283.43 380.56 281.9 380.1C279.89 379.5 278.26 378.64 276.39 378.23 274.28 377.77 271.98 376.83 270.21 376.37Q255.65 372.58 240.43 373.13"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M240.43 373.13Q233.74 372.8 227 373.57 218.25 374.57 209.52 375.73 205.54 376.26 202.03 377.1 198.41 377.96 194.65 378.96 194.3 379.05 194.13 379.39A.74.72-79.5 01193.55 379.8Q189.92 380.15 187.2 381.49 184.73 382.71 182.18 383.81 179.39 385.01 177.01 386.52q-10.2 6.5-21.71 15.23-11.53 8.75-19.24 19.06C135.77 421.2 135.78 421.58 135.55 421.95Q132.47 426.87 128.69 431.08 125.96 434.1 123.91 437.19 121.72 440.47 119.57 443.8 119.26 444.28 119.09 444.83 118.95 445.24 118.63 445.53 116.84 447.17 116 449.6A1.7 1.69 80.4 01115.47 450.35Q115.1 450.66 114.87 451.08 111.96 456.46 110.57 460.85 109.15 465.35 107.7 469.25 104.74 477.22 102.44 485.43 102.33 485.83 102.71 485.65 103.01 485.5 102.86 485.13 102.81 485.01 102.88 485.11 102.9 485.13 102.93 485.15 102.99 485.16 102.97 485.22 101.22 490.96 100.5 495.31 98.77 505.78 98.79 517.39 98.79 517.88 98.5 518.29 98.25 518.63 98.23 519.04 97.87 528.44 98.18 537.77"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M98.18 537.77Q98.75 547.92 100.1 554.97q3.73 19.49 13.1 38.62 15.56 31.76 43.03 52.74Q162.21 650.9 172.97 656.97 173.4 657.21 173.93 657.11 174.27 657.04 174.47 657.33 175.25 658.44 176.62 658.35 176.74 658.34 176.63 658.37 176.5 658.41 176.38 658.48 176.21 658.58 176.36 658.71 179.72 661.6 184.36 663.69 193.12 667.64 200.92 670.96 203.51 672.06 206.39 672.09C213.79 672.17 220.75 674.59 227.85 675.5Q241.51 677.25 258.42 677.27 335.37 677.38 410.89 677.26 415.61 677.25 421.31 677.06A.94.94.0 00422.22 676.12L422.48 603.46"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M422.48 603.46C422.72 519.97 422.5 436.49 422.59 353Q422.59 348.1 423.66 344.48C424.85 340.39 429.55 336.76 433.9 336.21Q436.66 335.85 439.49 335.86 494.27 335.98 572.06 335.69 584.93 335.64 589.91 334.78 597.94 333.4 606.26 330.74C615.95 327.65 626.03 324.05 635.5 320.14Q646.37 315.66 657.62 312.96 667.09 310.69 676.08 307.82 691.68 302.85 706.51 297.5 712.77 295.24 718.01 296.26"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M718.01 296.26Q725.51 299 729.94 305.03 734.73 311.55 735.73 318.39 736.01 320.31 736.08 332.62 736.25 364.24 736.19 397 736.19 399.08 736.23 400.97"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M736.23 400.97Q735.9 449.45 735.46 497.75 735.19 527.79 736.15 604.08"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M736.15 604.08 736.67 675.56A2.19 2.19.0 00738.87 677.73Q767.94 677.54 795.44 677.62 817.97 677.68 841.39 674.15 847.16 673.28 852.49 671.66C860.03 669.38 868.01 666.67 874.77 663.04 886.51 656.73 899.29 648.52 907.95 640.2Q915.92 632.55 923.63 625.37 929.31 620.09 933.33 613.73C935.19 610.8 937.51 608.42 939.12 605.35 940.33 603.02 941.92 600.89 943.21 598.54Q943.45 598.12 943.29 597.67L943.16 597.31A.83.81 57.5 01943.33 596.5Q944.29 595.46 944.39 593.99A1.71 1.69-26.2 01944.69 593.13Q945.61 591.77 945.97 590.12 946.3 588.59 946.91 587.17 949.11 582.1 951.27 576.84 951.72 575.76 951.83 574.56 951.94 573.38 952.44 572.26 953.13 570.7 953.66 569.03 955.4 563.55 956.49 558.44 958.79 547.6 959.78 535.62 961.35 516.61 958.61 497.75C957.77 492.01 956.07 486.17 954.92 480.43Q954.15 476.64 952.59 472.89 950.98 469.01 950.1 465.43 949.18 461.64 947.3 458.42C946.62 457.26 946.43 456.23 946.02 455.01Q945.59 453.76 944.8 452.54 943.11 449.92 941.65 447.11C941.28 446.4 941.38 445.57 941.14 445Q940.04 442.39 934.75 436.96"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M934.75 436.96c-13.04-17.58-27.99-33.32-46.72-44.66"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M888.03 392.3Q882.24 387.36 875.24 384.36 875.2 384.34 875.22 384.3L875.35 384.08Q875.43 383.93 875.59 384L877.96 385.14Q877.99 385.16 878 385.13L878.15 384.9Q878.28 384.7 878.05 384.62 872.13 382.5 867.06 380.02 863.08 378.07 858.83 376.66 854.27 375.14 850.01 374.21 849.95 374.2 849.93 374.26L849.87 374.51A.03.03.0 00849.9 374.55Q857.11 375.83 861.77 378.39 864.48 379.88 861.51 379.04 859.01 378.34 856.67 377.6 852.48 376.26 846.15 375.67 846.1 375.67 846.08 375.63 846.06 375.57 846.12 375.55 846.17 375.54 846.21 375.55 847.25 375.84 848.13 375.69 848.82 375.58 848.13 375.43 844.1 374.56 840.02 375.3"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M840.02 375.3C831.63 374.33 823.73 372.69 814.84 373.31 813.35 373.41 812.06 372.84 810.51 372.87Q803.01 373.01 796.27 374.55C793.63 375.15 790.95 375.45 788.28 375.61Q787.88 375.64 787.61 375.92 787.23 376.32 786.68 376.4 780.74 377.31 775.04 379.37 770.87 380.88 764.64 384.8 759.7 387.91 754.7 391.19"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M754.7 391.19Q756.26 383.46 757.81 375.98 759.76 366.58 760.51 360.7 763.46 337.48 761.63 314.17 760.99 306.01 758.91 294.37 757.01 283.7 754.89 272.75 752.59 260.84 747.54 249.46 745.67 245.25 743.7 240.2 741.38 234.25 736.66 226.75C735.76 225.32 735.24 223.86 734.21 222.51Q733.24 221.24 732.62 219.78C731.88 218.02 730.63 216.88 729.84 215.09 728.87 212.88 727.16 211.39 726.04 209.26Q724.69 206.7 722.92 204.55 721.11 202.35 719.49 200.03C716.95 196.39 714.67 192.59 711.27 189.61Q707.54 186.33 704.82 182.42C701.84 178.13 697.85 175.09 694.54 171.01 691.17 166.84 686.76 163.44 682.74 159.88 681.82 159.06 681.72 157.86 680.73 157.06Q677.63 154.54 674.69 152.45A.07.06-54.1 00674.6 152.47L674.46 152.68Q674.33 152.89 674.54 153.03 676.02 153.98 677.32 155.07 677.52 155.24 677.29 155.11C674.74 153.75 672.51 152.11 670.69 149.82Q669.3 148.07 667.31 146.74 660.44 142.14 653.7 138.48 648.98 135.92 644.35 132.84 639.79 129.81 632.39 126.59 617.15 119.97 605.94 116.26C604.1 115.65 602.23 115.81 600.47 115.15"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M600.47 115.15Q599.76 114.79 599.28 114.25"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M599.28 114.25Q596.64 112.8 593.69 111.95 583.64 109.04 573.39 106.9 563.66 104.88 556.72 105.12"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M556.72 105.12Q535.59 102.85 519.25 103.18 496.98 103.62 471.85 109.31C463.27 111.26 455.62 114.24 447.42 117.07Q446.79 117.29 446.29 117.73 445.73 118.22 445.1 118.66 444.28 119.23 443.25 119.55 441.01 120.23 438.8 120.98"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M556.72 105.12Q564.58 106.17 572.15 108.42C574.83 109.21 577.17 109.07 579.82 109.64Q580.27 109.74 580.44 110.18 580.67 110.82 581.38 110.86 584.36 111.04 587.12 112.11C589.32 112.96 591.64 112.98 593.93 113.32Q594.18 113.36 596.46 114.17 597.76 114.63 599.28 114.25"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M600.47 115.15Q594.24 113.95 588.04 112.66 587.87 112.62 587.83 112.79 587.79 112.96 587.95 113.01 608.88 119.22 628.21 129.72C633.49 132.58 638.52 136.35 642.99 140.24q14.51 12.64 31.59 30.96Q681.7 178.84 686.51 185.46 692.99 194.41 696.62 201.36q10.9 20.91 18.41 47.15Q719.1 262.72 719.73 277.51 719.97 283.23 720.2 288.75 720.33 291.8 718.01 296.26"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M422.48 603.46 422.19 604.18Q421.98 604.7 421.43 604.61 416.66 603.86 412.59 603.87 348.88 604.09 284.71 603.84 267.13 603.77 251.02 602.46q-26.06-2.13-48.84-16.86C192.75 579.51 184.08 570.63 176.23 562.27 168.02 553.53 162.76 544.13 157.62 533.43Q155.23 528.46 153.32 520.84 150.92 511.24 149.17 502.91 148.38 499.18 148.32 495.49 148.17 486.3 148.6 475.52 148.73 472.34 149.5 469.45C150.03 467.49 149.69 465.7 150.07 463.83Q151.96 454.51 155.02 444.09 155.48 442.53 153.86 442.72 152.56 442.88 151.06 444.55 146.57 449.55 141.46 455.04 139.5 457.14 138.35 459.6C134.82 467.17 129.7 474.41 125.5 481.29Q121.17 488.38 116.92 498.43q-5.45 12.9-6.99 23.22C108.92 528.49 108.26 535.39 107.3 542.31Q107.23 542.83 106.78 543.08C101.52 546 99.61 542.27 98.18 537.77"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M240.43 373.13Q248.72 374.13 256.93 375.23C258.7 375.47 260.5 375.38 262.22 375.92Q264.38 376.6 266.46 376.63 268.9 376.67 270.74 377.14 278.05 378.99 285.05 381.84"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M305.93 254.25l12.09-25.79"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M323.12 217.7 323.73 217.65Q324.29 217.6 324.32 217.04 324.34 216.71 324.56 216.47 325.2 215.76 324.74 216.59 324.56 216.9 324.39 217.19 324.34 217.28 324.42 217.33 324.53 217.4 324.61 217.5 324.73 217.67 324.8 217.48L327.22 210.74Q327.33 210.44 327.62 210.57L327.88 210.69Q327.9 210.7 327.87 210.75L326.51 213.47Q326.35 213.8 326.68 213.96L326.95 214.1A.12.12.0 00327.11 214.04Q328.64 210.79 330.13 208.73 334.34 202.94 338.25 196.98C340.99 192.8 344.46 188.91 347.45 184.72"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M423.21 127.52l11.43-4.11Q434.84 123.34 434.69 123.5 434.59 123.61 434.43 123.71 433.68 124.17 434.55 124.09 434.86 124.06 435.14 123.85 436.98 122.44 438.8 120.98"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M754.7 391.19Q747.41 397.76 741.58 399.89 740.39 400.32 736.23 400.97"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M840.02 375.3Q848.37 376.89 856.74 378.43 858.39 378.73 859.67 379.4 861.35 380.28 862.67 380.11 863.04 380.06 862.71 380.22 862.58 380.28 862.61 380.45A.15.15.0 00862.73 380.57Q866.19 381.33 869.24 383.34 871.62 384.91 874.77 386.12 881.6 388.74 888.03 392.3"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M934.75 436.96Q933.36 439.7 931.62 440.82 930.42 441.59 929.18 440.89C920.72 436.1 912.25 432.32 903.95 427.51Q895.85 422.81 887.81 419.18A.49.49.0 00887.11 419.62Q887.09 420.94 887.79 422.07C891.49 428.02 895.07 433.53 898.27 440Q900.43 444.36 901.68 448 905.05 457.86 905.65 470.46 906.19 481.77 906.47 492.77 906.79 505.08 902.92 519.5C901.13 526.18 898.98 532.57 895.88 538.78Q889.94 550.64 883.64 559.19 875.85 569.75 866.31 577.47 846.68 593.35 821.44 600.21C811.7 602.85 801.87 603.19 791.75 603.52Q762.45 604.46 736.15 604.08"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M572.05 680.95Q573.46 683.34 577.75 683.35 578.25 683.35 578.66 683.64 580.2 684.7 582 685.13 584.37 685.69 585.95 686.1 588.82 686.85 591.3 687.21C595.8 687.86 600.29 689.82 604.84 691.11Q618.05 694.87 630.86 698.4 635.66 699.73 651.25 702.9 652.68 703.19 654.31 703.37 655.83 703.54 657.52 704.26 660.29 705.43 664.46 705.55"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M664.46 705.55 700.51 716.23A.45.45.0 00701.07 715.67Q700.51 713.85 700.53 711.75 701.4 620.4 700.42 518.5 700.28 504.3 700.93 458.5 701.46 420.35 700.4 335.5 700.38 334.25 700.52 333.01A.89.88 85.1 00699.4 332.06Q679.62 337.71 665.91 342.7 641.72 351.5 619.65 358.49 592.44 367.1 572.6 374.15A1.9 1.89-9.9 00571.34 375.93Q571.18 513.33 571.39 654.5 571.41 667.76 572.05 680.95"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M664.46 705.55Q662.11 704.49 659.7 703.75 657.6 703.1 655.67 702.18 653.66 701.22 651.42 700.83C647.87 700.21 644.58 699.9 641.14 698.5Q637.25 696.91 633.31 695.66 624.29 692.77 614.98 690.12 607.98 688.12 599.95 686.55 588.3 684.27 584.74 683.66 576.99 682.31 572.05 680.95"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M506.73 508.96Q507.23 508.97 507.24 509.47L507.61 567.73A1.71 1.71.0 00509.29 569.43L512.14 569.48Q513.67 569.51 513.68 567.99L514.06 509.31A.65.65.0 01514.72 508.66Q524.38 508.75 533.37 508.51 534.45 508.49 535.45 508.14 536.77 507.68 535.94 506.56 525.56 492.62 516.03 477.72 513.11 473.15 510.64 468.22A.71.71.0 00509.34 468.32Q508.89 469.68 508.14 470.81 499.59 483.62 490.59 498.33C488.69 501.42 486.13 503.98 484.7 507.4A.85.84-75.5 00485.38 508.57C492.34 509.35 499.77 508.84 506.73 508.96"/><path stroke="#e2f3ff" vector-effect="non-scaling-stroke" d="M323.4069 219.9496A.86.45 98.9 00323.9846 219.1696.86.45 98.9 00323.6731 218.2504.86.45 98.9 00323.0954 219.0304.86.45 98.9 00323.4069 219.9496"/><path stroke="#76a3c4" vector-effect="non-scaling-stroke" d="M562.87 105.64Q563.01 105.79 563.21 105.74 563.58 105.65 563.24 105.48 563.06 105.39 562.89 105.5A.09.09.0 00562.87 105.64"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M679.22 372.53C679.23 371.09 679.54 369.88 679.85 368.51A.54.54.0 00679.29 367.85Q677.1 368.03 675.2 368.64 662.08 372.86 652.04 375.23 641.91 377.62 633.09 380.61 616.35 386.29 597.27 393.54C595.19 394.33 594.11 394.37 594.1 396.75Q593.82 453.73 594.23 510.63A.53.53.0 00594.87 511.14C612.16 507.54 629.52 503.71 647.2 500.59Q662.96 497.81 678.69 494.94 679.2 494.85 679.2 494.33 679.02 429.9 679.22 372.53"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M679.1894 535.7817a14.73 13.11 84.9 0011.7487-15.8371 14.73 13.11 84.9 00-14.3675-13.5063 14.73 13.11 84.9 00-11.7487 15.8371 14.73 13.11 84.9 0014.3675 13.5063"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M653.47 677.48C653.58 677.65 653.78 677.81 653.97 677.85Q666.29 680.76 678.03 684.83A.8.79-79.7 00679.09 684.09C679.65 637.75 679.02 593.21 679.12 547.6Q679.12 546.36 677.91 546.11 673.94 545.3 670.08 544.24C662.1 542.05 657.76 536.87 655.27 529.33A.58.57 76.9 00654.64 528.93Q625.29 532.84 594.78 537.76A.97.97.0 00593.96 538.72L594.14 660.05A1.82 1.81-79.8 00595.31 661.75Q600.8 663.83 606.74 665.66 624.02 670.98 642.31 674.66 645.11 675.22 647.69 676.02 650.42 676.85 653.38 677.42 653.44 677.43 653.47 677.48"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M663.15 390.16A.99.99.0 00661.85 389.22l-51.99 17.14A.99.99.0 00609.19 407.31L609.77 491.24A.99.99.0 00610.99 492.19L662.55 480A.99.99.0 00663.31 479.04L663.15 390.16"/><path stroke="#93b0c4" vector-effect="non-scaling-stroke" d="M610.01 645.38C610.01 646.98 610.77 648.42 612.26 649.06 620.63 652.63 629.2 654.01 637.6 656.47Q649.19 659.86 661.88 663.03 663.27 663.38 663.33 661.95 663.43 659.77 663.43 657.69 663.36 600.71 663.09 550.52A1.49 1.48 1.9 00661.71 549.05Q658.24 548.79 654.88 548.95 640.98 549.6 624.11 551.2 617.1 551.87 609.98 552.02A.46.45-1.3 00609.53 552.48Q609.94 600.04 610.01 645.38"/></g><path fill="#276089" d="M255.43 337.58A1.16 1.15-8 00256.16 336.62Q256.94 329.44 256.97 321.89 257.01 312.67 258.49 300.83 260.97 280.96 264.63 264.23 267.08 253.08 270.94 243.18C272.28 239.75 274.57 236.93 276.22 233.52 282.54 220.44 289.18 206.77 297.09 195.08c14.64-21.65 32.53-44.29 51-59.85Q358.75 126.26 377.98 112.74 386.74 106.58 396.21 101.52q32.66-17.44 64.71-24.98C478.3 72.45 497.66 69.39 516.24 68.95Q539.13 68.4 559.76 70.68 603.35 75.49 639 92.39c15.7 7.44 31.16 15.56 45.33 25.63C708.06 134.9 728.25 153.79 745.77 178.17q28.53 39.69 41.12 83.29C789.89 271.86 792.34 283.71 793.66 294.66Q796.2 315.76 797.41 337.48A1.29 1.29.0 00798.69 338.7Q815.49 338.72 831.21 339.39C868.91 341 905.17 359.29 933.64 383.01 939.46 387.86 944.72 394.3 949.76 400.34 970.1 424.7 985.53 454.74 991.58 486.07Q997.12 514.79 994.49 540.6 989.42 590.5 960.66 630.97 946.97 650.24 931.32 664.82 918.69 676.6 899.38 686.96 880.83 696.92 863.47 701.77 836.07 709.42 806.25 710.24 774.38 711.1 736.61 711.19A1.97 1.96 7.1 00734.72 712.66C734.18 714.76 733.61 717.01 733.65 719.2 733.84 728.71 732.87 743.34 721.34 746.39Q718.5 747.14 716.12 748.82 715.67 749.14 715.13 749.15 713.55 749.18 711.03 748.73C690.73 745.11 671.12 739.21 651.67 733.55 640.94 730.43 629.8 726.69 618.56 723.66Q594.7 717.23 575.34 712.41 569.8 711.03 554.9 710.73C535.85 710.34 517.09 709.97 498.26 710.05Q426.4 710.36 354.01 711.11C327.54 711.39 300.74 711.31 273.96 711.36Q244.61 711.41 219.84 708.3 208.25 706.84 188 700.75 172.03 695.95 155.79 686.75 144.05 680.09 137 674.83c-19.35-14.45-34.77-33.51-48.28-53.75C85.29 615.94 82.26 610.27 79.9 604.58 72.57 586.93 66.35 568.74 63.94 550.49 62.68 540.98 61.35 531.56 61.65 521.49q1.04-35.65 13.88-70.2Q79.3 441.12 83.46 433.44q17.03-31.42 43.33-53.64c21.23-17.94 45.35-29.63 72.03-36.95C216.78 337.93 234.03 338.04 253.26 337.98Q254.42 337.98 255.43 337.58zM438.8 120.98Q435.57 121.88 434.78 122.21 431.12 123.7 423.21 127.52C416.56 130.57 409.18 133.39 403.28 136.68Q394.42 141.62 387.66 147.15 379.83 153.54 367.83 164.27C360.8 170.55 354.15 177.8 347.45 184.72L342.5 189.88Q342.21 190.18 341.84 190.38 341.07 190.8 341.03 191.71 341.01 192.11 340.65 191.92 340.53 191.86 340.4 191.9 339.91 192.07 339.71 192.6 339.03 194.41 337.73 195.89 337.39 196.28 337.81 195.97 337.86 195.93 337.92 195.9 338.54 195.6 338.12 196.15 335.04 200.12 332.21 203.99 332.03 204.23 331.79 204.04L331.46 203.78Q331.41 203.74 331.44 203.69 332.29 202.33 333.12 201.24 333.2 201.13 333.11 201 333.07 200.95 333.03 201 332.05 202.53 330.7 203.79 330.54 203.94 330.75 203.87 330.79 203.85 330.84 203.87 331.05 203.97 331.06 204.2 331.13 205.63 329.99 206.5A1.85 1.78 81.9 00329.4 207.32Q329.06 208.29 328.39 209.14 328.09 209.52 327.61 209.58 325.89 209.82 326 211.78A1.3 1.27-28 01325.72 212.66Q324.07 214.8 323.12 217.7L318.02 228.46Q313.27 234.86 311.76 237.75 309.37 242.33 305.99 252.05 304.46 256.44 305.93 254.25 305.62 255.63 304.89 256.82 304.77 257.01 304.97 257.12L305.2 257.24Q305.23 257.26 305.24 257.22 306.13 255.05 307.26 252.78 307.34 252.62 307.51 252.71L307.73 252.82Q307.75 252.84 307.74 252.86 306.25 255.22 305.41 257.9 304.19 261.82 302.64 265.97 302.35 266.75 301.89 267.38C300.98 268.59 301.07 270.27 300.39 271.68Q299.06 274.47 298.36 277.53 298.26 277.97 297.92 278.28 297.32 278.84 297.16 279.76 296.53 283.42 295.29 287.79C294.38 290.99 294.69 294.16 293.83 297.36 292.99 300.5 293.12 303.75 292.59 306.9Q290.82 317.42 290.83 332.15C290.83 348.21 291.88 362.54 296.59 377.96Q298.48 384.15 300.49 390.37 301.18 392.52 299.65 390.86 298.11 389.19 295.54 387.72 290.29 384.72 285.05 381.84 283.43 380.56 281.9 380.1C279.89 379.5 278.26 378.64 276.39 378.23 274.28 377.77 271.98 376.83 270.21 376.37Q255.65 372.58 240.43 373.13 233.74 372.8 227 373.57 218.25 374.57 209.52 375.73 205.54 376.26 202.03 377.1 198.41 377.96 194.65 378.96 194.3 379.05 194.13 379.39A.74.72-79.5 01193.55 379.8Q189.92 380.15 187.2 381.49 184.73 382.71 182.18 383.81 179.39 385.01 177.01 386.52q-10.2 6.5-21.71 15.23-11.53 8.75-19.24 19.06C135.77 421.2 135.78 421.58 135.55 421.95Q132.47 426.87 128.69 431.08 125.96 434.1 123.91 437.19 121.72 440.47 119.57 443.8 119.26 444.28 119.09 444.83 118.95 445.24 118.63 445.53 116.84 447.17 116 449.6A1.7 1.69 80.4 01115.47 450.35Q115.1 450.66 114.87 451.08 111.96 456.46 110.57 460.85 109.15 465.35 107.7 469.25 104.74 477.22 102.44 485.43 102.33 485.83 102.71 485.65 103.01 485.5 102.86 485.13 102.81 485.01 102.88 485.11 102.9 485.13 102.93 485.15 102.99 485.16 102.97 485.22 101.22 490.96 100.5 495.31 98.77 505.78 98.79 517.39 98.79 517.88 98.5 518.29 98.25 518.63 98.23 519.04 97.87 528.44 98.18 537.77 98.75 547.92 100.1 554.97q3.73 19.49 13.1 38.62 15.56 31.76 43.03 52.74Q162.21 650.9 172.97 656.97 173.4 657.21 173.93 657.11 174.27 657.04 174.47 657.33 175.25 658.44 176.62 658.35 176.74 658.34 176.63 658.37 176.5 658.41 176.38 658.48 176.21 658.58 176.36 658.71 179.72 661.6 184.36 663.69 193.12 667.64 200.92 670.96 203.51 672.06 206.39 672.09C213.79 672.17 220.75 674.59 227.85 675.5Q241.51 677.25 258.42 677.27 335.37 677.38 410.89 677.26 415.61 677.25 421.31 677.06A.94.94.0 00422.22 676.12L422.48 603.46C422.72 519.97 422.5 436.49 422.59 353Q422.59 348.1 423.66 344.48C424.85 340.39 429.55 336.76 433.9 336.21Q436.66 335.85 439.49 335.86 494.27 335.98 572.06 335.69 584.93 335.64 589.91 334.78 597.94 333.4 606.26 330.74C615.95 327.65 626.03 324.05 635.5 320.14Q646.37 315.66 657.62 312.96 667.09 310.69 676.08 307.82 691.68 302.85 706.51 297.5 712.77 295.24 718.01 296.26 725.51 299 729.94 305.03 734.73 311.55 735.73 318.39 736.01 320.31 736.08 332.62 736.25 364.24 736.19 397 736.19 399.08 736.23 400.97 735.9 449.45 735.46 497.75 735.19 527.79 736.15 604.08L736.67 675.56A2.19 2.19.0 00738.87 677.73Q767.94 677.54 795.44 677.62 817.97 677.68 841.39 674.15 847.16 673.28 852.49 671.66C860.03 669.38 868.01 666.67 874.77 663.04 886.51 656.73 899.29 648.52 907.95 640.2Q915.92 632.55 923.63 625.37 929.31 620.09 933.33 613.73C935.19 610.8 937.51 608.42 939.12 605.35 940.33 603.02 941.92 600.89 943.21 598.54Q943.45 598.12 943.29 597.67L943.16 597.31A.83.81 57.5 01943.33 596.5Q944.29 595.46 944.39 593.99A1.71 1.69-26.2 01944.69 593.13Q945.61 591.77 945.97 590.12 946.3 588.59 946.91 587.17 949.11 582.1 951.27 576.84 951.72 575.76 951.83 574.56 951.94 573.38 952.44 572.26 953.13 570.7 953.66 569.03 955.4 563.55 956.49 558.44 958.79 547.6 959.78 535.62 961.35 516.61 958.61 497.75C957.77 492.01 956.07 486.17 954.92 480.43Q954.15 476.64 952.59 472.89 950.98 469.01 950.1 465.43 949.18 461.64 947.3 458.42C946.62 457.26 946.43 456.23 946.02 455.01Q945.59 453.76 944.8 452.54 943.11 449.92 941.65 447.11C941.28 446.4 941.38 445.57 941.14 445Q940.04 442.39 934.75 436.96c-13.04-17.58-27.99-33.32-46.72-44.66Q882.24 387.36 875.24 384.36 875.2 384.34 875.22 384.3L875.35 384.08Q875.43 383.93 875.59 384L877.96 385.14Q877.99 385.16 878 385.13L878.15 384.9Q878.28 384.7 878.05 384.62 872.13 382.5 867.06 380.02 863.08 378.07 858.83 376.66 854.27 375.14 850.01 374.21 849.95 374.2 849.93 374.26L849.87 374.51A.03.03.0 00849.9 374.55Q857.11 375.83 861.77 378.39 864.48 379.88 861.51 379.04 859.01 378.34 856.67 377.6 852.48 376.26 846.15 375.67 846.1 375.67 846.08 375.63 846.06 375.57 846.12 375.55 846.17 375.54 846.21 375.55 847.25 375.84 848.13 375.69 848.82 375.58 848.13 375.43 844.1 374.56 840.02 375.3C831.63 374.33 823.73 372.69 814.84 373.31 813.35 373.41 812.06 372.84 810.51 372.87Q803.01 373.01 796.27 374.55C793.63 375.15 790.95 375.45 788.28 375.61Q787.88 375.64 787.61 375.92 787.23 376.32 786.68 376.4 780.74 377.31 775.04 379.37 770.87 380.88 764.64 384.8 759.7 387.91 754.7 391.19 756.26 383.46 757.81 375.98 759.76 366.58 760.51 360.7 763.46 337.48 761.63 314.17 760.99 306.01 758.91 294.37 757.01 283.7 754.89 272.75 752.59 260.84 747.54 249.46 745.67 245.25 743.7 240.2 741.38 234.25 736.66 226.75C735.76 225.32 735.24 223.86 734.21 222.51Q733.24 221.24 732.62 219.78C731.88 218.02 730.63 216.88 729.84 215.09 728.87 212.88 727.16 211.39 726.04 209.26Q724.69 206.7 722.92 204.55 721.11 202.35 719.49 200.03C716.95 196.39 714.67 192.59 711.27 189.61Q707.54 186.33 704.82 182.42C701.84 178.13 697.85 175.09 694.54 171.01 691.17 166.84 686.76 163.44 682.74 159.88 681.82 159.06 681.72 157.86 680.73 157.06Q677.63 154.54 674.69 152.45A.07.06-54.1 00674.6 152.47L674.46 152.68Q674.33 152.89 674.54 153.03 676.02 153.98 677.32 155.07 677.52 155.24 677.29 155.11C674.74 153.75 672.51 152.11 670.69 149.82Q669.3 148.07 667.31 146.74 660.44 142.14 653.7 138.48 648.98 135.92 644.35 132.84 639.79 129.81 632.39 126.59 617.15 119.97 605.94 116.26C604.1 115.65 602.23 115.81 600.47 115.15Q599.76 114.79 599.28 114.25 596.64 112.8 593.69 111.95 583.64 109.04 573.39 106.9 563.66 104.88 556.72 105.12 535.59 102.85 519.25 103.18 496.98 103.62 471.85 109.31C463.27 111.26 455.62 114.24 447.42 117.07Q446.79 117.29 446.29 117.73 445.73 118.22 445.1 118.66 444.28 119.23 443.25 119.55 441.01 120.23 438.8 120.98zM572.05 680.95Q573.46 683.34 577.75 683.35 578.25 683.35 578.66 683.64 580.2 684.7 582 685.13 584.37 685.69 585.95 686.1 588.82 686.85 591.3 687.21C595.8 687.86 600.29 689.82 604.84 691.11Q618.05 694.87 630.86 698.4 635.66 699.73 651.25 702.9 652.68 703.19 654.31 703.37 655.83 703.54 657.52 704.26 660.29 705.43 664.46 705.55L700.51 716.23A.45.45.0 00701.07 715.67Q700.51 713.85 700.53 711.75 701.4 620.4 700.42 518.5 700.28 504.3 700.93 458.5 701.46 420.35 700.4 335.5 700.38 334.25 700.52 333.01A.89.88 85.1 00699.4 332.06Q679.62 337.71 665.91 342.7 641.72 351.5 619.65 358.49 592.44 367.1 572.6 374.15A1.9 1.89-9.9 00571.34 375.93Q571.18 513.33 571.39 654.5 571.41 667.76 572.05 680.95zM506.73 508.96Q507.23 508.97 507.24 509.47L507.61 567.73A1.71 1.71.0 00509.29 569.43L512.14 569.48Q513.67 569.51 513.68 567.99L514.06 509.31A.65.65.0 01514.72 508.66Q524.38 508.75 533.37 508.51 534.45 508.49 535.45 508.14 536.77 507.68 535.94 506.56 525.56 492.62 516.03 477.72 513.11 473.15 510.64 468.22A.71.71.0 00509.34 468.32Q508.89 469.68 508.14 470.81 499.59 483.62 490.59 498.33C488.69 501.42 486.13 503.98 484.7 507.4A.85.84-75.5 00485.38 508.57C492.34 509.35 499.77 508.84 506.73 508.96z"/><path fill="#fff" d="M556.72 105.12Q564.58 106.17 572.15 108.42C574.83 109.21 577.17 109.07 579.82 109.64Q580.27 109.74 580.44 110.18 580.67 110.82 581.38 110.86 584.36 111.04 587.12 112.11C589.32 112.96 591.64 112.98 593.93 113.32Q594.18 113.36 596.46 114.17 597.76 114.63 599.28 114.25 599.76 114.79 600.47 115.15 594.24 113.95 588.04 112.66 587.87 112.62 587.83 112.79 587.79 112.96 587.95 113.01 608.88 119.22 628.21 129.72C633.49 132.58 638.52 136.35 642.99 140.24q14.51 12.64 31.59 30.96Q681.7 178.84 686.51 185.46 692.99 194.41 696.62 201.36q10.9 20.91 18.41 47.15Q719.1 262.72 719.73 277.51 719.97 283.23 720.2 288.75 720.33 291.8 718.01 296.26 712.77 295.24 706.51 297.5 691.68 302.85 676.08 307.82 667.09 310.69 657.62 312.96 646.37 315.66 635.5 320.14C626.03 324.05 615.95 327.65 606.26 330.74Q597.94 333.4 589.91 334.78 584.93 335.64 572.06 335.69 494.27 335.98 439.49 335.86 436.66 335.85 433.9 336.21C429.55 336.76 424.85 340.39 423.66 344.48Q422.59 348.1 422.59 353C422.5 436.49 422.72 519.97 422.48 603.46L422.19 604.18Q421.98 604.7 421.43 604.61 416.66 603.86 412.59 603.87 348.88 604.09 284.71 603.84 267.13 603.77 251.02 602.46q-26.06-2.13-48.84-16.86C192.75 579.51 184.08 570.63 176.23 562.27 168.02 553.53 162.76 544.13 157.62 533.43Q155.23 528.46 153.32 520.84 150.92 511.24 149.17 502.91 148.38 499.18 148.32 495.49 148.17 486.3 148.6 475.52 148.73 472.34 149.5 469.45C150.03 467.49 149.69 465.7 150.07 463.83Q151.96 454.51 155.02 444.09 155.48 442.53 153.86 442.72 152.56 442.88 151.06 444.55 146.57 449.55 141.46 455.04 139.5 457.14 138.35 459.6C134.82 467.17 129.7 474.41 125.5 481.29Q121.17 488.38 116.92 498.43q-5.45 12.9-6.99 23.22C108.92 528.49 108.26 535.39 107.3 542.31Q107.23 542.83 106.78 543.08C101.52 546 99.61 542.27 98.18 537.77Q97.87 528.44 98.23 519.04 98.25 518.63 98.5 518.29 98.79 517.88 98.79 517.39 98.77 505.78 100.5 495.31 101.22 490.96 102.97 485.22 102.99 485.16 102.93 485.15 102.9 485.13 102.88 485.11 102.81 485.01 102.86 485.13 103.01 485.5 102.71 485.65 102.33 485.83 102.44 485.43 104.74 477.22 107.7 469.25 109.15 465.35 110.57 460.85 111.96 456.46 114.87 451.08 115.1 450.66 115.47 450.35A1.7 1.69 80.4 00116 449.6Q116.84 447.17 118.63 445.53 118.95 445.24 119.09 444.83 119.26 444.28 119.57 443.8 121.72 440.47 123.91 437.19 125.96 434.1 128.69 431.08 132.47 426.87 135.55 421.95C135.78 421.58 135.77 421.2 136.06 420.81Q143.77 410.5 155.3 401.75 166.81 393.02 177.01 386.52 179.39 385.01 182.18 383.81 184.73 382.71 187.2 381.49 189.92 380.15 193.55 379.8A.74.72-79.5 00194.13 379.39Q194.3 379.05 194.65 378.96 198.41 377.96 202.03 377.1 205.54 376.26 209.52 375.73 218.25 374.57 227 373.57 233.74 372.8 240.43 373.13 248.72 374.13 256.93 375.23C258.7 375.47 260.5 375.38 262.22 375.92Q264.38 376.6 266.46 376.63 268.9 376.67 270.74 377.14 278.05 378.99 285.05 381.84 290.29 384.72 295.54 387.72 298.11 389.19 299.65 390.86 301.18 392.52 300.49 390.37 298.48 384.15 296.59 377.96C291.88 362.54 290.83 348.21 290.83 332.15Q290.82 317.42 292.59 306.9C293.12 303.75 292.99 300.5 293.83 297.36 294.69 294.16 294.38 290.99 295.29 287.79Q296.53 283.42 297.16 279.76 297.32 278.84 297.92 278.28 298.26 277.97 298.36 277.53 299.06 274.47 300.39 271.68C301.07 270.27 300.98 268.59 301.89 267.38Q302.35 266.75 302.64 265.97 304.19 261.82 305.41 257.9 306.25 255.22 307.74 252.86 307.75 252.84 307.73 252.82L307.51 252.71Q307.34 252.62 307.26 252.78 306.13 255.05 305.24 257.22 305.23 257.26 305.2 257.24L304.97 257.12Q304.77 257.01 304.89 256.82 305.62 255.63 305.93 254.25l12.09-25.79L323.12 217.7 323.73 217.65Q324.29 217.6 324.32 217.04 324.34 216.71 324.56 216.47 325.2 215.76 324.74 216.59 324.56 216.9 324.39 217.19 324.34 217.28 324.42 217.33 324.53 217.4 324.61 217.5 324.73 217.67 324.8 217.48L327.22 210.74Q327.33 210.44 327.62 210.57L327.88 210.69Q327.9 210.7 327.87 210.75L326.51 213.47Q326.35 213.8 326.68 213.96L326.95 214.1A.12.12.0 00327.11 214.04Q328.64 210.79 330.13 208.73 334.34 202.94 338.25 196.98C340.99 192.8 344.46 188.91 347.45 184.72 354.15 177.8 360.8 170.55 367.83 164.27q12-10.73 19.83-17.12Q394.42 141.62 403.28 136.68C409.18 133.39 416.56 130.57 423.21 127.52l11.43-4.11Q434.84 123.34 434.69 123.5 434.59 123.61 434.43 123.71 433.68 124.17 434.55 124.09 434.86 124.06 435.14 123.85 436.98 122.44 438.8 120.98 441.01 120.23 443.25 119.55 444.28 119.23 445.1 118.66 445.73 118.22 446.29 117.73 446.79 117.29 447.42 117.07C455.62 114.24 463.27 111.26 471.85 109.31q25.13-5.69 47.4-6.13Q535.59 102.85 556.72 105.12zM323.4069 219.9496A.86.45 98.9 00323.9846 219.1696.86.45 98.9 00323.6731 218.2504.86.45 98.9 00323.0954 219.0304.86.45 98.9 00323.4069 219.9496z"/><path fill="#c4e6ff" d="M599.28 114.25Q597.76 114.63 596.46 114.17 594.18 113.36 593.93 113.32C591.64 112.98 589.32 112.96 587.12 112.11Q584.36 111.04 581.38 110.86 580.67 110.82 580.44 110.18 580.27 109.74 579.82 109.64C577.17 109.07 574.83 109.21 572.15 108.42Q564.58 106.17 556.72 105.12 563.66 104.88 573.39 106.9 583.64 109.04 593.69 111.95 596.64 112.8 599.28 114.25zm-36.41-8.61Q563.01 105.79 563.21 105.74 563.58 105.65 563.24 105.48 563.06 105.39 562.89 105.5A.09.09.0 00562.87 105.64z"/><path fill="#276089" d="M562.87 105.64A.09.09.0 01562.89 105.5Q563.06 105.39 563.24 105.48 563.58 105.65 563.21 105.74 563.01 105.79 562.87 105.64z"/><path fill="#c4e6ff" d="M600.47 115.15C602.23 115.81 604.1 115.65 605.94 116.26Q617.15 119.97 632.39 126.59 639.79 129.81 644.35 132.84 648.98 135.92 653.7 138.48 660.44 142.14 667.31 146.74 669.3 148.07 670.69 149.82C672.51 152.11 674.74 153.75 677.29 155.11Q677.52 155.24 677.32 155.07 676.02 153.98 674.54 153.03 674.33 152.89 674.46 152.68L674.6 152.47A.07.06-54.1 01674.69 152.45Q677.63 154.54 680.73 157.06C681.72 157.86 681.82 159.06 682.74 159.88 686.76 163.44 691.17 166.84 694.54 171.01 697.85 175.09 701.84 178.13 704.82 182.42Q707.54 186.33 711.27 189.61C714.67 192.59 716.95 196.39 719.49 200.03Q721.11 202.35 722.92 204.55 724.69 206.7 726.04 209.26C727.16 211.39 728.87 212.88 729.84 215.09 730.63 216.88 731.88 218.02 732.62 219.78Q733.24 221.24 734.21 222.51C735.24 223.86 735.76 225.32 736.66 226.75Q741.38 234.25 743.7 240.2 745.67 245.25 747.54 249.46 752.59 260.84 754.89 272.75 757.01 283.7 758.91 294.37 760.99 306.01 761.63 314.17 763.46 337.48 760.51 360.7 759.76 366.58 757.81 375.98 756.26 383.46 754.7 391.19 747.41 397.76 741.58 399.89 740.39 400.32 736.23 400.97 736.19 399.08 736.19 397 736.25 364.24 736.08 332.62 736.01 320.31 735.73 318.39 734.73 311.55 729.94 305.03 725.51 299 718.01 296.26 720.33 291.8 720.2 288.75 719.97 283.23 719.73 277.51 719.1 262.72 715.03 248.51 707.52 222.27 696.62 201.36 692.99 194.41 686.51 185.46 681.7 178.84 674.58 171.2q-17.08-18.32-31.59-30.96C638.52 136.35 633.49 132.58 628.21 129.72q-19.33-10.5-40.26-16.71Q587.79 112.96 587.83 112.79 587.87 112.62 588.04 112.66 594.24 113.95 600.47 115.15z"/><path fill="#c4e6ff" d="M438.8 120.98Q436.98 122.44 435.14 123.85 434.86 124.06 434.55 124.09 433.68 124.17 434.43 123.71 434.59 123.61 434.69 123.5 434.84 123.34 434.64 123.41l-11.43 4.11Q431.12 123.7 434.78 122.21 435.57 121.88 438.8 120.98z"/><path fill="#c4e6ff" d="M347.45 184.72C344.46 188.91 340.99 192.8 338.25 196.98Q334.34 202.94 330.13 208.73 328.64 210.79 327.11 214.04A.12.12.0 01326.95 214.1L326.68 213.96Q326.35 213.8 326.51 213.47L327.87 210.75Q327.9 210.7 327.88 210.69L327.62 210.57Q327.33 210.44 327.22 210.74L324.8 217.48Q324.73 217.67 324.61 217.5 324.53 217.4 324.42 217.33 324.34 217.28 324.39 217.19 324.56 216.9 324.74 216.59 325.2 215.76 324.56 216.47 324.34 216.71 324.32 217.04 324.29 217.6 323.73 217.65L323.12 217.7Q324.07 214.8 325.72 212.66A1.3 1.27-28 00326 211.78Q325.89 209.82 327.61 209.58 328.09 209.52 328.39 209.14 329.06 208.29 329.4 207.32A1.85 1.78 81.9 01329.99 206.5Q331.13 205.63 331.06 204.2 331.05 203.97 330.84 203.87 330.79 203.85 330.75 203.87 330.54 203.94 330.7 203.79 332.05 202.53 333.03 201 333.07 200.95 333.11 201 333.2 201.13 333.12 201.24 332.29 202.33 331.44 203.69 331.41 203.74 331.46 203.78L331.79 204.04Q332.03 204.23 332.21 203.99 335.04 200.12 338.12 196.15 338.54 195.6 337.92 195.9 337.86 195.93 337.81 195.97 337.39 196.28 337.73 195.89 339.03 194.41 339.71 192.6 339.91 192.07 340.4 191.9 340.53 191.86 340.65 191.92 341.01 192.11 341.03 191.71 341.07 190.8 341.84 190.38 342.21 190.18 342.5 189.88L347.45 184.72z"/><ellipse fill="#c4e6ff" cx="0" cy="0" transform="translate(323.54,219.10) rotate(98.9)" rx=".86" ry=".45"/><path fill="#c4e6ff" d="M305.93 254.25Q304.46 256.44 305.99 252.05 309.37 242.33 311.76 237.75 313.27 234.86 318.02 228.46l-12.09 25.79z"/><path fill="#fff" d="M664.46 705.55Q662.11 704.49 659.7 703.75 657.6 703.1 655.67 702.18 653.66 701.22 651.42 700.83C647.87 700.21 644.58 699.9 641.14 698.5Q637.25 696.91 633.31 695.66 624.29 692.77 614.98 690.12 607.98 688.12 599.95 686.55 588.3 684.27 584.74 683.66 576.99 682.31 572.05 680.95 571.41 667.76 571.39 654.5 571.18 513.33 571.34 375.93A1.9 1.89-9.9 01572.6 374.15Q592.44 367.1 619.65 358.49 641.72 351.5 665.91 342.7 679.62 337.71 699.4 332.06A.89.88 85.1 01700.52 333.01Q700.38 334.25 700.4 335.5 701.46 420.35 700.93 458.5 700.28 504.3 700.42 518.5 701.4 620.4 700.53 711.75 700.51 713.85 701.07 715.67A.45.45.0 01700.51 716.23L664.46 705.55zm14.76-333.02C679.23 371.09 679.54 369.88 679.85 368.51A.54.54.0 00679.29 367.85Q677.1 368.03 675.2 368.64 662.08 372.86 652.04 375.23 641.91 377.62 633.09 380.61 616.35 386.29 597.27 393.54C595.19 394.33 594.11 394.37 594.1 396.75Q593.82 453.73 594.23 510.63A.53.53.0 00594.87 511.14C612.16 507.54 629.52 503.71 647.2 500.59Q662.96 497.81 678.69 494.94 679.2 494.85 679.2 494.33 679.02 429.9 679.22 372.53zM679.1894 535.7817a14.73 13.11 84.9 0011.7487-15.8371 14.73 13.11 84.9 00-14.3675-13.5063 14.73 13.11 84.9 00-11.7487 15.8371 14.73 13.11 84.9 0014.3675 13.5063zM653.47 677.48C653.58 677.65 653.78 677.81 653.97 677.85Q666.29 680.76 678.03 684.83A.8.79-79.7 00679.09 684.09C679.65 637.75 679.02 593.21 679.12 547.6Q679.12 546.36 677.91 546.11 673.94 545.3 670.08 544.24C662.1 542.05 657.76 536.87 655.27 529.33A.58.57 76.9 00654.64 528.93Q625.29 532.84 594.78 537.76A.97.97.0 00593.96 538.72L594.14 660.05A1.82 1.81-79.8 00595.31 661.75Q600.8 663.83 606.74 665.66 624.02 670.98 642.31 674.66 645.11 675.22 647.69 676.02 650.42 676.85 653.38 677.42 653.44 677.43 653.47 677.48z"/><path fill="#276089" d="M679.22 372.53Q679.02 429.9 679.2 494.33 679.2 494.85 678.69 494.94 662.96 497.81 647.2 500.59C629.52 503.71 612.16 507.54 594.87 511.14A.53.53.0 01594.23 510.63Q593.82 453.73 594.1 396.75C594.11 394.37 595.19 394.33 597.27 393.54Q616.35 386.29 633.09 380.61 641.91 377.62 652.04 375.23 662.08 372.86 675.2 368.64 677.1 368.03 679.29 367.85A.54.54.0 01679.85 368.51C679.54 369.88 679.23 371.09 679.22 372.53zM663.15 390.16A.99.99.0 00661.85 389.22l-51.99 17.14A.99.99.0 00609.19 407.31L609.77 491.24A.99.99.0 00610.99 492.19L662.55 480A.99.99.0 00663.31 479.04L663.15 390.16z"/><path fill="#fff" d="M840.02 375.3Q848.37 376.89 856.74 378.43 858.39 378.73 859.67 379.4 861.35 380.28 862.67 380.11 863.04 380.06 862.71 380.22 862.58 380.28 862.61 380.45A.15.15.0 00862.73 380.57Q866.19 381.33 869.24 383.34 871.62 384.91 874.77 386.12 881.6 388.74 888.03 392.3C906.76 403.64 921.71 419.38 934.75 436.96Q933.36 439.7 931.62 440.82 930.42 441.59 929.18 440.89C920.72 436.1 912.25 432.32 903.95 427.51Q895.85 422.81 887.81 419.18A.49.49.0 00887.11 419.62Q887.09 420.94 887.79 422.07C891.49 428.02 895.07 433.53 898.27 440Q900.43 444.36 901.68 448 905.05 457.86 905.65 470.46 906.19 481.77 906.47 492.77 906.79 505.08 902.92 519.5C901.13 526.18 898.98 532.57 895.88 538.78Q889.94 550.64 883.64 559.19 875.85 569.75 866.31 577.47 846.68 593.35 821.44 600.21C811.7 602.85 801.87 603.19 791.75 603.52Q762.45 604.46 736.15 604.08 735.19 527.79 735.46 497.75 735.9 449.45 736.23 400.97 740.39 400.32 741.58 399.89 747.41 397.76 754.7 391.19 759.7 387.91 764.64 384.8 770.87 380.88 775.04 379.37 780.74 377.31 786.68 376.4 787.23 376.32 787.61 375.92 787.88 375.64 788.28 375.61C790.95 375.45 793.63 375.15 796.27 374.55Q803.01 373.01 810.51 372.87C812.06 372.84 813.35 373.41 814.84 373.31 823.73 372.69 831.63 374.33 840.02 375.3z"/><path fill="#c4e6ff" d="M285.05 381.84Q278.05 378.99 270.74 377.14 268.9 376.67 266.46 376.63 264.38 376.6 262.22 375.92C260.5 375.38 258.7 375.47 256.93 375.23Q248.72 374.13 240.43 373.13 255.65 372.58 270.21 376.37C271.98 376.83 274.28 377.77 276.39 378.23 278.26 378.64 279.89 379.5 281.9 380.1Q283.43 380.56 285.05 381.84z"/><path fill="#c4e6ff" d="M888.03 392.3Q881.6 388.74 874.77 386.12 871.62 384.91 869.24 383.34 866.19 381.33 862.73 380.57A.15.15.0 01862.61 380.45Q862.58 380.28 862.71 380.22 863.04 380.06 862.67 380.11 861.35 380.28 859.67 379.4 858.39 378.73 856.74 378.43 848.37 376.89 840.02 375.3 844.1 374.56 848.13 375.43 848.82 375.58 848.13 375.69 847.25 375.84 846.21 375.55 846.17 375.54 846.12 375.55 846.06 375.57 846.08 375.63 846.1 375.67 846.15 375.67 852.48 376.26 856.67 377.6 859.01 378.34 861.51 379.04 864.48 379.88 861.77 378.39 857.11 375.83 849.9 374.55A.03.03.0 01849.87 374.51L849.93 374.26Q849.95 374.2 850.01 374.21 854.27 375.14 858.83 376.66 863.08 378.07 867.06 380.02 872.13 382.5 878.05 384.62 878.28 384.7 878.15 384.9L878 385.13Q877.99 385.16 877.96 385.14L875.59 384Q875.43 383.93 875.35 384.08L875.22 384.3Q875.2 384.34 875.24 384.36q7 3 12.79 7.94z"/><path fill="#fff" d="M663.15 390.16 663.31 479.04A.99.99.0 01662.55 480L610.99 492.19A.99.99.0 01609.77 491.24L609.19 407.31A.99.99.0 01609.86 406.36l51.99-17.14A.99.99.0 01663.15 390.16z"/><path fill="#c4e6ff" d="M934.75 436.96Q940.04 442.39 941.14 445C941.38 445.57 941.28 446.4 941.65 447.11Q943.11 449.92 944.8 452.54 945.59 453.76 946.02 455.01C946.43 456.23 946.62 457.26 947.3 458.42Q949.18 461.64 950.1 465.43 950.98 469.01 952.59 472.89 954.15 476.64 954.92 480.43C956.07 486.17 957.77 492.01 958.61 497.75Q961.35 516.61 959.78 535.62 958.79 547.6 956.49 558.44 955.4 563.55 953.66 569.03 953.13 570.7 952.44 572.26 951.94 573.38 951.83 574.56 951.72 575.76 951.27 576.84 949.11 582.1 946.91 587.17 946.3 588.59 945.97 590.12 945.61 591.77 944.69 593.13A1.71 1.69-26.2 00944.39 593.99Q944.29 595.46 943.33 596.5A.83.81 57.5 00943.16 597.31L943.29 597.67Q943.45 598.12 943.21 598.54C941.92 600.89 940.33 603.02 939.12 605.35 937.51 608.42 935.19 610.8 933.33 613.73Q929.31 620.09 923.63 625.37 915.92 632.55 907.95 640.2C899.29 648.52 886.51 656.73 874.77 663.04 868.01 666.67 860.03 669.38 852.49 671.66Q847.16 673.28 841.39 674.15 817.97 677.68 795.44 677.62 767.94 677.54 738.87 677.73A2.19 2.19.0 01736.67 675.56L736.15 604.08Q762.45 604.46 791.75 603.52C801.87 603.19 811.7 602.85 821.44 600.21Q846.68 593.35 866.31 577.47 875.85 569.75 883.64 559.19 889.94 550.64 895.88 538.78C898.98 532.57 901.13 526.18 902.92 519.5Q906.79 505.08 906.47 492.77 906.19 481.77 905.65 470.46 905.05 457.86 901.68 448 900.43 444.36 898.27 440C895.07 433.53 891.49 428.02 887.79 422.07Q887.09 420.94 887.11 419.62A.49.49.0 01887.81 419.18Q895.85 422.81 903.95 427.51C912.25 432.32 920.72 436.1 929.18 440.89Q930.42 441.59 931.62 440.82 933.36 439.7 934.75 436.96z"/><path fill="#c4e6ff" d="M422.48 603.46 422.22 676.12A.94.94.0 01421.31 677.06Q415.61 677.25 410.89 677.26 335.37 677.38 258.42 677.27 241.51 677.25 227.85 675.5C220.75 674.59 213.79 672.17 206.39 672.09Q203.51 672.06 200.92 670.96 193.12 667.64 184.36 663.69 179.72 661.6 176.36 658.71 176.21 658.58 176.38 658.48 176.5 658.41 176.63 658.37 176.74 658.34 176.62 658.35 175.25 658.44 174.47 657.33 174.27 657.04 173.93 657.11 173.4 657.21 172.97 656.97 162.21 650.9 156.23 646.33q-27.47-20.98-43.03-52.74Q103.83 574.46 100.1 554.97 98.75 547.92 98.18 537.77C99.61 542.27 101.52 546 106.78 543.08Q107.23 542.83 107.3 542.31C108.26 535.39 108.92 528.49 109.93 521.65Q111.47 511.33 116.92 498.43q4.25-10.05 8.58-17.14C129.7 474.41 134.82 467.17 138.35 459.6Q139.5 457.14 141.46 455.04 146.57 449.55 151.06 444.55 152.56 442.88 153.86 442.72 155.48 442.53 155.02 444.09 151.96 454.51 150.07 463.83C149.69 465.7 150.03 467.49 149.5 469.45Q148.73 472.34 148.6 475.52 148.17 486.3 148.32 495.49 148.38 499.18 149.17 502.91 150.92 511.24 153.32 520.84 155.23 528.46 157.62 533.43C162.76 544.13 168.02 553.53 176.23 562.27 184.08 570.63 192.75 579.51 202.18 585.6q22.78 14.73 48.84 16.86Q267.13 603.77 284.71 603.84 348.88 604.09 412.59 603.87 416.66 603.86 421.43 604.61 421.98 604.7 422.19 604.18L422.48 603.46z"/><path fill="#fff" d="M506.73 508.96C499.77 508.84 492.34 509.35 485.38 508.57A.85.84-75.5 01484.7 507.4C486.13 503.98 488.69 501.42 490.59 498.33q9-14.71 17.55-27.52Q508.89 469.68 509.34 468.32A.71.71.0 01510.64 468.22Q513.11 473.15 516.03 477.72 525.56 492.62 535.94 506.56 536.77 507.68 535.45 508.14 534.45 508.49 533.37 508.51 524.38 508.75 514.72 508.66A.65.65.0 00514.06 509.31L513.68 567.99Q513.67 569.51 512.14 569.48L509.29 569.43A1.71 1.71.0 01507.61 567.73L507.24 509.47Q507.23 508.97 506.73 508.96z"/><ellipse fill="#276089" cx="0" cy="0" transform="translate(677.88,521.11) rotate(84.9)" rx="14.73" ry="13.11"/><path fill="#276089" d="M653.38 677.42Q650.42 676.85 647.69 676.02 645.11 675.22 642.31 674.66 624.02 670.98 606.74 665.66 600.8 663.83 595.31 661.75A1.82 1.81-79.8 01594.14 660.05L593.96 538.72A.97.97.0 01594.78 537.76Q625.29 532.84 654.64 528.93A.58.57 76.9 01655.27 529.33C657.76 536.87 662.1 542.05 670.08 544.24Q673.94 545.3 677.91 546.11 679.12 546.36 679.12 547.6C679.02 593.21 679.65 637.75 679.09 684.09A.8.79-79.7 01678.03 684.83Q666.29 680.76 653.97 677.85C653.78 677.81 653.58 677.65 653.47 677.48Q653.44 677.43 653.38 677.42zm-43.37-32.04C610.01 646.98 610.77 648.42 612.26 649.06 620.63 652.63 629.2 654.01 637.6 656.47Q649.19 659.86 661.88 663.03 663.27 663.38 663.33 661.95 663.43 659.77 663.43 657.69 663.36 600.71 663.09 550.52A1.49 1.48 1.9 00661.71 549.05Q658.24 548.79 654.88 548.95 640.98 549.6 624.11 551.2 617.1 551.87 609.98 552.02A.46.45-1.3 00609.53 552.48Q609.94 600.04 610.01 645.38z"/><path fill="#fff" d="M612.26 649.06C610.77 648.42 610.01 646.98 610.01 645.38Q609.94 600.04 609.53 552.48A.46.45-1.3 01609.98 552.02Q617.1 551.87 624.11 551.2 640.98 549.6 654.88 548.95 658.24 548.79 661.71 549.05A1.49 1.48 1.9 01663.09 550.52Q663.36 600.71 663.43 657.69 663.43 659.77 663.33 661.95 663.27 663.38 661.88 663.03 649.19 659.86 637.6 656.47C629.2 654.01 620.63 652.63 612.26 649.06z"/><path fill="#c4e6ff" d="M664.46 705.55Q660.29 705.43 657.52 704.26 655.83 703.54 654.31 703.37 652.68 703.19 651.25 702.9 635.66 699.73 630.86 698.4 618.05 694.87 604.84 691.11C600.29 689.82 595.8 687.86 591.3 687.21Q588.82 686.85 585.95 686.1 584.37 685.69 582 685.13 580.2 684.7 578.66 683.64 578.25 683.35 577.75 683.35 573.46 683.34 572.05 680.95 576.99 682.31 584.74 683.66 588.3 684.27 599.95 686.55 607.98 688.12 614.98 690.12 624.29 692.77 633.31 695.66 637.25 696.91 641.14 698.5C644.58 699.9 647.87 700.21 651.42 700.83Q653.66 701.22 655.67 702.18 657.6 703.1 659.7 703.75 662.11 704.49 664.46 705.55z"/></svg></span><span class=navbar-brand__name>Apache OpenServerless™</span></a><div class="td-navbar-nav-scroll ms-md-auto" id=main_navbar><ul class=navbar-nav><li class=nav-item><a class=nav-link href=/about/><span>About</span></a></li><li class=nav-item><a class=nav-link href=/blog/><span>Blog</span></a></li><li class=nav-item><a class="nav-link active" href=/docs/><span>Docs</span></a></li><li class=nav-item><a class=nav-link href=/community/><span>Community</span></a></li><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" role=button data-bs-toggle=dropdown aria-haspopup=true aria-expanded=false href><span>Apache Software Foundation</span></a><ul class=dropdown-menu><li><a class=dropdown-item href=https://www.apache.org/>Apache Homepage</a></li><li><a class=dropdown-item href=https://www.apache.org/licenses/>License</a></li><li><a class=dropdown-item href=https://www.apache.org/foundation/sponsorship.html>Sponsorship</a></li><li><a class=dropdown-item href=https://www.apache.org/foundation/thanks.html>Thanks</a></li><li><a class=dropdown-item href=https://www.apache.org/security/>Security</a></li><li><a class=dropdown-item href=https://privacy.apache.org/policies/privacy-policy-public.html>Privacy</a></li><li><a class=dropdown-item href=https://www.apache.org/events/current-event>Events</a></li></ul></li></ul></div></div></nav></header><div class="container-fluid td-outer"><div class=td-main><div class="row flex-xl-nowrap"><aside class="col-12 col-md-3 col-xl-2 td-sidebar d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><form class="td-sidebar__search d-flex align-items-center"><div class="td-search td-search--offline"><div class=td-search__icon></div><input type=search class="td-search__input form-control" placeholder="Search this site…" aria-label="Search this site…" autocomplete=off data-offline-search-index-json-src=/offline-search-index.18d36acbfd11db1d3f75fcbb2d1cd511.json data-offline-search-base-href=/ data-offline-search-max-results=10></div><button class="btn btn-link td-sidebar__toggle d-md-none p-0 ms-3 fas fa-bars" type=button data-bs-toggle=collapse data-bs-target=#td-section-nav aria-controls=td-section-nav aria-expanded=false aria-label="Toggle section navigation"></button></form><nav class="td-sidebar-nav collapse foldable-nav" id=td-section-nav><ul class="td-sidebar-nav__section pe-md-3 ul-0"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docs-li><a href=/docs/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section tree-root" id=m-docs><span>Docs</span></a><ul class=ul-1><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docstutorial-li><input type=checkbox id=m-docstutorial-check> |
| <label for=m-docstutorial-check><a href=/docs/tutorial/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorial><span>Tutorial</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialgetting-started-li><input type=checkbox id=m-docstutorialgetting-started-check> |
| <label for=m-docstutorialgetting-started-check><a href=/docs/tutorial/getting-started/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialgetting-started><span>Getting started</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialfirst-steps-li><input type=checkbox id=m-docstutorialfirst-steps-check> |
| <label for=m-docstutorialfirst-steps-check><a href=/docs/tutorial/first-steps/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialfirst-steps><span>First steps</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialform-validation-li><input type=checkbox id=m-docstutorialform-validation-check> |
| <label for=m-docstutorialform-validation-check><a href=/docs/tutorial/form-validation/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialform-validation><span>Form validation</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialuse-database-li><input type=checkbox id=m-docstutorialuse-database-check> |
| <label for=m-docstutorialuse-database-check><a href=/docs/tutorial/use-database/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialuse-database><span>Use database</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialnotify-message-li><input type=checkbox id=m-docstutorialnotify-message-check> |
| <label for=m-docstutorialnotify-message-check><a href=/docs/tutorial/notify-message/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialnotify-message><span>Sending notifications</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialpackaging-li><input type=checkbox id=m-docstutorialpackaging-check> |
| <label for=m-docstutorialpackaging-check><a href=/docs/tutorial/packaging/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialpackaging><span>App Deployment</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docstutorialconclusions-li><input type=checkbox id=m-docstutorialconclusions-check> |
| <label for=m-docstutorialconclusions-check><a href=/docs/tutorial/conclusions/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docstutorialconclusions><span>Conclusions</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docscli-li><input type=checkbox id=m-docscli-check> |
| <label for=m-docscli-check><a href=/docs/cli/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docscli><span>CLI</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsclientities-li><input type=checkbox id=m-docsclientities-check> |
| <label for=m-docsclientities-check><a href=/docs/cli/entities/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientities><span>Entities</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiespackages-li><input type=checkbox id=m-docsclientitiespackages-check> |
| <label for=m-docsclientitiespackages-check><a href=/docs/cli/entities/packages/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiespackages><span>Packages</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiesactions-li><input type=checkbox id=m-docsclientitiesactions-check> |
| <label for=m-docsclientitiesactions-check><a href=/docs/cli/entities/actions/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiesactions><span>Actions</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiesactivations-li><input type=checkbox id=m-docsclientitiesactivations-check> |
| <label for=m-docsclientitiesactivations-check><a href=/docs/cli/entities/activations/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiesactivations><span>Activations</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiessequences-li><input type=checkbox id=m-docsclientitiessequences-check> |
| <label for=m-docsclientitiessequences-check><a href=/docs/cli/entities/sequences/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiessequences><span>Sequences</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiestriggers-li><input type=checkbox id=m-docsclientitiestriggers-check> |
| <label for=m-docsclientitiestriggers-check><a href=/docs/cli/entities/triggers/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiestriggers><span>Triggers</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientitiesrules-li><input type=checkbox id=m-docsclientitiesrules-check> |
| <label for=m-docsclientitiesrules-check><a href=/docs/cli/entities/rules/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientitiesrules><span>Rules</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscliadmin-li><input type=checkbox id=m-docscliadmin-check> |
| <label for=m-docscliadmin-check><a href=/docs/cli/admin/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docscliadmin><span>Administration</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclidebug-li><input type=checkbox id=m-docsclidebug-check> |
| <label for=m-docsclidebug-check><a href=/docs/cli/debug/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsclidebug><span>Debugging</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscliproject-li><input type=checkbox id=m-docscliproject-check> |
| <label for=m-docscliproject-check><a href=/docs/cli/project/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docscliproject><span>Project</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscliassets-li><input type=checkbox id=m-docscliassets-check> |
| <label for=m-docscliassets-check><a href=/docs/cli/assets/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docscliassets><span>Web Assets</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreference-li><input type=checkbox id=m-docsreference-check> |
| <label for=m-docsreference-check><a href=/docs/reference/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreference><span>Reference</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferenceentities-li><input type=checkbox id=m-docsreferenceentities-check> |
| <label for=m-docsreferenceentities-check><a href=/docs/reference/entities/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentities><span>Entities</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitiesactions-li><input type=checkbox id=m-docsreferenceentitiesactions-check> |
| <label for=m-docsreferenceentitiesactions-check><a href=/docs/reference/entities/actions/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitiesactions><span>Actions</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitieswebactions-li><input type=checkbox id=m-docsreferenceentitieswebactions-check> |
| <label for=m-docsreferenceentitieswebactions-check><a href=/docs/reference/entities/webactions/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitieswebactions><span>Web Actions</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitiesparameters-li><input type=checkbox id=m-docsreferenceentitiesparameters-check> |
| <label for=m-docsreferenceentitiesparameters-check><a href=/docs/reference/entities/parameters/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitiesparameters><span>Parameters</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitiesannotations-li><input type=checkbox id=m-docsreferenceentitiesannotations-check> |
| <label for=m-docsreferenceentitiesannotations-check><a href=/docs/reference/entities/annotations/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitiesannotations><span>Annotations</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitiespackages-li><input type=checkbox id=m-docsreferenceentitiespackages-check> |
| <label for=m-docsreferenceentitiespackages-check><a href=/docs/reference/entities/packages/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitiespackages><span>Packages</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceentitiesfeeds-li><input type=checkbox id=m-docsreferenceentitiesfeeds-check> |
| <label for=m-docsreferenceentitiesfeeds-check><a href=/docs/reference/entities/feeds/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceentitiesfeeds><span>Feeds</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferencereferences-li><input type=checkbox id=m-docsreferencereferences-check> |
| <label for=m-docsreferencereferences-check><a href=/docs/reference/references/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferences><span>Advanced Reference Guide</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesadvanced-cli-li><input type=checkbox id=m-docsreferencereferencesadvanced-cli-check> |
| <label for=m-docsreferencereferencesadvanced-cli-check><a href=/docs/reference/references/advanced-cli/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesadvanced-cli><span>Advanced CLI</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesnaming-limits-li><input type=checkbox id=m-docsreferencereferencesnaming-limits-check> |
| <label for=m-docsreferencereferencesnaming-limits-check><a href=/docs/reference/references/naming-limits/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesnaming-limits><span>Naming Limits</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesrest_api-li><input type=checkbox id=m-docsreferencereferencesrest_api-check> |
| <label for=m-docsreferencereferencesrest_api-check><a href=/docs/reference/references/rest_api/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesrest_api><span>Rest API</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesscheduler-li><input type=checkbox id=m-docsreferencereferencesscheduler-check> |
| <label for=m-docsreferencereferencesscheduler-check><a href=/docs/reference/references/scheduler/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesscheduler><span>Scheduler</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesactions-new-li><input type=checkbox id=m-docsreferencereferencesactions-new-check> |
| <label for=m-docsreferencereferencesactions-new-check><a href=/docs/reference/references/actions-new/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesactions-new><span>Runtimes under the hood</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencereferencesactions-actionloop-li><input type=checkbox id=m-docsreferencereferencesactions-actionloop-check> |
| <label for=m-docsreferencereferencesactions-actionloop-check><a href=/docs/reference/references/actions-actionloop/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencereferencesactions-actionloop><span>Building your runtime</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferenceruntimes-li><input type=checkbox id=m-docsreferenceruntimes-check> |
| <label for=m-docsreferenceruntimes-check><a href=/docs/reference/runtimes/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimes><span>Runtimes</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferenceruntimesnodejs-li><input type=checkbox id=m-docsreferenceruntimesnodejs-check> |
| <label for=m-docsreferenceruntimesnodejs-check><a href=/docs/reference/runtimes/nodejs/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesnodejs><span>NodeJS</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesnodejsnodejsv18-li><input type=checkbox id=m-docsreferenceruntimesnodejsnodejsv18-check> |
| <label for=m-docsreferenceruntimesnodejsnodejsv18-check><a href=/docs/reference/runtimes/nodejs/nodejsv18/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesnodejsnodejsv18><span>nodejs:v18</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesnodejsnodejsv20-li><input type=checkbox id=m-docsreferenceruntimesnodejsnodejsv20-check> |
| <label for=m-docsreferenceruntimesnodejsnodejsv20-check><a href=/docs/reference/runtimes/nodejs/nodejsv20/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesnodejsnodejsv20><span>nodejs:v20</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesnodejsnodejsv21-li><input type=checkbox id=m-docsreferenceruntimesnodejsnodejsv21-check> |
| <label for=m-docsreferenceruntimesnodejsnodejsv21-check><a href=/docs/reference/runtimes/nodejs/nodejsv21/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesnodejsnodejsv21><span>nodejs:v21</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferenceruntimesphp-li><input type=checkbox id=m-docsreferenceruntimesphp-check> |
| <label for=m-docsreferenceruntimesphp-check><a href=/docs/reference/runtimes/php/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesphp><span>PHP</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesphpphpv80-li><input type=checkbox id=m-docsreferenceruntimesphpphpv80-check> |
| <label for=m-docsreferenceruntimesphpphpv80-check><a href=/docs/reference/runtimes/php/phpv8.0/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesphpphpv80><span>php:v8.0</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesphpphpv81-li><input type=checkbox id=m-docsreferenceruntimesphpphpv81-check> |
| <label for=m-docsreferenceruntimesphpphpv81-check><a href=/docs/reference/runtimes/php/phpv8.1/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesphpphpv81><span>php:v8.1</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesphpphpv82-li><input type=checkbox id=m-docsreferenceruntimesphpphpv82-check> |
| <label for=m-docsreferenceruntimesphpphpv82-check><a href=/docs/reference/runtimes/php/phpv8.2/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesphpphpv82><span>php:v8.2</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimesphpphpv83-li><input type=checkbox id=m-docsreferenceruntimesphpphpv83-check> |
| <label for=m-docsreferenceruntimesphpphpv83-check><a href=/docs/reference/runtimes/php/phpv8.3/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimesphpphpv83><span>php:v8.3</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferenceruntimespython-li><input type=checkbox id=m-docsreferenceruntimespython-check> |
| <label for=m-docsreferenceruntimespython-check><a href=/docs/reference/runtimes/python/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimespython><span>Python</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimespythonpythonv310-li><input type=checkbox id=m-docsreferenceruntimespythonpythonv310-check> |
| <label for=m-docsreferenceruntimespythonpythonv310-check><a href=/docs/reference/runtimes/python/pythonv3.10/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimespythonpythonv310><span>python:v3.10</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimespythonpythonv311-li><input type=checkbox id=m-docsreferenceruntimespythonpythonv311-check> |
| <label for=m-docsreferenceruntimespythonpythonv311-check><a href=/docs/reference/runtimes/python/pythonv3.11/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimespythonpythonv311><span>python:v3.11</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferenceruntimespythonpythonv312-li><input type=checkbox id=m-docsreferenceruntimespythonpythonv312-check> |
| <label for=m-docsreferenceruntimespythonpythonv312-check><a href=/docs/reference/runtimes/python/pythonv3.12/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferenceruntimespythonpythonv312><span>python:v3.12</span></a></label></li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferencetasks-li><input type=checkbox id=m-docsreferencetasks-check> |
| <label for=m-docsreferencetasks-check><a href=/docs/reference/tasks/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasks><span>Tasks</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksadmin-li><input type=checkbox id=m-docsreferencetasksadmin-check> |
| <label for=m-docsreferencetasksadmin-check><a href=/docs/reference/tasks/admin/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksadmin><span>Admin</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferencetaskscloud-li><input type=checkbox id=m-docsreferencetaskscloud-check> |
| <label for=m-docsreferencetaskscloud-check><a href=/docs/reference/tasks/cloud/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloud><span>Cloud</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudaks-li><input type=checkbox id=m-docsreferencetaskscloudaks-check> |
| <label for=m-docsreferencetaskscloudaks-check><a href=/docs/reference/tasks/cloud/aks/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudaks><span>Aks</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudaws-li><input type=checkbox id=m-docsreferencetaskscloudaws-check> |
| <label for=m-docsreferencetaskscloudaws-check><a href=/docs/reference/tasks/cloud/aws/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudaws><span>Aws</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudazcloud-li><input type=checkbox id=m-docsreferencetaskscloudazcloud-check> |
| <label for=m-docsreferencetaskscloudazcloud-check><a href=/docs/reference/tasks/cloud/azcloud/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudazcloud><span>Azcloud</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudeks-li><input type=checkbox id=m-docsreferencetaskscloudeks-check> |
| <label for=m-docsreferencetaskscloudeks-check><a href=/docs/reference/tasks/cloud/eks/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudeks><span>Eks</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudgcloud-li><input type=checkbox id=m-docsreferencetaskscloudgcloud-check> |
| <label for=m-docsreferencetaskscloudgcloud-check><a href=/docs/reference/tasks/cloud/gcloud/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudgcloud><span>Gcloud</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudgke-li><input type=checkbox id=m-docsreferencetaskscloudgke-check> |
| <label for=m-docsreferencetaskscloudgke-check><a href=/docs/reference/tasks/cloud/gke/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudgke><span>Gke</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudk3s-li><input type=checkbox id=m-docsreferencetaskscloudk3s-check> |
| <label for=m-docsreferencetaskscloudk3s-check><a href=/docs/reference/tasks/cloud/k3s/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudk3s><span>K3s</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudmk8s-li><input type=checkbox id=m-docsreferencetaskscloudmk8s-check> |
| <label for=m-docsreferencetaskscloudmk8s-check><a href=/docs/reference/tasks/cloud/mk8s/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudmk8s><span>Mk8s</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskscloudosh-li><input type=checkbox id=m-docsreferencetaskscloudosh-check> |
| <label for=m-docsreferencetaskscloudosh-check><a href=/docs/reference/tasks/cloud/osh/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskscloudosh><span>Osh</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksconfig-li><input type=checkbox id=m-docsreferencetasksconfig-check> |
| <label for=m-docsreferencetasksconfig-check><a href=/docs/reference/tasks/config/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksconfig><span>Config</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksdebug-li><input type=checkbox id=m-docsreferencetasksdebug-check> |
| <label for=m-docsreferencetasksdebug-check><a href=/docs/reference/tasks/debug/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdebug><span>Debug</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferencetasksdevel-li><input type=checkbox id=m-docsreferencetasksdevel-check> |
| <label for=m-docsreferencetasksdevel-check><a href=/docs/reference/tasks/devel/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdevel><span>Devel</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksdevelferretdb-li><input type=checkbox id=m-docsreferencetasksdevelferretdb-check> |
| <label for=m-docsreferencetasksdevelferretdb-check><a href=/docs/reference/tasks/devel/ferretdb/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdevelferretdb><span>Ferretdb</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksdevelminio-li><input type=checkbox id=m-docsreferencetasksdevelminio-check> |
| <label for=m-docsreferencetasksdevelminio-check><a href=/docs/reference/tasks/devel/minio/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdevelminio><span>Minio</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksdevelpsql-li><input type=checkbox id=m-docsreferencetasksdevelpsql-check> |
| <label for=m-docsreferencetasksdevelpsql-check><a href=/docs/reference/tasks/devel/psql/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdevelpsql><span>Psql</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksdevelredis-li><input type=checkbox id=m-docsreferencetasksdevelredis-check> |
| <label for=m-docsreferencetasksdevelredis-check><a href=/docs/reference/tasks/devel/redis/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksdevelredis><span>Redis</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksenv-li><input type=checkbox id=m-docsreferencetasksenv-check> |
| <label for=m-docsreferencetasksenv-check><a href=/docs/reference/tasks/env/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksenv><span>Env</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskside-li><input type=checkbox id=m-docsreferencetaskside-check> |
| <label for=m-docsreferencetaskside-check><a href=/docs/reference/tasks/ide/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskside><span>Ide</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetaskssetup-li><input type=checkbox id=m-docsreferencetaskssetup-check> |
| <label for=m-docsreferencetaskssetup-check><a href=/docs/reference/tasks/setup/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetaskssetup><span>Setup</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetasksutil-li><input type=checkbox id=m-docsreferencetasksutil-check> |
| <label for=m-docsreferencetasksutil-check><a href=/docs/reference/tasks/util/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetasksutil><span>Util</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsreferencetools-li><input type=checkbox id=m-docsreferencetools-check> |
| <label for=m-docsreferencetools-check><a href=/docs/reference/tools/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetools><span>Tools</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsbase64-li><input type=checkbox id=m-docsreferencetoolsbase64-check> |
| <label for=m-docsreferencetoolsbase64-check><a href=/docs/reference/tools/base64/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsbase64><span>base64</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsdatefmt-li><input type=checkbox id=m-docsreferencetoolsdatefmt-check> |
| <label for=m-docsreferencetoolsdatefmt-check><a href=/docs/reference/tools/datefmt/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsdatefmt><span>datefmt</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsechoif-li><input type=checkbox id=m-docsreferencetoolsechoif-check> |
| <label for=m-docsreferencetoolsechoif-check><a href=/docs/reference/tools/echoif/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsechoif><span>echoif</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsechoifempty-li><input type=checkbox id=m-docsreferencetoolsechoifempty-check> |
| <label for=m-docsreferencetoolsechoifempty-check><a href=/docs/reference/tools/echoifempty/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsechoifempty><span>echoifempty</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsechoifexists-li><input type=checkbox id=m-docsreferencetoolsechoifexists-check> |
| <label for=m-docsreferencetoolsechoifexists-check><a href=/docs/reference/tools/echoifexists/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsechoifexists><span>echoifexists</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsempty-li><input type=checkbox id=m-docsreferencetoolsempty-check> |
| <label for=m-docsreferencetoolsempty-check><a href=/docs/reference/tools/empty/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsempty><span>empty</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsexecutable-li><input type=checkbox id=m-docsreferencetoolsexecutable-check> |
| <label for=m-docsreferencetoolsexecutable-check><a href=/docs/reference/tools/executable/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsexecutable><span>executable</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsextract-li><input type=checkbox id=m-docsreferencetoolsextract-check> |
| <label for=m-docsreferencetoolsextract-check><a href=/docs/reference/tools/extract/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsextract><span>extract</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsfiletype-li><input type=checkbox id=m-docsreferencetoolsfiletype-check> |
| <label for=m-docsreferencetoolsfiletype-check><a href=/docs/reference/tools/filetype/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsfiletype><span>filetype</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsneedupdate-li><input type=checkbox id=m-docsreferencetoolsneedupdate-check> |
| <label for=m-docsreferencetoolsneedupdate-check><a href=/docs/reference/tools/needupdate/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsneedupdate><span>needupdate</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsopspath-li><input type=checkbox id=m-docsreferencetoolsopspath-check> |
| <label for=m-docsreferencetoolsopspath-check><a href=/docs/reference/tools/opspath/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsopspath><span>opspath</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsrandom-li><input type=checkbox id=m-docsreferencetoolsrandom-check> |
| <label for=m-docsreferencetoolsrandom-check><a href=/docs/reference/tools/random/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsrandom><span>random</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsremove-li><input type=checkbox id=m-docsreferencetoolsremove-check> |
| <label for=m-docsreferencetoolsremove-check><a href=/docs/reference/tools/remove/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsremove><span>remove</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsrename-li><input type=checkbox id=m-docsreferencetoolsrename-check> |
| <label for=m-docsreferencetoolsrename-check><a href=/docs/reference/tools/rename/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsrename><span>rename</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsretry-li><input type=checkbox id=m-docsreferencetoolsretry-check> |
| <label for=m-docsreferencetoolsretry-check><a href=/docs/reference/tools/retry/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsretry><span>retry</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolssh-li><input type=checkbox id=m-docsreferencetoolssh-check> |
| <label for=m-docsreferencetoolssh-check><a href=/docs/reference/tools/sh/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolssh><span>sh</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsurlenc-li><input type=checkbox id=m-docsreferencetoolsurlenc-check> |
| <label for=m-docsreferencetoolsurlenc-check><a href=/docs/reference/tools/urlenc/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsurlenc><span>urlenc</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsreferencetoolsvalidate-li><input type=checkbox id=m-docsreferencetoolsvalidate-check> |
| <label for=m-docsreferencetoolsvalidate-check><a href=/docs/reference/tools/validate/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsreferencetoolsvalidate><span>validate</span></a></label></li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsinstallation-li><input type=checkbox id=m-docsinstallation-check checked> |
| <label for=m-docsinstallation-check><a href=/docs/installation/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallation><span>Installation</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationquickstart-li><input type=checkbox id=m-docsinstallationquickstart-check> |
| <label for=m-docsinstallationquickstart-check><a href=/docs/installation/quickstart/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationquickstart><span>Quick Start</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationdownload-li><input type=checkbox id=m-docsinstallationdownload-check> |
| <label for=m-docsinstallationdownload-check><a href=/docs/installation/download/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationdownload><span>Download</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsinstallationprereq-li><input type=checkbox id=m-docsinstallationprereq-check checked> |
| <label for=m-docsinstallationprereq-check><a href=/docs/installation/prereq/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereq><span>Prerequisites</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqdocker-li><input type=checkbox id=m-docsinstallationprereqdocker-check> |
| <label for=m-docsinstallationprereqdocker-check><a href=/docs/installation/prereq/docker/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqdocker><span>Local Docker</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsinstallationprereqserver-li><input type=checkbox id=m-docsinstallationprereqserver-check checked> |
| <label for=m-docsinstallationprereqserver-check><a href=/docs/installation/prereq/server/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqserver><span>Linux Server</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child active-path" id=m-docsinstallationprereqservergeneric-li><input type=checkbox id=m-docsinstallationprereqservergeneric-check checked> |
| <label for=m-docsinstallationprereqservergeneric-check><a href=/docs/installation/prereq/server/generic/ class="align-left ps-0 active td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqservergeneric><span class=td-sidebar-nav-active-item>SSH and Sudo</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqserveraws-li><input type=checkbox id=m-docsinstallationprereqserveraws-check> |
| <label for=m-docsinstallationprereqserveraws-check><a href=/docs/installation/prereq/server/aws/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqserveraws><span>Server on AWS</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqserverazure-li><input type=checkbox id=m-docsinstallationprereqserverazure-check> |
| <label for=m-docsinstallationprereqserverazure-check><a href=/docs/installation/prereq/server/azure/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqserverazure><span>Server on Azure</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqserverk3s-li><input type=checkbox id=m-docsinstallationprereqserverk3s-check> |
| <label for=m-docsinstallationprereqserverk3s-check><a href=/docs/installation/prereq/server/k3s/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqserverk3s><span>Install K3S</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqservermk8s-li><input type=checkbox id=m-docsinstallationprereqservermk8s-check> |
| <label for=m-docsinstallationprereqservermk8s-check><a href=/docs/installation/prereq/server/mk8s/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqservermk8s><span>Install MicroK8S</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsinstallationprereqkubernetes-li><input type=checkbox id=m-docsinstallationprereqkubernetes-check> |
| <label for=m-docsinstallationprereqkubernetes-check><a href=/docs/installation/prereq/kubernetes/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqkubernetes><span>Kubernetes Cluster</span></a></label><ul class="ul-4 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqkuberneteseks-li><input type=checkbox id=m-docsinstallationprereqkuberneteseks-check> |
| <label for=m-docsinstallationprereqkuberneteseks-check><a href=/docs/installation/prereq/kubernetes/eks/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqkuberneteseks><span>Amazon EKS</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqkubernetesaks-li><input type=checkbox id=m-docsinstallationprereqkubernetesaks-check> |
| <label for=m-docsinstallationprereqkubernetesaks-check><a href=/docs/installation/prereq/kubernetes/aks/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqkubernetesaks><span>Azure AKS</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationprereqkubernetescluster-li><input type=checkbox id=m-docsinstallationprereqkubernetescluster-check> |
| <label for=m-docsinstallationprereqkubernetescluster-check><a href=/docs/installation/prereq/kubernetes/cluster/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationprereqkubernetescluster><span>Generic Kubernetes</span></a></label></li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsinstallationconfigure-li><input type=checkbox id=m-docsinstallationconfigure-check> |
| <label for=m-docsinstallationconfigure-check><a href=/docs/installation/configure/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationconfigure><span>Configure OpenServerless</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationconfiguredns-li><input type=checkbox id=m-docsinstallationconfiguredns-check> |
| <label for=m-docsinstallationconfiguredns-check><a href=/docs/installation/configure/dns/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationconfiguredns><span>DNS and SSL</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationconfigureservices-li><input type=checkbox id=m-docsinstallationconfigureservices-check> |
| <label for=m-docsinstallationconfigureservices-check><a href=/docs/installation/configure/services/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationconfigureservices><span>Services</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsinstallationinstall-li><input type=checkbox id=m-docsinstallationinstall-check> |
| <label for=m-docsinstallationinstall-check><a href=/docs/installation/install/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationinstall><span>Install OpenServerless</span></a></label><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationinstalldocker-li><input type=checkbox id=m-docsinstallationinstalldocker-check> |
| <label for=m-docsinstallationinstalldocker-check><a href=/docs/installation/install/docker/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationinstalldocker><span>Docker</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationinstallserver-li><input type=checkbox id=m-docsinstallationinstallserver-check> |
| <label for=m-docsinstallationinstallserver-check><a href=/docs/installation/install/server/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationinstallserver><span>Linux Server</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationinstallcluster-li><input type=checkbox id=m-docsinstallationinstallcluster-check> |
| <label for=m-docsinstallationinstallcluster-check><a href=/docs/installation/install/cluster/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationinstallcluster><span>Kubernetes cluster</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsinstallationdebug-li><input type=checkbox id=m-docsinstallationdebug-check> |
| <label for=m-docsinstallationdebug-check><a href=/docs/installation/debug/ class="align-left ps-0 td-sidebar-link td-sidebar-link__section" id=m-docsinstallationdebug><span>Troubleshooting</span></a></label></li></ul></li></ul></li></ul></nav></div></aside><aside class="d-none d-xl-block col-xl-2 td-sidebar-toc d-print-none"><div class="td-page-meta ms-2 pb-1 pt-2 mb-0"><a id=print href=/docs/installation/prereq/server/generic/_print/><i class="fa-solid fa-print fa-fw"></i> Print entire section</a></div><div class=td-toc><nav id=TableOfContents><ul><li><a href=#configure-a-generic-linux-server-to-install-openserverless>Configure a generic Linux server to install OpenServerless</a><ul><li><a href=#sshkey>Installing a public SSH key</a></li><li><a href=#sudo>Configure Sudo</a></li><li><a href=#firewall>Open the firewall</a></li></ul></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 ps-md-5" role=main><nav aria-label=breadcrumb class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a href=/docs/>Docs</a></li><li class=breadcrumb-item><a href=/docs/installation/>Installation</a></li><li class=breadcrumb-item><a href=/docs/installation/prereq/>Prerequisites</a></li><li class=breadcrumb-item><a href=/docs/installation/prereq/server/>Linux Server</a></li><li class="breadcrumb-item active" aria-current=page>SSH and Sudo</li></ol></nav><div class=td-content><h1>SSH and Sudo</h1><div class=lead>General prerequisites to install OpenServerless</div><header class=article-meta></header><h2 id=configure-a-generic-linux-server-to-install-openserverless>Configure a generic Linux server to install OpenServerless</h2><p>If you have access to a generic Linux server, to be able to install |
| OpenServerless it needs to:</p><ol><li><p>be accessible without a password with <code>ssh</code></p></li><li><p>be able to run root commands without a password with <code>sudo</code></p></li><li><p>open the ports 80, 443 and 6443 or 16443</p></li></ol><p>If your server does not already satisfy those requirements, read below |
| for information how to create a <a href=/docs/installation/prereq/server/generic/#sshkey>sshkey</a>, |
| <a href=/docs/installation/prereq/server/generic/#sudo>configure sudo</a> and <a href=/docs/installation/prereq/server/generic/#firewall>open the firewall</a></p><h3 id=sshkey>Installing a public SSH key</h3><p>To connect to a server without a password using <code>openssh</code> (used by the |
| installer), you need a couple of files called <strong>ssh keys</strong>.</p><p>You can generate them on the command line using this command:</p><pre><code>ssh-keygen |
| </code></pre><p>It will create a couple of files, typically called:</p><ul><li><p><code>~/.ssh/id_rsa</code></p></li><li><p><code>~/.ssh/id_rsa.pub</code></p></li></ul><p>where <code>~</code> is your home directory.</p><p>You have to keep secret the <code>id_rsa</code> file because it is the private key |
| and contains the information to identify you uniquely. Think to is as |
| your password.</p><p>You can copy the <code>id_rsa.pub</code> in the server or even share it publicly, |
| as it is the public key. Think to it as your login name, and adding this |
| file to the server adds you to the users who can login into it.</p><p>Once you have generated the public key, access your server, then edit |
| the file <code>~/.ssh/authorized_keys</code> adding the public key to it.</p><p>It is just one line, contained in the <code>id_rsa.pub</code> file.</p><p>Create the file if it does not exist. Append the line to the file (as a |
| single line) if it already exists. Do not remove other lines if you do |
| not want to remove access to other users.</p><h3 id=sudo>Configure Sudo</h3><p>You normally access Linux servers using a user that is <strong>not</strong> <code>root</code> |
| (the system administrator with unlimited power on the system).</p><p>Depending on the system, the user to use to access be <code>ubuntu</code>, |
| <code>ec2-user</code>, <code>admin</code> or something else entirely. However if you have |
| access to the server, the information of which user to use should have |
| been provided, including a way to access to the <code>root</code> user.</p><p>You need to give this user the right to execute commands as <code>root</code> |
| without a password, and you do this by configuring the command <code>sudo</code>.</p><p>You usually have either access to root with the <code>su</code> command, or you can |
| execute <code>sudo</code> with a password.</p><p>Type either <code>su</code> or <code>sudo bash</code> to become root and edit the file |
| <code>/etc/sudoers</code> adding the following line:</p><pre><code><user> ALL=(ALL) NOPASSWD:ALL |
| </code></pre><p>where <code><user></code> is the user you use to log into the system.</p><h3 id=firewall>Open the firewall</h3><p>You need to open the following ports in the firewall of the server:</p><ul><li><p>443 for HTTPS</p></li><li><p>80 for HTTP and provisioning certificates</p></li><li><p>6443 (K3S) or 16443 (MicroK8S) for Kubernetes</p></li></ul><p>For information on how to open the firewall, please consult the |
| documentation of your cloud provider or contact your system |
| administrator, as there are no common procedures and they depends on the |
| cloud provider.</p><div class=section-index></div><style>.feedback--answer{display:inline-block}.feedback--answer-no{margin-left:1em}.feedback--response{display:none;margin-top:1em}.feedback--response__visible{display:block}</style><div class=d-print-none><h2 class=feedback--title>Feedback</h2><p class=feedback--question>Was this page helpful?</p><button class="btn btn-primary mb-4 feedback--answer feedback--answer-yes">Yes</button> |
| <button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button><p class="feedback--response feedback--response-yes">Glad to hear it! Please <a href=https://github.com/USERNAME/REPOSITORY/issues/new>tell us how we can improve</a>.</p><p class="feedback--response feedback--response-no">Sorry to hear that. Please <a href=https://github.com/USERNAME/REPOSITORY/issues/new>tell us how we can improve</a>.</p></div><script>const yesButton=document.querySelector(".feedback--answer-yes"),noButton=document.querySelector(".feedback--answer-no"),yesResponse=document.querySelector(".feedback--response-yes"),noResponse=document.querySelector(".feedback--response-no"),disableButtons=()=>{yesButton.disabled=!0,noButton.disabled=!0},sendFeedback=e=>{if(typeof gtag!="function")return;gtag("event","page_helpful",{event_category:"Helpful",event_label:window.location.pathname,value:e})};yesButton.addEventListener("click",()=>{yesResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(100)}),noButton.addEventListener("click",()=>{noResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(0)})</script><br></div></main></div></div><footer class="td-footer row d-print-none"><div class=container-fluid><div class="disclaimer text-center"><div class="row mx-md-2"><div class="td-footer__left col-6 col-sm-2 order-sm-1"> </div><div class="td-footer__right col-6 col-sm-2 order-sm-3"> </div><div class="td-footer__center col-12 col-sm-8 py-2 order-sm-2"><p>Apache Openserverless™ is an effort undergoing incubation at The Apache Software Foundation (ASF), |
| sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a |
| further review indicates that the infrastructure, communications, and decision making process |
| have stabilized in a manner consistent with other successful ASF projects. While incubation |
| status is not necessarily a reflection of the completeness or stability of the code, it does |
| indicate that the project has yet to be fully endorsed by the ASF.</p><br><br><p>Copyright © 2024 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. |
| Apache Openserverless, the names of other Apache projects, and the ASF logo are either |
| registered trademarks or trademarks of the Apache Software Foundation in the United States |
| and/or other countries.</p></div></div><div class="row mx-md-2"><div class="td-footer__left col-6 col-sm-4 order-sm-1"> </div><div class="td-footer__right col-6 col-sm-4 order-sm-3"> </div><div class="td-footer__center col-12 col-sm-4 py-2 order-sm-2"><a href=https://www.apache.org/><img class="asf-logo rounded-image" src=/images/asf.webp width=256 height=104> |
| </a><a href=https://incubator.apache.org/projects/openserverless.html><img class="asf-logo rounded-image" src=/images/apache_incubator.webp width=256 height=104></a></div></div></div></div><div class=container-fluid><div class="row mx-md-2"><div class="td-footer__left col-6 col-sm-4 order-sm-1"><ul class=td-footer__links-list><li class=td-footer__links-item data-bs-toggle=tooltip title="Developer mailing list" aria-label="Developer mailing list"><a target=_blank rel=noopener href=mailto:dev-subscribe@openserverless.apache.org aria-label="Developer mailing list"><i class="fa fa-envelope"></i></a></li><li class=td-footer__links-item data-bs-toggle=tooltip title=X.com aria-label=X.com><a target=_blank rel=noopener href=https://x.com/open_serverless aria-label=X.com><i class="fab fa-x-twitter"></i></a></li><li class=td-footer__links-item data-bs-toggle=tooltip title=Reddit aria-label=Reddit><a target=_blank rel=noopener href=https://reddit.com/r/openserverless aria-label=Reddit><i class="fab fa-reddit"></i></a></li></ul></div><div class="td-footer__right col-6 col-sm-4 order-sm-3"><ul class=td-footer__links-list><li class=td-footer__links-item data-bs-toggle=tooltip title=GitHub aria-label=GitHub><a target=_blank rel=noopener href=https://github.com/apache/openserverless aria-label=GitHub><i class="fab fa-github"></i></a></li><li class=td-footer__links-item data-bs-toggle=tooltip title=Discord aria-label=Discord><a target=_blank rel=noopener href=https://discord.com/invite/PkD7CcHgGP aria-label=Discord><i class="fab fa-discord"></i></a></li><li class=td-footer__links-item data-bs-toggle=tooltip title=Slack aria-label=Slack><a target=_blank rel=noopener href=https://the-asf.slack.com/archives/C07B6K5R3F0 aria-label=Slack><i class="fab fa-slack"></i></a></li></ul></div><div class="td-footer__center col-12 col-sm-4 py-2 order-sm-2"><span class=td-footer__copyright>© |
| 2024–2025 |
| <span class=td-footer__authors>The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</span></span><span class=td-footer__all_rights_reserved>All Rights Reserved</span></div></div></div></footer><div id=theme-toggler-container><button id=theme-toggler class="btn btn-light-dark" aria-label="Toggle theme"> |
| <span id=theme-icon class="fa fa-sun"></span></button></div><script>const themeToggler=document.getElementById("theme-toggler"),themeIcon=document.getElementById("theme-icon"),currentTheme=localStorage.getItem("theme")||"light";themeToggler.addEventListener("click",()=>{document.documentElement.classList.toggle("dark-mode");const e=document.documentElement.classList.contains("dark-mode");themeIcon.classList.toggle("fa-sun",!e),themeIcon.classList.toggle("fa-moon",e),localStorage.setItem("theme",e?"dark":"light")})</script><style>#theme-toggler-container{position:fixed;bottom:70px;right:20px;z-index:1000}.btn-light-dark{background:#fff;border:1px solid #ddd;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px rgba(0,0,0,.1);cursor:pointer;transition:background-color .3s,transform .2s}.btn-light-dark:hover{background:#f0f0f0;transform:scale(1.1)}.dark-mode .btn-light-dark{background:#333;color:#fff;border-color:#444}</style></div><script src=/js/main.min.90902a026ed2aee7ed45d85797f4c790b240ba148ac6f8a6f194cb1981ffecf5.js integrity="sha256-kJAqAm7SruftRdhXl/THkLJAuhSKxvim8ZTLGYH/7PU=" crossorigin=anonymous></script><script src=/js/prism.js></script><script src=/js/tabpane-persist.js></script></body></html> |