{"repo":"LandRegistry/common-dev-env","free":true,"listed":false,"github":"https://github.com/LandRegistry/common-dev-env","clone":"git clone https://github.com/LandRegistry/common-dev-env.git","description":"A generic Docker/Docker Compose-based development environment with some useful hooks to get apps up and running faster","language":"Ruby","stars":27,"topics":["development-environment","developer-tools","docker","docker-compose","postgres","postgresql","db2","nginx","rabbitmq","redis"],"license":"MIT","category":"databases-storage","readme_excerpt":"Common Development Environment This repository contains the code for a development environment that can be used across teams and projects. It is designed to allow collections of applications to be loaded from a separate configuration repository, and maximising consistency between them. It provides several hooks for applications to take advantage of, including: - Docker container creation and launching via docker-compose - Automatic creation of commodity systems such as Postgres or Elasticsearch (with further hooks to allow for initial provisoning such as running SQL) Getting started Prerequisites - Docker and Docker Compose . Exactly what toolset you use depends on your OS and personal preferences, but recommended are: - Docker Desktop - Docker CE for Linux - Git - Ruby 3.0+ Git/SSH You must ensure the shell you are starting the dev-env from can access all the necessary Git repositories - namely the config repo and the application repos it specifies. If they are to be accessed via SSH, this wiki page has some proven techniques for generating keys and making them available to the shell. Controlling the dev-env To begin: 1. Start Docker. 2. Using Git, clone this repository into a directory of your choice. 3. Open a terminal in that directory, and run source run.sh up 4. If this is the first time you are launching the machine you will be prompted for the url of a configuration repository (both SSH or HTTP(S) Git formats will work). Paste it in and press enter. TIP: You can add a","default_branch":null,"files":null,"tree":[],"storefront":"/r/LandRegistry","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/LandRegistry/common-dev-env/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}