<!DOCTYPE html>
<html lang="en">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-112407000-2"></script>
<script>
    window.dataLayer = window.dataLayer || [];

    function gtag() {
        dataLayer.push(arguments);
    }
    gtag('js', new Date());

    gtag('config', 'UA-112407000-2');
</script>

<!-- Google Tag Manager -->
<script>
    (function (w, d, s, l, i) {
        w[l] = w[l] || [];
        w[l].push({
            'gtm.start': new Date().getTime(),
            event: 'gtm.js'
        });
        var f = d.getElementsByTagName(s)[0],
            j = d.createElement(s),
            dl = l != 'dataLayer' ? '&l=' + l : '';
        j.async = true;
        j.src =
            'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
        f.parentNode.insertBefore(j, f);
    })(window, document, 'script', 'dataLayer', 'GTM-KS8HHSF');
</script>
<!-- End Google Tag Manager -->

<head>
    	<title>Deploying Codewind remotely | Codewind</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta name="description" content="Deploying Codewind remotely">
	<meta name="keywords" content="users, projects, Kubernetes, LDAP, user management, access management, login, deployment, pod, security, securing cloud connection, remote deployment of Code..."/>
	<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
	<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
	<link href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:300,400,600&display=swap" rel="stylesheet">
	<!-- Bootstrap CSS CDN -->
	<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
	integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
	<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
	<link rel="stylesheet" href="css/styles.css">
	<link rel="stylesheet" href="css/docs.css">
	<link rel="stylesheet" href="css/learn.css">
	<link rel="stylesheet" href="css/blog.css">
	<link rel="stylesheet" href="css/guides.css">
	<link rel="stylesheet" href="css/search.css">
	<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/themes/prism.min.css">


</head>

<body data-spy="scroll" data-target="#toc">
    <!-- Google Tag Manager (noscript) -->
    <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KS8HHSF"
        height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
        <!-- End Google Tag Manager (noscript) -->
    <div class="main">
    <!-- Bootstrap NavBar -->
	<nav class="navbar navbar-expand-xl navbar-light cw-banner fixed-top" aria-label="topnav">
    		        <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
            data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false"
            aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <a class="navbar-brand" href="/codewind/">
            <img alt="Codewind logo image"  title="Codewind logo image" src="images/header/header-logo.svg" class="cw-header-logo" alt="">
        </a>
        <div class="collapse navbar-collapse justify-content-end cw-navbar-padding" id="navbarNavDropdown">
            <ul class="navbar-nav cw-navbar-nav">

                <li class="nav-item cw-navbar-item cw-header-link-docs">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="learn.html">Learn</a>
                </li>
                <li class="nav-item cw-navbar-item cw-header-link-news">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="news.html">News</a>
                </li>

                <li class="nav-item cw-navbar-item cw-header-link-blog">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="blog.html">Blog</a>
                </li>

                <li class="nav-item cw-navbar-item cw-header-link-guides">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="guides.html">Guides</a>
                </li>

                <form class="form-inline my-2 my-lg-0 cw-navbar-item" action="/codewind/search.html" method="get">
                    <svg class="bi bi-search" width="1em" height="1em" viewBox="0 0 16 16" fill="black" xmlns="http://www.w3.org/2000/svg">
                        <path fill-rule="evenodd" d="M10.442 10.442a1 1 0 011.415 0l3.85 3.85a1 1 0 01-1.414 1.415l-3.85-3.85a1 1 0 010-1.415z" clip-rule="evenodd"/>
                        <path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 100-11 5.5 5.5 0 000 11zM13 6.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z" clip-rule="evenodd"/>
                      </svg>
                    <input id="nav-search" class="form-control mr-sm-2" type="text" id="search-box" name="query" placeholder="Search">
                </form>

                
                
                 <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  class="banner-image"  title="Codewind Github" data-toggle="tooltip" data-placement="top" id="cw_github_stars" title="..." src="images/header/github.svg"/></a>
                </li>

                <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  class="banner-image" title="Codewind Twitter" src="images/header/twitter.png"/></a>
                </li>
                 <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  class="banner-image"  title="Codewind Mattermost" src="images/header/mattermost.png"/></a>
                </li>
                <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"  class="banner-image" title="Codewind YouTube" src="images/header/youtube.png"/></a>
                </li>


                <!-- li class="nav-item cw-navbar-item" id="download-li">
                    <button onClick="window.location.href='https://microclimate.dev/download/codewind';" type="button" class="btn cw-download-button">Download</button>
                    <a href="https://microclimate.dev/download/codewind" class="nav-link cw-nav-link cw-download-link" href="#">Download</a>
                </li>  -->



                <!-- Smaller devices menu END -->

            </ul>
        </div>

    	</nav>
    	<!-- End Bootstrap NavBar -->
