<p></p>
<p dir="auto">We added support for Docker-based development in <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2409" data-hovercard-type="pull_request" data-hovercard-url="/openstreetmap/openstreetmap-website/pull/2409/hovercard">2021</a> (based on a PR started in 2019). At this time there were no clear conventions for setting up docker-based development environments, so we did our own thing.</p>
<p dir="auto">Nowadays, a number of tools support the "<a href="https://containers.dev" rel="nofollow">Development Container</a>" specification. This provides a few additional benefits, for example tighter integration between code editors and the containers (e.g. running the rubocop process within the container, but seeing the syntax highlighting in your editor UI). Dev containers are <a href="https://containers.dev/supporting" rel="nofollow">supported</a> by vscode and intellij code editors, and are also a part of Github Codespaces. Codespaces allow developers to make code changes, run tests and make PRs, all without installing anything locally. So it would be nice to fully support that too.</p>
<p dir="auto">It's also notable that rails 7.2 added built-in support for devcontainers configuration, so running <code class="notranslate">bundle exec rails devcontainer</code> gets us started on the setup and generating the configuration files.</p>
<p dir="auto">I therefore propose:</p>
<ul dir="auto">
<li>We set up the devcontainer configuration and make sure it works.</li>
<li>We move the docker part of CI to use the devcontainer configuration.</li>
<li>We remove the original Docker configuration and update the documentation.</li>
<li>We also consider removing the vagrant configuration.</li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/issues/5264">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLIWRG5TS3MKPQV7O5DZ3Z32LAVCNFSM6AAAAABQBU2O3KVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU4TEMJRHA3TKNQ">unsubscribe</a>.<br />You are receiving this because you are subscribed to this thread.<img src="https://github.com/notifications/beacon/AAK2OLO7FZTPEBLDJOCN5PDZ3Z32LA5CNFSM6AAAAABQBU2O3KWGG33NNVSW45C7OR4XAZNFJFZXG5LFVJRW63LNMVXHIX3JMTHJVAEX4Q.gif" height="1" width="1" alt="" /><span style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message ID: <span><openstreetmap/openstreetmap-website/issues/5264</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/issues/5264",
"url": "https://github.com/openstreetmap/openstreetmap-website/issues/5264",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>