
<!DOCTYPE html>
<html lang="en" dir=ZgotmplZ>

<head>
  


<link rel="stylesheet" href="/bootstrap/css/bootstrap.min.css">
<script src="/bootstrap/js/bootstrap.bundle.min.js"></script>
<link rel="stylesheet" type="text/css" href="/font-awesome/css/font-awesome.min.css">
<script src="/js/anchor.min.js"></script>
<script src="/js/flink.js"></script>
<link rel="canonical" href="https://flink.apache.org/what-is-flink/community/">

  <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Community &amp; Project Info # How do I get help from Apache Flink? # There are many ways to get help from the Apache Flink community. The mailing lists are the primary place where all Flink committers are present. For user support and questions use the user mailing list. You can also join the community on Slack. Some committers are also monitoring Stack Overflow. Please remember to tag your questions with the apache-flink tag.">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="Community &amp; Project Info" />
<meta property="og:description" content="Community &amp; Project Info # How do I get help from Apache Flink? # There are many ways to get help from the Apache Flink community. The mailing lists are the primary place where all Flink committers are present. For user support and questions use the user mailing list. You can also join the community on Slack. Some committers are also monitoring Stack Overflow. Please remember to tag your questions with the apache-flink tag." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://flink.apache.org/what-is-flink/community/" /><meta property="article:section" content="what-is-flink" />


<title>Community & Project Info | Apache Flink</title>
<link rel="manifest" href="/manifest.json">
<link rel="icon" href="/favicon.png" type="image/x-icon">
<link rel="alternate" hreflang="zh" href="https://flink.apache.org/zh/what-is-flink/community/" title="社区 & 项目信息">

<link rel="stylesheet" href="/book.min.22eceb4d17baa9cdc0f57345edd6f215a40474022dfee39b63befb5fb3c596b5.css" integrity="sha256-IuzrTRe6qc3A9XNF7dbyFaQEdAIt/uObY777X7PFlrU=">
<script defer src="/en.search.min.2698f0d1b683dae4d6cb071668b310a55ebcf1c48d11410a015a51d90105b53e.js" integrity="sha256-Jpjw0baD2uTWywcWaLMQpV688cSNEUEKAVpR2QEFtT4="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->

  <meta name="generator" content="Hugo 0.124.1">

    
    <script>
      var _paq = window._paq = window._paq || [];
       
       
      _paq.push(['disableCookies']);
       
      _paq.push(["setDomains", ["*.flink.apache.org","*.nightlies.apache.org/flink"]]);
      _paq.push(['trackPageView']);
      _paq.push(['enableLinkTracking']);
      (function() {
        var u="//analytics.apache.org/";
        _paq.push(['setTrackerUrl', u+'matomo.php']);
        _paq.push(['setSiteId', '1']);
        var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
        g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
      })();
    </script>
    
</head>

<body dir=ZgotmplZ>
  


