mailcow/install/index.html

228 lines
7.5 KiB
HTML

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="../img/favicon.ico">
<title>Installation - mailcow: dockerized</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="../css/theme.css" type="text/css" />
<link rel="stylesheet" href="../css/theme_extra.css" type="text/css" />
<link rel="stylesheet" href="../css/highlight.css">
<script>
// Current page data
var mkdocs_page_name = "Installation";
var mkdocs_page_input_path = "install.md";
var mkdocs_page_url = "/install/";
</script>
<script src="../js/jquery-2.1.1.min.js"></script>
<script src="../js/modernizr-2.8.3.min.js"></script>
<script type="text/javascript" src="../js/highlight.pack.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
<div class="wy-side-nav-search">
<a href=".." class="icon icon-home"> mailcow: dockerized</a>
<div role="search">
<form id ="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li>
<li class="toctree-l1 ">
<a class="" href="..">Overview</a>
</li>
<li>
<li>
<li class="toctree-l1 current">
<a class="current" href="./">Installation</a>
<ul>
<li class="toctree-l3"><a href="#install-mailcow">Install mailcow</a></li>
<li class="toctree-l3"><a href="#update-mailcow">Update mailcow</a></li>
<li><a class="toctree-l4" href="#use-dev-branch-not-recommended">Use dev branch (not recommended)</a></li>
</ul>
</li>
<li>
<li>
<li class="toctree-l1 ">
<a class="" href="../first_steps/">First Steps</a>
</li>
<li>
<li>
<li class="toctree-l1 ">
<a class="" href="../u_and_e/">Usage & Examples</a>
</li>
<li>
</ul>
</div>
&nbsp;
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="..">mailcow: dockerized</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="..">Docs</a> &raquo;</li>
<li>Installation</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/andryyy/mailcow-dockerized/edit/master/docs/install.md"
class="icon icon-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main">
<div class="section">
<h1 id="install-mailcow">Install mailcow</h1>
<ol>
<li>
<p>You need Docker.</p>
<ul>
<li>Most systems can install Docker by running <code>wget -qO- https://get.docker.com/ | sh</code></li>
</ul>
</li>
<li>
<p>You need Docker Compose.</p>
<ul>
<li>Learn <a href="https://docs.docker.com/compose/install/">how to install Docker Compose</a> - or:</li>
<li><code>curl -L "https://github.com/docker/compose/releases/download/composer_version/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose &amp;&amp; chmod +x /usr/local/bin/docker-compose</code></li>
</ul>
</li>
<li>
<p>Clone the master branch of the repository and run <code>./generate_config.sh</code> to generate a file "mailcow.conf". You will be asked for a hostname and a timezone:</p>
<ul>
<li><code>git clone https://github.com/andryyy/mailcow-dockerized &amp;&amp; cd mailcow-dockerized</code></li>
<li><code>./generate_config.sh</code></li>
<li>Open and check "mailcow.conf" if you need or want to make changes to ports (for example changing the default HTTPS port)</li>
</ul>
</li>
<li>
<p>Run the composer file.</p>
<ul>
<li><code>docker-compose up -d</code></li>
</ul>
</li>
</ol>
<p>Done.</p>
<p>You can now access <strong>https://${MAILCOW_HOSTNAME}</strong> with the default credentials <code>admin</code> + password <code>moohoo</code>.</p>
<p>It may take a while for MySQL to warm up, so please wait half a minute.</p>
<p>The database will be initialized right after a connection to MySQL can be established.</p>
<h1 id="update-mailcow">Update mailcow</h1>
<p>There is no update routine.</p>
<p>You need to refresh your pulled repository clone by running <code>git pull</code> - this will likely fail due to changes to your local configuration. But that's why we use git! :-)</p>
<p>Whatever file has local changes, add and commit it to your repository clone. For example:</p>
<pre><code>git add data/conf/postfix/main.cf data/conf/dovecot/dovecot.conf
git commit -m &quot;My changes to main.cf and dovecot.conf
</code></pre>
<p>Try running <code>git pull</code> again and resolve conflicts, if any.</p>
<p>Now update all images, apply changes to containers and restart all services:</p>
<pre><code>docker-compose pull
docker-compose up -d --remove-orphans
docker-compose restart
</code></pre>
<h2 id="use-dev-branch-not-recommended">Use dev branch (not recommended)</h2>
<p>When you checkout the dev branch, you will most likely end up using the "master" images with code base of "dev".
If there were critical changes to the images in dev, mailcow will not work.</p>
<p>But you can still build the images by yourself:</p>
<pre><code>docker-compose up -d --build
</code></pre>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../first_steps/" class="btn btn-neutral float-right" title="First Steps">Next <span class="icon icon-circle-arrow-right"></span></a>
<a href=".." class="btn btn-neutral" title="Overview"><span class="icon icon-circle-arrow-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<!-- Copyright etc -->
</div>
Built with <a href="http://www.mkdocs.org">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<div class="rst-versions" role="note" style="cursor: pointer">
<span class="rst-current-version" data-toggle="rst-current-version">
<a href="https://github.com/andryyy/mailcow-dockerized/" class="icon icon-github" style="float: left; color: #fcfcfc"> GitHub</a>
<span><a href=".." style="color: #fcfcfc;">&laquo; Previous</a></span>
<span style="margin-left: 15px"><a href="../first_steps/" style="color: #fcfcfc">Next &raquo;</a></span>
</span>
</div>
<script src="../js/theme.js"></script>
</body>
</html>