<!-- Bootstrap row -->
<div class="row" id="body-row">
    <div id="sidebar" class="bg-light">
    <button class="btn btn-secondary dropdown-toggle btn-block d-md-none" type="button" id="contents-expander" data-toggle="collapse" aria-haspopup="true" aria-expanded="false" data-target="#sidebar-container">
        Contents
      </button>
    <div id="sidebar-container" class="bg-light" role="navigation" aria-label="sidebar">
        <!-- Bootstrap List Group -->
        <ul class="list-group bg-light">

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_getting_started" id="#_getting_started" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Getting started
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_getting_started">

                

                
                <a href="overview.html" class="bg-light list-group-item" data-parent="#_getting_started"
                    data-url="overview.html">What is Codewind?</a>
                

                

                
                <a href="gettingstarted-overview.html" class="bg-light list-group-item" data-parent="#_getting_started"
                    data-url="gettingstarted-overview.html">Getting started - Overview</a>
                

                

                

                

                <a href="#_vs_code" id="#_vs_code" class="bg-light list-group-item list-group-item-action"
                    data-toggle="collapse" data-parent="#_getting_started" aria-expanded="false">
                    <div class="d-flex align-items-center">
                        VS Code
                        <span class="submenu-icon"></span>
                    </div>
                </a>

                <div class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" id="_vs_code">

                    
                    <a href="vsc-getting-started.html" class="bg-light list-group-item" data-parent="#_vs_code"
                        data-url="vsc-getting-started.html">1. Installing Codewind for VS Code</a>
                    
                    <a href="vsc-firstproject.html" class="bg-light list-group-item" data-parent="#_vs_code"
                        data-url="vsc-firstproject.html">2. Creating your first Codewind project with Codewind for VS Code</a>
                    
                    <a href="vsc-codechange.html" class="bg-light list-group-item" data-parent="#_vs_code"
                        data-url="vsc-codechange.html">3. Making a code change with VS Code</a>
                    
                    <a href="vsc-uninstall.html" class="bg-light list-group-item" data-parent="#_vs_code"
                        data-url="vsc-uninstall.html">4. Uninstalling Codewind for VS Code</a>
                    
                </div>
                

                

                

                

                <a href="#_eclipse" id="#_eclipse" class="bg-light list-group-item list-group-item-action"
                    data-toggle="collapse" data-parent="#_getting_started" aria-expanded="false">
                    <div class="d-flex align-items-center">
                        Eclipse
                        <span class="submenu-icon"></span>
                    </div>
                </a>

                <div class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" id="_eclipse">

                    
                    <a href="eclipse-getting-started.html" class="bg-light list-group-item" data-parent="#_eclipse"
                        data-url="eclipse-getting-started.html">1. Installing Codewind for Eclipse</a>
                    
                    <a href="eclipse-firstproject.html" class="bg-light list-group-item" data-parent="#_eclipse"
                        data-url="eclipse-firstproject.html">2. Creating your first Codewind project with Codewind for Eclipse</a>
                    
                    <a href="eclipse-codechange.html" class="bg-light list-group-item" data-parent="#_eclipse"
                        data-url="eclipse-codechange.html">3. Making a code change with Eclipse</a>
                    
                    <a href="eclipse-uninstall.html" class="bg-light list-group-item" data-parent="#_eclipse"
                        data-url="eclipse-uninstall.html">4. Uninstalling Codewind for Eclipse</a>
                    
                </div>
                

                

                

                

                <a href="#_intellij" id="#_intellij" class="bg-light list-group-item list-group-item-action"
                    data-toggle="collapse" data-parent="#_getting_started" aria-expanded="false">
                    <div class="d-flex align-items-center">
                        IntelliJ
                        <span class="submenu-icon"></span>
                    </div>
                </a>

                <div class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" id="_intellij">

                    
                    <a href="intellij-getting-started.html" class="bg-light list-group-item" data-parent="#_intellij"
                        data-url="intellij-getting-started.html">1. Installing Codewind for IntelliJ</a>
                    
                    <a href="intellij-firstproject.html" class="bg-light list-group-item" data-parent="#_intellij"
                        data-url="intellij-firstproject.html">2. Creating your first Codewind project with Codewind for IntelliJ</a>
                    
                    <a href="intellij-codechange.html" class="bg-light list-group-item" data-parent="#_intellij"
                        data-url="intellij-codechange.html">3. Making a code change with IntelliJ</a>
                    
                </div>
                

                
            </div>
            

            

            
            <a href="remote-deploying-codewind.html"
                class="bg-light list-group-item list-group-item-action flex-column align-items-start"
                data-url="remote-deploying-codewind.html">
                Deploying Codewind remotely
            </a>
            

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_using_codewind_remotely" id="#_using_codewind_remotely" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Using Codewind remotely
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_using_codewind_remotely">

                

                
                <a href="remote-codewind-overview.html" class="bg-light list-group-item" data-parent="#_using_codewind_remotely"
                    data-url="remote-codewind-overview.html">1. Overview: Using Codewind remotely</a>
                

                

                

                

                <a href="#_2_connecting_your_ide_to_remote_codewind" id="#_2_connecting_your_ide_to_remote_codewind" class="bg-light list-group-item list-group-item-action"
                    data-toggle="collapse" data-parent="#_using_codewind_remotely" aria-expanded="false">
                    <div class="d-flex align-items-center">
                        2. Connecting your IDE to remote Codewind
                        <span class="submenu-icon"></span>
                    </div>
                </a>

                <div class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" id="_2_connecting_your_ide_to_remote_codewind">

                    
                    <a href="remotedeploy-vscode.html" class="bg-light list-group-item" data-parent="#_2_connecting_your_ide_to_remote_codewind"
                        data-url="remotedeploy-vscode.html">Connecting VS Code to remote Codewind</a>
                    
                    <a href="remotedeploy-eclipse.html" class="bg-light list-group-item" data-parent="#_2_connecting_your_ide_to_remote_codewind"
                        data-url="remotedeploy-eclipse.html">Connecting Eclipse to remote Codewind</a>
                    
                </div>
                

                

                
                <a href="remote-setupregistries.html" class="bg-light list-group-item" data-parent="#_using_codewind_remotely"
                    data-url="remote-setupregistries.html">3. Adding an image registry in remote Codewind</a>
                

                

                

                

                <a href="#_4_creating_and_importing_projects" id="#_4_creating_and_importing_projects" class="bg-light list-group-item list-group-item-action"
                    data-toggle="collapse" data-parent="#_using_codewind_remotely" aria-expanded="false">
                    <div class="d-flex align-items-center">
                        4. Creating and importing projects
                        <span class="submenu-icon"></span>
                    </div>
                </a>

                <div class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" id="_4_creating_and_importing_projects">

                    
                    <a href="remotedeploy-projects-vscode.html" class="bg-light list-group-item" data-parent="#_4_creating_and_importing_projects"
                        data-url="remotedeploy-projects-vscode.html">VS Code</a>
                    
                    <a href="remotedeploy-projects-eclipse.html" class="bg-light list-group-item" data-parent="#_4_creating_and_importing_projects"
                        data-url="remotedeploy-projects-eclipse.html">Eclipse</a>
                    
                </div>
                

                
            </div>
            

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_using_codewind_on_eclipse_che" id="#_using_codewind_on_eclipse_che" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Using Codewind on Eclipse Che
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_using_codewind_on_eclipse_che">

                

                
                <a href="che-installinfo.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-installinfo.html">1. Installing Eclipse Che for Codewind</a>
                

                

                
                <a href="che-setupregistries.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-setupregistries.html">2. Adding an image registry in Codewind on Eclipse Che</a>
                

                

                
                <a href="che-createcodewindworkspace.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-createcodewindworkspace.html">3. Creating a Codewind workspace in Eclipse Che</a>
                

                

                
                <a href="che-createfirstproject.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-createfirstproject.html">4. Creating your first Codewind project with Codewind for Eclipse Che</a>
                

                

                
                <a href="che-codechange.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-codechange.html">5. Making a code change with Codewind for Eclipse Che</a>
                

                

                
                <a href="che-uninstall.html" class="bg-light list-group-item" data-parent="#_using_codewind_on_eclipse_che"
                    data-url="che-uninstall.html">6. Uninstalling Codewind for Eclipse Che</a>
                

                
            </div>
            

            

            
            <a href="che-odo-support.html"
                class="bg-light list-group-item list-group-item-action flex-column align-items-start"
                data-url="che-odo-support.html">
                OpenShift Do (odo) support in Codewind
            </a>
            

            

            
            <a href="workingwithtemplates.html"
                class="bg-light list-group-item list-group-item-action flex-column align-items-start"
                data-url="workingwithtemplates.html">
                Working with templates
            </a>
            

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_developing_projects" id="#_developing_projects" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Developing projects
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_developing_projects">

                

                
                <a href="checkingstatuses.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="checkingstatuses.html">Understanding application and build statuses</a>
                

                

                
                <a href="importing-existing-projects.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="importing-existing-projects.html">Importing existing projects</a>
                

                

                
                <a href="project-actions.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="project-actions.html">Project actions</a>
                

                

                
                <a href="project-settings.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="project-settings.html">Project settings</a>
                

                

                
                <a href="referencing-files.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="referencing-files.html">Referencing files external to a project</a>
                

                

                
                <a href="openshiftregistry.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="openshiftregistry.html">Adding the OpenShift internal registry with Codewind</a>
                

                

                
                <a href="private-registries.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="private-registries.html">Developing with packages from private registries and repositories</a>
                

                

                
                <a href="linking-your-projects.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="linking-your-projects.html">Linking your projects</a>
                

                

                
                <a href="offline-codewind.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="offline-codewind.html">Using Codewind offline</a>
                

                

                
                <a href="debugging.html" class="bg-light list-group-item" data-parent="#_developing_projects"
                    data-url="debugging.html">Debugging in Codewind</a>
                

                
            </div>
            

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_performance_monitoring" id="#_performance_monitoring" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Performance monitoring
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_performance_monitoring">

                

                
                <a href="metrics-dashboard.html" class="bg-light list-group-item" data-parent="#_performance_monitoring"
                    data-url="metrics-dashboard.html">Understanding the Metrics Dashboard</a>
                

                

                
                <a href="performance.html" class="bg-light list-group-item" data-parent="#_performance_monitoring"
                    data-url="performance.html">Monitoring applications with the Performance Dashboard</a>
                

                
            </div>
            

            

            


            <!-- must be a valid css selector, or will break collapse function -->
            

            <a href="#_eclipse_codewind_tool_for_openapi" id="#_eclipse_codewind_tool_for_openapi" class="bg-light list-group-item list-group-item-action"
                data-toggle="collapse" aria-expanded="false">
                <div class="d-flex align-items-center">
                    Eclipse Codewind tool for OpenAPI
                    <span class="submenu-icon"></span>
                </div>
            </a>

            <div class="cw-sidebar-div cw-sidebar-submenu collapse" id="_eclipse_codewind_tool_for_openapi">

                

                
                <a href="open-api-tools-for-vscode.html" class="bg-light list-group-item" data-parent="#_eclipse_codewind_tool_for_openapi"
                    data-url="open-api-tools-for-vscode.html">Eclipse Codewind tool for OpenAPI in VS Code</a>
                

                

                
                <a href="open-api-tools-for-eclipse.html" class="bg-light list-group-item" data-parent="#_eclipse_codewind_tool_for_openapi"
                    data-url="open-api-tools-for-eclipse.html">Eclipse Codewind tool for OpenAPI in Eclipse</a>
                

                
            </div>
            

            

            
            <a href="che-tektonpipelines.html"
                class="bg-light list-group-item list-group-item-action flex-column align-items-start"
                data-url="che-tektonpipelines.html">
                Configuring Codewind for Tekton pipelines
            </a>
            

            

            
            <a href="troubleshooting.html"
                class="bg-light list-group-item list-group-item-action flex-column align-items-start"
                data-url="troubleshooting.html">
                Troubleshooting
            </a>
            

            

        </ul>
        <!-- List Group END-->
    </div>