<header>
  <nav class="navbar navbar-expand-xl">
    <div class="container-fluid">
      <a class="navbar-brand" href="/">
        <img src="/img/logo/png/100/flink_squirrel_100_color.png" alt="Apache Flink" height="47" width="47" class="d-inline-block align-text-middle">
        <span>Apache Flink</span>
      </a>
      <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
          <i class="fa fa-bars navbar-toggler-icon"></i>
      </button>
      <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav">
          





    
      
  
    <li class="nav-item dropdown">
      <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">About</a>
      <ul class="dropdown-menu">
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/flink-architecture/">Architecture</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/flink-applications/">Applications</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/flink-operations/">Operations</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/use-cases/">Use Cases</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/powered-by/">Powered By</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/roadmap/">Roadmap</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/community/">Community & Project Info</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/security/">Security</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/what-is-flink/special-thanks/">Special Thanks</a>
  

          </li>
        
      </ul>
    </li>
  

    
      
  
    <li class="nav-item dropdown">
      <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">Getting Started</a>
      <ul class="dropdown-menu">
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-docs-stable/docs/try-flink/local_installation/">With Flink<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-stable/docs/try-flink-kubernetes-operator/quick-start/">With Flink Kubernetes Operator<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-cdc-docs-stable/docs/get-started/introduction/">With Flink CDC<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-ml-docs-stable/docs/try-flink-ml/quick-start/">With Flink ML<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-statefun-docs-stable/getting-started/project-setup.html">With Flink Stateful Functions<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-docs-stable/docs/learn-flink/overview/">Training Course<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
      </ul>
    </li>
  

    
      
  
    <li class="nav-item dropdown">
      <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">Documentation</a>
      <ul class="dropdown-menu">
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-docs-stable/">Flink 1.19 (stable)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-docs-master/">Flink Master (snapshot)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-stable/">Kubernetes Operator 1.8 (latest)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main">Kubernetes Operator Main (snapshot)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-cdc-docs-stable">CDC 3.0 (stable)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-cdc-docs-master">CDC Master (snapshot)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-ml-docs-stable/">ML 2.3 (stable)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-ml-docs-master">ML Master (snapshot)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-statefun-docs-stable/">Stateful Functions 3.3 (stable)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="https://nightlies.apache.org/flink/flink-statefun-docs-master">Stateful Functions Master (snapshot)<i class="link fa fa-external-link title" aria-hidden="true"></i>
    </a>
  

          </li>
        
      </ul>
    </li>
  

    
      
  
    <li class="nav-item dropdown">
      <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">How to Contribute</a>
      <ul class="dropdown-menu">
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/overview/">Overview</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/contribute-code/">Contribute Code</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/reviewing-prs/">Review Pull Requests</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/code-style-and-quality-preamble/">Code Style and Quality Guide</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/contribute-documentation/">Contribute Documentation</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/documentation-style-guide/">Documentation Style Guide</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/improve-website/">Contribute to the Website</a>
  

          </li>
        
          <li>
            
  
    <a class="dropdown-item" href="/how-to-contribute/getting-help/">Getting Help</a>
  

          </li>
        
      </ul>
    </li>
  

    


    
      
  
    <li class="nav-item">
      
  
    <a class="nav-link" href="/posts/">Flink Blog</a>
  

    </li>
  

    
      
  
    <li class="nav-item">
      
  
    <a class="nav-link" href="/downloads/">Downloads</a>
  

    </li>
  

    


    









        </ul>
        <div class="book-search">
          <div class="book-search-spinner hidden">
            <i class="fa fa-refresh fa-spin"></i>
          </div>
          <form class="search-bar d-flex" onsubmit="return false;"su>
            <input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/">
            <i class="fa fa-search search"></i>
            <i class="fa fa-circle-o-notch fa-spin spinner"></i>
          </form>
          <div class="book-search-spinner hidden"></div>
          <ul id="book-search-results"></ul>
        </div>
      </div>
    </div>
  </nav>
  <div class="navbar-clearfix"></div>
</header>
 
  
      <main class="flex">
        <section class="container book-page">
          
  <article class="markdown"><!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->
<h1 id="community--project-info">
  Community &amp; Project Info
  <a class="anchor" href="#community--project-info">#</a>
</h1>
<h2 id="how-do-i-get-help-from-apache-flink">
  How do I get help from Apache Flink?
  <a class="anchor" href="#how-do-i-get-help-from-apache-flink">#</a>
</h2>
<p>There are many ways to get help from the Apache Flink community. The <a href="#mailing-lists">mailing lists</a> are the primary place where all Flink committers are present. For user support and questions use the <em>user mailing list</em>. You can also join the community on <a href="#slack">Slack</a>. Some committers are also monitoring <a href="#stack-overflow">Stack Overflow</a>. Please remember to tag your questions with the <em><a href="http://stackoverflow.com/questions/tagged/apache-flink">apache-flink</a></em> tag. Bugs and feature requests can either be discussed on the <em>dev mailing list</em> or on <a href="#issue-tracker">Jira</a>. Those interested in contributing to Flink should check out the <a href="/how-to-contribute/overview/">contribution guide</a>.</p>
<h2 id="mailing-lists">
  Mailing Lists
  <a class="anchor" href="#mailing-lists">#</a>
</h2>



<table
        
class='table '


