<p>This is a cleaned up version of PR <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="509534770" data-permission-text="Issue title is private" data-url="https://github.com/openstreetmap/openstreetmap-website/issues/2406" data-hovercard-type="pull_request" data-hovercard-url="/openstreetmap/openstreetmap-website/pull/2406/hovercard" href="https://github.com/openstreetmap/openstreetmap-website/pull/2406">#2406</a> which was built upon the work of <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=11360512" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/fazlerabbi37">@fazlerabbi37</a> in PR <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="458248236" data-permission-text="Issue title is private" data-url="https://github.com/openstreetmap/openstreetmap-website/issues/2272" data-hovercard-type="pull_request" data-hovercard-url="/openstreetmap/openstreetmap-website/pull/2272/hovercard" href="https://github.com/openstreetmap/openstreetmap-website/pull/2272">#2272</a>.</p>
<ul>
<li>Introduces the usage of <code>docker-compose</code> for creating a development environment for this project</li>
<li>Adds <code>DOCKER.md</code> for Docker-specific installation instructions</li>
<li>Adds a <code>Makefile</code> for providing shortcuts for running common <code>docker-compose</code> commands</li>
</ul>
<p>There is certainly still room for improvement here, including pruning unneeded dependencies in the top-level <code>Dockerfile</code>, but I propose merging this working version and iterating from that point <em>(particularly since many of the changes will apply regardless of the installation method)</em>. I think we will benefit from feedback of a few people actually using this before making too many more changes.</p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/openstreetmap/openstreetmap-website/pull/2409'>https://github.com/openstreetmap/openstreetmap-website/pull/2409</a></p>

<h4>Commit Summary</h4>
<ul>
  <li>Introduce docker-compose config for development</li>
  <li>Add Docker README and Makefile for helper commands</li>
</ul>

<h4>File Changes</h4>
<ul>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-0">.dockerignore</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-1">.gitignore</a>
    (3)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-2">DOCKER.md</a>
    (97)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-3">Dockerfile</a>
    (52)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-4">Makefile</a>
    (22)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-5">config/docker.database.yml</a>
    (20)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-6">docker-compose.yml</a>
    (24)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-7">docker/postgres/Dockerfile</a>
    (4)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409/files#diff-8">docker/postgres/openstreetmap-postgres-init.sh</a>
    (11)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/openstreetmap/openstreetmap-website/pull/2409.patch'>https://github.com/openstreetmap/openstreetmap-website/pull/2409.patch</a></li>
  <li><a href='https://github.com/openstreetmap/openstreetmap-website/pull/2409.diff'>https://github.com/openstreetmap/openstreetmap-website/pull/2409.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409?email_source=notifications&email_token=AAK2OLNWRYWDOBNWXZRXQHLQP5LNNA5CNFSM4JDURRXKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HTTKDMQ">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLNNHIPCWH2IF3AEQ5DQP5LNNANCNFSM4JDURRXA">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AAK2OLIMCIH5NVBYYF5NA23QP5LNNA5CNFSM4JDURRXKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HTTKDMQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/pull/2409?email_source=notifications\u0026email_token=AAK2OLNWRYWDOBNWXZRXQHLQP5LNNA5CNFSM4JDURRXKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HTTKDMQ",
"url": "https://github.com/openstreetmap/openstreetmap-website/pull/2409?email_source=notifications\u0026email_token=AAK2OLNWRYWDOBNWXZRXQHLQP5LNNA5CNFSM4JDURRXKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HTTKDMQ",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>