</div>
    <!-- MAIN -->
    <div id="content-container">
        <div class="py-5 px-5">
            <div role="main"><h1 id="deploying-codewind-remotely">Deploying Codewind remotely</h1>

<p>Codewind can be used in one of three ways: <a href="./gettingstarted.html">locally</a>, <a href="./che-installinfo.html">hosted</a> as an application on the cloud, or remotely.</p>

<p>By deploying and using Codewind remotely, you can develop your code locally by using your local Codewind installation and then build and run your application in the cloud. Remote use of Codewind frees up desktop resources by using the cloud’s resources to build and run applications.</p>

<p>Follow the instructions to deploy Codewind remotely. After you install your local IDE and configure Codewind for local use, you will:</p>

<ol>
  <li>Install the Codewind operator in your cloud.</li>
  <li>Deploy your Codewind instances.</li>
</ol>

<p><strong>To connect your local IDE to your remote deployment of Codewind after it is deployed remotely:</strong> See <a href="remote-codewind-overview.html">Using Codewind remotely</a>.</p>

<p><strong>To remove a remote deployment of Codewind:</strong> See <a href="https://github.com/eclipse/codewind-operator/blob/master/README.md#removing-a-codewind-instance">Removing a Codewind instance</a>.</p>

<h2 id="prerequisites">Prerequisites</h2>