title='Mailing Lists'
aria-label='Mailing Lists'
>
<thead>
<tr>

    <th
            
            title='Name'
            aria-label='Name'
            data-th_x='0'
            data-th_id='Name'
    >Name</th>

    <th
            
            title='Subscribe'
            aria-label='Subscribe'
            data-th_x='1'
            data-th_id='Subscribe'
    >Subscribe</th>

    <th
            
            title='Digest'
            aria-label='Digest'
            data-th_x='2'
            data-th_id='Digest'
    >Digest</th>

    <th
            
            title='Unsubscribe'
            aria-label='Unsubscribe'
            data-th_x='3'
            data-th_id='Unsubscribe'
    >Unsubscribe</th>

    <th
            
            title='Post'
            aria-label='Post'
            data-th_x='4'
            data-th_id='Post'
    >Post</th>

    <th
            
            title='Archive'
            aria-label='Archive'
            data-th_x='5'
            data-th_id='Archive'
    >Archive</th></tr>
</thead><tbody>
<tr
        
data-tr_y='0'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>news</strong>@flink.apache.org<br /> <small>News and announcements from the Flink community</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:news-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:news-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:news-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><em>Read only list</em></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?news@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='1'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>community</strong>@flink.apache.org<br /> <small>Broader community discussions related to meetups, conferences, blog posts and job offers</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:community-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:community-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:community-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><a href="mailto:community@flink.apache.org">Post</a></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?community@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='2'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>user</strong>@flink.apache.org<br /> <small>User support and questions mailing list</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:user-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:user-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:user-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><a href="mailto:user@flink.apache.org">Post</a></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?user@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='3'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>user-zh</strong>@flink.apache.org<br /> <small>User support and questions mailing list</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:user-zh-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:user-zh-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:user-zh-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><a href="mailto:user-zh@flink.apache.org">Post</a></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?user-zh@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='4'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>dev</strong>@flink.apache.org<br /> <small>Development related discussions</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:dev-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:dev-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:dev-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><a href="mailto:dev@flink.apache.org">Post</a></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?dev@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='5'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>builds</strong>@flink.apache.org<br /> <small>Build notifications of Flink main repository</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:builds-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:builds-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:builds-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><em>Read only list</em></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?builds@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='6'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>issues</strong>@flink.apache.org<br /> <small>Mirror of all Jira activity</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:issues-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:issues-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:issues-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><em>Read only list</em></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?issues@flink.apache.org">Archives</a></td></tr><tr
        
data-tr_y='7'
>
<td
        
title='Name'
aria-label='Name'


class=''


data-td_x='0'
data-td_id='Name'><strong>commits</strong>@flink.apache.org<br /> <small>All commits to our repositories</small></td>
<td
        
title='Subscribe'
aria-label='Subscribe'


class=''


data-td_x='1'
data-td_id='Subscribe'><a href="mailto:commits-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Digest'
aria-label='Digest'


class=''


data-td_x='2'
data-td_id='Digest'><a href="mailto:commits-digest-subscribe@flink.apache.org">Subscribe</a></td>
<td
        
title='Unsubscribe'
aria-label='Unsubscribe'


class=''


data-td_x='3'
data-td_id='Unsubscribe'><a href="mailto:commits-unsubscribe@flink.apache.org">Unsubscribe</a></td>
<td
        
title='Post'
aria-label='Post'


class=''


data-td_x='4'
data-td_id='Post'><em>Read only list</em></td>
<td
        
title='Archive'
aria-label='Archive'


class=''


data-td_x='5'
data-td_id='Archive'><a href="https://lists.apache.org/list.html?commits@flink.apache.org">Archives</a></td></tr></tbody></table>
<div class="alert alert-danger" role="alert">
  <b>Please make sure you are subscribed to the mailing list you are posting to!</b>
  If you are not subscribed to the mailing list, your message will either be rejected (dev@ list) or you won't receive the response (user@ list).
</div>
<h3 id="how-to-subscribe-to-a-mailing-list">
  How to subscribe to a mailing list
  <a class="anchor" href="#how-to-subscribe-to-a-mailing-list">#</a>