<p>Complete these steps before you deploy Codewind to the cloud:</p>

<ol>
  <li><strong>Install Codewind into your preferred IDE on your local computer.</strong> 
For more information, select from the following IDEs:
    <ul>
      <li><a href="./eclipse-getting-started.html">Getting started with Codewind for Eclipse</a></li>
      <li><a href="./vsc-getting-started.html">Getting started with Codewind for VS Code</a></li>
      <li><a href="./intellij-getting-started.html">Getting started with Codewind for IntelliJ</a></li>
    </ul>
  </li>
  <li><strong>Have an active Kubernetes context and log in to the cluster.</strong>
    <ul>
      <li>Codewind is validated on the following Kubernetes distributions:
        <ul>
          <li>IBM Cloud Kubernetes Service</li>
          <li>OpenShift 3.11</li>
          <li>OpenShift 4.3</li>
          <li>OpenShift in IBM Public Cloud</li>
          <li>Stand-alone Kubernetes</li>
          <li>Kubernetes in Docker</li>
        </ul>
      </li>
      <li>However, Codewind can run on any Kubernetes distribution that meets the following requirements:
        <ul>
          <li>Kubernetes 1.11 or later is included.</li>
          <li>ReadWriteMany (RWX) persistent volumes are supported.</li>
          <li>The Nginx Ingress Controller is installed.</li>
        </ul>
      </li>
      <li>If you want to test and document support for other clouds, you can <a href="https://github.com/eclipse/codewind">contribute in GitHub</a>.</li>
    </ul>
  </li>
  <li>
    <p><strong>For Linux desktop, ensure that your workstation is set up to use a Keyring.</strong> An example of a Keyring on Linux is Secret Service.</p>
  </li>
  <li><strong>Optional:</strong> Install a Git command line client. To download the Git command line client, see <a href="https://git-scm.com/download">https://git-scm.com/download</a>.</li>