</h3>
<p>Before you can post a message to a mailing list, you need to subscribe to the list first.</p>
<ol>
<li>Send an email without any contents or subject to *<a href="mailto:listname*-subscribe@flink.apache.org">listname*-subscribe@flink.apache.org</a>. (replace <em>listname</em> with dev, user, user-zh, ..)</li>
<li>Wait till you receive an email with the subject &ldquo;confirm subscribe to *<a href="mailto:listname*@flink.apache.org">listname*@flink.apache.org</a>&rdquo;. Reply to that email, without editing the subject or including any contents</li>
<li>Wait till you receive an email with the subject &ldquo;WELCOME to *<a href="mailto:listname*@flink.apache.org">listname*@flink.apache.org</a>&rdquo;.</li>
</ol>
<p>If you send us an email with a code snippet, make sure that:</p>
<ol>
<li>you do not link to files in external services as such files can change, get deleted or the link might break and thus make an archived email thread useless</li>
<li>you paste text instead of screenshots of text</li>
<li>you keep formatting when pasting code in order to keep the code readable</li>
<li>there are enough import statements to avoid ambiguities</li>
</ol>
<h2 id="slack">
  Slack
  <a class="anchor" href="#slack">#</a>
</h2>
<p>You can join the <a href="https://join.slack.com/t/apache-flink/shared_invite/zt-1t4khgllz-Fm1CnXzdBbUchBz4HzJCAg">Apache Flink community on Slack.</a>
After creating an account in Slack, don&rsquo;t forget to introduce yourself in #introductions.
Due to Slack limitations the invite link expires after 100 invites. If it is expired, please reach out to the <a href="#mailing-lists">Dev mailing list</a>.
Any existing Slack member can also invite anyone else to join.</p>
<p>There are a couple of community rules:</p>
<ul>
<li><strong>Be respectful</strong> - This is the most important rule!</li>
<li>All important decisions and conclusions <strong>must be reflected back to the mailing lists.</strong>
&ldquo;If it didn’t happen on a mailing list, it didn’t happen.&rdquo; - <a href="http://theapacheway.com/on-list/">The Apache Mottos</a></li>
<li>Use <strong>Slack threads</strong> to keep parallel conversations from overwhelming a channel.</li>
<li>Use either <a href="https://apache-flink.slack.com/archives/C03G7LJTS2G">#pyflink</a> (for all Python Flink questions) or <a href="https://apache-flink.slack.com/archives/C03G7LJTS2G">#troubleshooting</a> (for all other Flink questions).</li>
<li>Please <strong>do not direct message</strong> people for troubleshooting, Jira assigning and PR review. Doing this can result in removal from Slack.</li>
</ul>
<p><strong>Note</strong>: All messages from public channels in our Slack are <strong>permanently stored and published</strong> in the <a href="https://www.linen.dev/s/apache-flink">Apache Flink Slack archive on linen.dev</a>. The purpose of this archive is to allow search engines to find past discussions in the Flink Slack.</p>
<h2 id="stack-overflow">
  Stack Overflow
  <a class="anchor" href="#stack-overflow">#</a>
</h2>
<p>Committers are watching <a href="http://stackoverflow.com/questions/tagged/apache-flink">Stack Overflow</a> for the <a href="http://stackoverflow.com/questions/tagged/apache-flink">apache-flink</a> tag.</p>
<p>Make sure to tag your questions there accordingly to get answers from the Flink community.</p>
<h2 id="issue-tracker">
  Issue Tracker
  <a class="anchor" href="#issue-tracker">#</a>
</h2>
<p>We use Jira to track all code related issues: <a href="https://issues.apache.org/jira/browse/FLINK">https://issues.apache.org/jira/browse/FLINK</a>.
You must have a JIRA account in order to log cases and issues.</p>
<p>If you don&rsquo;t have an ASF JIRA account, you can request one at the <a href="https://selfserve.apache.org/jira-account.html">ASF Self-serve portal</a>.</p>
<p>All issue activity is also mirrored to the issues mailing list.</p>
<h2 id="reporting-security-issues">
  Reporting Security Issues
  <a class="anchor" href="#reporting-security-issues">#</a>
</h2>
<p>If you wish to report a security vulnerability, please contact <a href="mailto:security@apache.org">security@apache.org</a>. Apache Flink follows the typical <a href="https://www.apache.org/security/">Apache vulnerability handling process</a> for reporting vulnerabilities. Note that vulnerabilities should not be publicly disclosed until the project has responded.</p>
<h2 id="meetups">
  Meetups
  <a class="anchor" href="#meetups">#</a>