</ol>

<h2 id="1-clone-or-download-the-codewind-operator-repository">1. Clone or download the Codewind operator repository</h2>

<p>The Codewind operator helps with the deployment of Codewind instances in an OpenShift or Kubernetes cluster. Your system administrator usually installs the Codewind operator.</p>

<p>Download the Codewind operator from the <a href="https://github.com/eclipse/codewind-operator">codewind-operator repository</a>, or if you installed Git, clone the <code class="highlighter-rouge">codewind-operator</code> repository, for example:</p>

<p><code class="highlighter-rouge">$ git clone https://github.com/eclipse/codewind-operator -b 0.14.1</code></p>

<p>For more information about the Codewind operator and the installation process, see the <a href="https://github.com/eclipse/codewind-operator/blob/master/README.md">Codewind operator readme file</a>.</p>

<h2 id="2-install-the-operator-into-your-cluster-and-deploy-keycloak">2. Install the operator into your cluster and deploy Keycloak</h2>

<ol>
  <li><a href="#2a-install-the-operator">Install the operator</a>.</li>
  <li><a href="#2b-change-the-admin-password-for-the-admin-user">Change the admin password for the admin user</a>.</li>
  <li><a href="#2c-update-the-keycloak-password-in-the-operator-secret-with-the-new-password">Update the Keycloak password in the operator secret with the new password</a>.</li>
</ol>

<h3 id="2a-install-the-operator">2a. Install the operator</h3>
<p>Use the <code class="highlighter-rouge">install.sh</code> script that is located in your cloned Codewind operator repository <code class="highlighter-rouge">deploy</code> folder to install the operator into your cluster and deploy Keycloak. If you use Windows, use a Unix-like shell such as Windows Subsystem for Linux, Git Bash, or MinGW to run the operator installer shell script. For example:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span><span class="nb">cd </span>deploy
<span class="nv">$ </span>./install.sh operator <span class="nt">-i</span> &lt;ingress_domain&gt;
</code></pre></div></div>

<p>Add the option <code class="highlighter-rouge">-o</code> flag if you are installing into an OpenShift 3.11 cluster, for example:</p>

<p><code class="highlighter-rouge">$ ./install.sh operator -i &lt;ingress_domain&gt; -o</code></p>

<p>The script installs the operator into your cluster, deploys Keycloak, and returns the Keycloak <strong>Access URL</strong>. The command returns the following example output:</p>

<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>NAME       NAMESPACE   AGE    ACCESS
devex001   codewind    122m   https://codewind-keycloak-devex001.&lt;ingress-domain&gt;
</code></pre></div></div>

<h3 id="2b-change-the-admin-password-for-the-admin-user">2b. Change the admin password for the admin user</h3>

<p>You must prepare Keycloak for Codewind by changing the admin password that is given to the <code class="highlighter-rouge">admin</code> user in the previous step.</p>

<ol>
  <li>
    <p>Access the Administration Console by clicking the <strong>Access URL</strong> link provided by Step 2a. To locate the <strong>Access URL</strong> link, enter the <code class="highlighter-rouge">$ kubectl get keycloaks -n codewind</code> command.</p>
  </li>
  <li>
    <p>Log in to Keycloak by using the Keycloak admin credentials.
     username: <code class="highlighter-rouge">admin</code>
     password: <code class="highlighter-rouge">admin</code></p>
  </li>
  <li>
    <p><strong>Important:</strong> After you log in, change the admin password by clicking the <strong>Admin</strong> link on the page. Then, click <strong>Manage Account</strong>&gt;<strong>Password</strong> and set a new replacement administrator password:</p>

    <p><img src="./images/remote/admin_link_manage_account.png" alt="Admin link" /></p>
  </li>
  <li>
    <p>Switch back to the admin console using the link or log out and log back in to Keycloak as the admin user with your new admin password.</p>
  </li>
</ol>

<p>You updated the Keycloak password. The next step updates the Keycloak password in the operator secret to match it.</p>

<h3 id="2c-update-the-keycloak-password-in-the-operator-secret-with-the-new-password">2c. Update the Keycloak password in the operator secret with the new password</h3>

<p>When the Codewind operator needs to update Keycloak, it uses login credentials that are saved in a Kubernetes secret. By default during initial deployment, that secret has a username and password of <strong>admin</strong>. If you changed your admin password in a previous step, you need to update the Keycloak secret to match.</p>

<p>The secret is installed in the same namespace as the Codewind operator and is named <code class="highlighter-rouge">secret-keycloak-user-&lt;keycloakname&gt;</code>.</p>

<p>If you have an administration UI for your cluster, you can use it to locate the secret and edit the <code class="highlighter-rouge">keycloak-admin-password</code> field, or you can use the command line tools:</p>

<p><code class="highlighter-rouge">$ kubectl edit secret secret-keycloak-user-&lt;keycloakname&gt; -n codewind</code></p>

<p>or</p>

<p><code class="highlighter-rouge">$ oc edit secret secret-keycloak-user-&lt;keycloakname&gt; -n codewind</code></p>

<p><strong>Note:</strong> Using the command line tools requires an extra step to base64 encode your password string before you save it into the secret. You can base64 encode your new password by using this command:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span><span class="nb">echo</span> <span class="nt">-n</span> <span class="s1">'&lt;myNewPassword&gt;'</span> | <span class="nb">base64
</span><span class="nv">bXlOZXdQYXNzd29yZA</span><span class="o">==</span>
</code></pre></div></div>

<p>Then, save <code class="highlighter-rouge">bXlOZXdQYXNzd29yZA==</code> as the value for <code class="highlighter-rouge">keycloak-admin-password</code> rather than the clear text <code class="highlighter-rouge">&lt;myNewPassword&gt;</code>.</p>

<h2 id="3-add-a-user-to-keycloak">3. Add a user to Keycloak</h2>

<ol>
  <li>
    <p>Access the Administration Console by clicking the <strong>Access URL</strong> link provided by Step 2a. To locate the <strong>Access URL</strong> link, enter the <code class="highlighter-rouge">$ kubectl get keycloaks -n codewind</code> command.</p>
  </li>
  <li>
    <p>Click <strong>Administration Console</strong> and log in to Keycloak with <code class="highlighter-rouge">admin</code> as the default login username and <code class="highlighter-rouge">password</code>, which is the new password that you set in Step 2b.</p>
  </li>
  <li>
    <p>Ensure that the <code class="highlighter-rouge">Realm</code> is set to <strong>Codewind</strong> by clicking the Codewind arrow on the <strong>Administration Console</strong> page:</p>

    <p><img src="./images/remote/codewind_dropdown.png" alt="Codewind arrow" /></p>

    <p>Select <strong>Codewind</strong> if necessary and complete these steps:</p>
    <ul>
      <li>Click <strong>Users</strong>.</li>
      <li>Click <strong>Add user</strong>.</li>
      <li>Complete the <strong>username</strong> field.</li>
      <li>Complete the <strong>email</strong>, <strong>Firstname</strong>, and <strong>Lastname</strong> fields as required.</li>
      <li>Ensure <strong>user enabled</strong> is <strong>On</strong>.</li>
      <li>Click <strong>Save</strong>.</li>
    </ul>
  </li>
  <li>
    <p>Assign an initial password to the user account by clicking <strong>Credentials</strong>. Then, add the initial password.</p>
  </li>
  <li>
    <p>The <strong>Temporary = On</strong> field requires you to change your password during first connection. Set <strong>Temporary = Off</strong> to make this password valid for continuous use and to prevent the need to change it on first connection.</p>
  </li>
  <li>
    <p>Click <strong>Set Password</strong> to save the changes. Log out of the Keycloak admin page.</p>
  </li>