</h2>
<p>There are plenty of meetups on <a href="http://www.meetup.com/topics/apache-flink/">meetup.com</a> featuring Flink.</p>
<h2 id="source-code">
  Source Code
  <a class="anchor" href="#source-code">#</a>
</h2>
<h3 id="main-repositories">
  Main Repositories
  <a class="anchor" href="#main-repositories">#</a>
</h3>
<ul>
<li>
<p><strong>Flink Core Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink.git">https://gitbox.apache.org/repos/asf/flink.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink.git">https://github.com/apache/flink.git</a></li>
</ul>
</li>
<li>
<p><strong>Flink Docker Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-docker.git">https://gitbox.apache.org/repos/asf/flink-docker.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-docker.git">https://github.com/apache/flink-docker.git</a></li>
</ul>
</li>
<li>
<p><strong>Flink Kubernetes Operator Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-kubernetes-operator.git">https://gitbox.apache.org/repos/asf/flink-kubernetes-operator.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-kubernetes-operator">https://github.com/apache/flink-kubernetes-operator</a></li>
</ul>
</li>
<li>
<p><strong>Flink CDC Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-cdc.git">https://gitbox.apache.org/repos/asf/flink-cdc.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-cdc">https://github.com/apache/flink-cdc</a></li>
</ul>
</li>
<li>
<p><strong>Flink ML Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-ml.git">https://gitbox.apache.org/repos/asf/flink-ml.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-ml">https://github.com/apache/flink-ml</a></li>
</ul>
</li>
<li>
<p><strong>Flink Stateful Functions Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-statefun.git">https://gitbox.apache.org/repos/asf/flink-statefun.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-statefun">https://github.com/apache/flink-statefun</a></li>
</ul>
</li>
<li>
<p><strong>Flink Stateful Functions Docker Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-statefun-docker.git">https://gitbox.apache.org/repos/asf/flink-statefun-docker.git</a></li>
<li>GitHub mirror: <a href="https://github.com/apache/flink-statefun-docker">https://github.com/apache/flink-statefun-docker</a></li>
</ul>
</li>
<li>
<p><strong>Flink Website Repository</strong></p>
<ul>
<li>ASF repository: <a href="https://gitbox.apache.org/repos/asf/flink-web.git">https://gitbox.apache.org/repos/asf/flink-web.git</a></li>
<li>GitHub mirror:  <a href="https://github.com/apache/flink-web.git">https://github.com/apache/flink-web.git</a></li>
</ul>
</li>
</ul>
<h3 id="complete-list-of-repositories">
  Complete List of Repositories
  <a class="anchor" href="#complete-list-of-repositories">#</a>
</h3>
<p>The complete list of repositories of Apache Flink can be found under <a href="https://gitbox.apache.org/repos/asf#flink">https://gitbox.apache.org/repos/asf#flink</a>.</p>
<h2 id="training">
  Training
  <a class="anchor" href="#training">#</a>
</h2>
<p><a href="http://ververica.com">Ververica</a> currently maintains free Apache Flink training. Their <a href="http://training.ververica.com/">training website</a> has slides and exercises with solutions. The slides are also available on <a href="http://www.slideshare.net/dataArtisans/presentations">SlideShare</a>.</p>
<h2 id="project-wiki">
  Project Wiki
  <a class="anchor" href="#project-wiki">#</a>
</h2>
<p>The Apache Flink <a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home" target="_blank">project wiki</a> contains a range of relevant resources for Flink users. However, some content on the wiki might be out-of-date. When in doubt, please refer to the <a href="https://nightlies.apache.org/flink/flink-docs-stable/">Flink documentation</a>.</p>
<h2 id="flink-forward">
  Flink Forward
  <a class="anchor" href="#flink-forward">#</a>
</h2>
<p>Flink Forward is a conference happening yearly in different locations around the world. Up to date information about the conference is available on <a href="https://www.flink-forward.org/">Flink-Forward.org</a>.</p>
<h2 id="people">
  People
  <a class="anchor" href="#people">#</a>
</h2>
<p>Please find the most up-to-date list <a href="https://projects.apache.org/committee.html?flink">here</a>.</p>
<h2 id="materials--apache-flink-logos">
  Materials / Apache Flink Logos
  <a class="anchor" href="#materials--apache-flink-logos">#</a>