</ol>

<h2 id="4-deploy-a-codewind-instance">4. Deploy a Codewind instance</h2>

<p>Use the <code class="highlighter-rouge">install.sh</code> script in the Codewind operator repository to deploy a Codewind instance:</p>

<p><code class="highlighter-rouge">$ ./install.sh codewind -n &lt;instanceName&gt; -u &lt;registeredUsername&gt;</code></p>

<ul>
  <li><code class="highlighter-rouge">instanceName</code> is the unique name that you specify for this Codewind instance.</li>
  <li><code class="highlighter-rouge">registeredUsername</code> is the name of the user that you added in <a href="#3-add-a-new-user-to-keycloak">Step 3</a>.</li>
</ul>

<p>Your Codewind instance is deployed. Access it by way of the <strong>Access URL</strong> returned by the script in a browser or by copying the URL into a new connection in your IDE.</p>

<p><strong>Note:</strong> When you are installing on Windows, the script runs and then closes the Git Bash window. To retrieve the Access URLs for Codewind, enter the following command:</p>

<p><code class="highlighter-rouge">$ kubectl get codewinds -n codewind</code></p>

<p>This command returns output in the format of the following example:</p>

<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>NAME    USERNAME   NAMESPACE   WORKSPACE      AGE    KEYCLOAK   REGISTRATION   ACCESSURL
jane1   jane       codewind    kbc3b0x2qins   119m   devex001   Complete       https://codewind-gatekeeper-kbc3b0x2qins.codewind.&lt;ingress-domain&gt;
</code></pre></div></div>

<p>For the 0.14.0 release of Codewind, a new <code class="highlighter-rouge">WORKSPACE</code> field appears in the output. This field is a randomly generated set of characters that are used in both the URL of the Gatekeeper and the names of the pods and resources.</p>

<p>To help you to determine the unique resources for your deployment, you can use the <code class="highlighter-rouge">NAME</code> field or you can use the new workspace ID given in the <code class="highlighter-rouge">WORKSPACE</code> field. All of your Codewind deployments have both the <code class="highlighter-rouge">NAME</code> and <code class="highlighter-rouge">WORKSPACE</code> as labels for you to use.</p>

<p>Also, new for 0.14.0, the <code class="highlighter-rouge">codewind</code> namespace appears in the <code class="highlighter-rouge">ACCESSURL</code>. In the example, it appears just before <code class="highlighter-rouge">&lt;ingress-domain&gt;</code>.</p>

<p>If you deployed remote Codewind instances before the Codewind 0.14.0 release, you must regenerate the connections to the deployments:</p>
<ol>
  <li>Delete all the Codewind deployments in the Codewind namespace. <strong>Important:</strong> You must do this action before you delete the Codewind namespace. If you do not, your Codewind deployments might go into pending state and not be removed. If you delete the Codewind namespace before you delete your deployments, you can run the following command to clear them manually: <code class="highlighter-rouge">$ kubectl patch codewind {codewindName}  -p '{"metadata":{"finalizers": []}}' --type=merge</code>.</li>
  <li>Delete the Codewind namespace.</li>
  <li>Re-create your deployments.</li>
  <li>Configure your IDE to connect to Codewind in the cloud. For more information about configuring your IDE, see <a href="remotedeploy-vscode.html">Connecting your VS Code to remote Codewind</a> or <a href="./remotedeploy-eclipse.html">Connecting your Eclipse to remote Codewind</a>.</li>
</ol>

<h2 id="next-steps">Next steps</h2>

<p>You finished installing the Codewind operator and deployed a Codewind instance.</p>

<p>In the next topic, you learn how to <a href="./remote-codewind-overview.html">use Codewind remotely</a>.</p>

<p>You can configure your IDE to connect to Codewind in the cloud. For more information, see <a href="remotedeploy-vscode.html">Connecting your VS Code to remote Codewind</a> or <a href="./remotedeploy-eclipse.html">Connecting your Eclipse to remote Codewind</a>.</p>

<p>If you want to remove a Codewind instance, see <a href="https://github.com/eclipse/codewind-operator/blob/master/README.md#removing-a-codewind-instance">Removing a Codewind instance</a>.</p>
</div>
        </div>

        <div class="py-5 px-5 text-right">
            Last update: Aug 07, 2020
        </div>

    </div>
</div>
<!-- footer row -->
<footer>

<div id="footer-div-mobile">
        
        <div class="row">
	        <div class="col-sm-12 text-center">
		        <span>Useful Links:</span>
		        <br/><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org">Eclipse Foundation</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/termsofuse.php">Website Terms of Use</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal">Legal</a><br/>
		    </div>
        </div>
        <div class="cw_footer_display_flex cw-footer-same-height cw-footer-center">
        
        <div class="cw_footer_display_icons row">
    		<div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="mailto:codewind-dev@eclipse.org"><img alt="Send us an email"  title="Send us an email" src="images/footer/email-icon.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  title="Codewind Twitter" src="images/footer/twitter-logo.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  title="Codewind Github" src="images/footer/github-logo.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        

        <div class=" cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  title="Codewind Mattermost" src="images/footer/mattermost-logo.png" class="cw-logo-mm" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"  title="Codewind YouTube" src="images/footer/youtube-logo-dark.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    
                    <a href="http://www.eclipse.org"><img class="cw-logo-eclipse-mobile" alt="Eclipse"  title="Eclipse" src="images/footer/eclipse.svg"/></a>
                </div>
            </div>
        </div>
        </div>
        
		</div>
		
    </div>
    
    
    <div class="row cw-footer-desktop" id="footer-div">
        <div class="cw-footer-left">
        		<div class="px-5 cw-font-12>
	        <span class="cw-font-14">Useful Links:</span>
	        <br/><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org">Eclipse Foundation</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/termsofuse.php">Website Terms of Use</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal">Legal</a><br/>
	        </div>
	        
        </div>
        <div class="cw-footer-border-right"></div>
        <div class="cw_footer_display_flex cw-footer-same-height cw-footer-center">
        <div class="cw_footer_display_icons">
    		<div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="mailto:codewind-dev@eclipse.org"><img alt="Send us an email"  title="Send us an email" src="images/footer/email-icon.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  title="Codewind Twitter" src="images/footer/twitter-logo.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  title="Codewind Github" src="images/footer/github-logo.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        

        <div class=" cw-footer-col text-center">
            <div class="cw-logo-mm" >
                <div class="cw-logo-mm" >
                    <a href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  title="Codewind Mattermost" src="images/footer/mattermost-logo.png" class="cw-logo-mm" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"   title="Codewind YouTube" src="images/footer/youtube-logo-dark.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        </div>
        
		</div>
		<div class="cw-footer-border-right"></div>
		<div class="cw-footer-right cw-footer-same-height cw-footer-vcenter">
		<div class="cw-footer-eclipse-img cw-footer-same-height px-5 ">
	        
		<a href="http://www.eclipse.org">
		<img alt="Eclipse"  title="Eclipse" src="images/footer/eclipse.svg"/>
		</a>
	        </div>
		</div>
    </div>
</footer>
<!-- footer row END -->
<!-- Main Col END -->
<!-- Jquery -->
<script
  src="https://code.jquery.com/jquery-3.4.1.min.js"
  integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
  crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
    integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>



<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
    integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>


<!-- Font Awesome JS -->
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/solid.js"
    integrity="sha384-tzzSw1/Vo+0N5UhStP3bvwWPq+uvzCMfrN1fEFe+xBmv1C/AtVX5K0uZtmcHitFZ" crossorigin="anonymous">
</script>
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/fontawesome.js"
    integrity="sha384-6OIrr52G08NpOFSZdxxz1xdNSndlD4vdcf/q2myIUVO0VsqaGHJsB0RaBE01VTOY" crossorigin="anonymous">
</script>


<script src="js/jquery.matchHeight-min.js"></script>
<script src="js/index.js"></script>
<script src="js/docs.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/prism.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/components/prism-docker.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/components/prism-json.min.js"></script>

</div>
</body>

</html>



<script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/4.2.0/anchor.min.js"></script>
<script>
    $(document).ready(function () {

        anchors.options.placement = 'left';
        anchors.add('h1');
        anchors.add('h2');
        anchors.add('h3');
        anchors.add('h4');
    });
</script>