</h2>
<p>The <a href="/material/">materials page</a> offers assets such as the Apache Flink logo in different image formats, or the Flink color scheme.</p>
</article>

          



  
    
    <div class="edit-this-page">
      <p>
        <a href="https://cwiki.apache.org/confluence/display/FLINK/Flink+Translation+Specifications">Want to contribute translation?</a>
      </p>
      <p>
        <a href="//github.com/apache/flink-web/edit/asf-site/docs/content/what-is-flink/community.md">
          Edit This Page<i class="fa fa-edit fa-fw"></i> 
        </a>
      </p>
    </div>

        </section>
        
          <aside class="book-toc">
            
  

<nav id="TableOfContents"><h3>On This Page <a href="javascript:void(0)" class="toc" onclick="collapseToc()"><i class="fa fa-times" aria-hidden="true"></i></a></h3>
  <ul>
    <li><a href="#community--project-info">Community &amp; Project Info</a>
      <ul>
        <li><a href="#how-do-i-get-help-from-apache-flink">How do I get help from Apache Flink?</a></li>
        <li><a href="#mailing-lists">Mailing Lists</a>
          <ul>
            <li><a href="#how-to-subscribe-to-a-mailing-list">How to subscribe to a mailing list</a></li>
          </ul>
        </li>
        <li><a href="#slack">Slack</a></li>
        <li><a href="#stack-overflow">Stack Overflow</a></li>
        <li><a href="#issue-tracker">Issue Tracker</a></li>
        <li><a href="#reporting-security-issues">Reporting Security Issues</a></li>
        <li><a href="#meetups">Meetups</a></li>
        <li><a href="#source-code">Source Code</a>
          <ul>
            <li><a href="#main-repositories">Main Repositories</a></li>
            <li><a href="#complete-list-of-repositories">Complete List of Repositories</a></li>
          </ul>
        </li>
        <li><a href="#training">Training</a></li>
        <li><a href="#project-wiki">Project Wiki</a></li>
        <li><a href="#flink-forward">Flink Forward</a></li>
        <li><a href="#people">People</a></li>
        <li><a href="#materials--apache-flink-logos">Materials / Apache Flink Logos</a></li>
      </ul>
    </li>
  </ul>
</nav>


          </aside>
          <aside class="expand-toc hidden">
            <a class="toc" onclick="expandToc()" href="javascript:void(0)">
              <i class="fa fa-bars" aria-hidden="true"></i>
            </a>
          </aside>
        
      </main>

      <footer>
        


<div class="separator"></div>
<div class="panels">
  <div class="wrapper">
      <div class="panel">
        <ul>
          <li>
            <a href="https://flink-packages.org/">flink-packages.org</a>
          </li>
          <li>
            <a href="https://www.apache.org/">Apache Software Foundation</a>
          </li>
          <li>
            <a href="https://www.apache.org/licenses/">License</a>
          </li>
          
          
          
            
          
            
          
          
            
          

          
            
              
            
          
            
              
                <li>
                  <a  href="/zh/what-is-flink/community/">
                    <i class="fa fa-globe" aria-hidden="true"></i>&nbsp;中文版
                  </a>
                </li>
              
            
          
       </ul>
      </div>
      <div class="panel">
        <ul>
          <li>
            <a href="/what-is-flink/security">Security</a-->
          </li>
          <li>
            <a href="https://www.apache.org/foundation/sponsorship.html">Donate</a>
          </li>
          <li>
            <a href="https://www.apache.org/foundation/thanks.html">Thanks</a>
          </li>
       </ul>
      </div>
      <div class="panel icons">
        <div>
          <a href="/posts">
            <div class="icon flink-blog-icon"></div>
            <span>Flink blog</span>
          </a>
        </div>
        <div>
          <a href="https://github.com/apache/flink">
            <div class="icon flink-github-icon"></div>
            <span>Github</span>
          </a>
        </div>
        <div>
          <a href="https://twitter.com/apacheflink">
            <div class="icon flink-twitter-icon"></div>
            <span>Twitter</span>
          </a>
        </div>
      </div>
  </div>
</div>

<hr/>

<div class="container disclaimer">
  <p>The contents of this website are © 2024 Apache Software Foundation under the terms of the Apache License v2. Apache Flink, Flink, and the Flink logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.</p>
</div>



      </footer>
    
  </body>
</html>






