Skip to content

Commit

Permalink
Update INSTALL.md to reference Docker as an option
Browse files Browse the repository at this point in the history
  • Loading branch information
jalessio committed Mar 2, 2020
1 parent b75b627 commit 0710e7a
Showing 1 changed file with 22 additions and 19 deletions.
41 changes: 22 additions & 19 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
These instructions are designed for setting up The Rails Port for development and testing.
If you want to deploy the software for your own project, then see the notes at the end.

You can install the software directly on your machine, which is the traditional and probably best-supported approach. However, there is an alternative which may be easier: Vagrant. This installs the software into a virtual machine, which makes it easier to get a consistent development environment and may avoid installation difficulties. For Vagrant instructions, see [VAGRANT.md](VAGRANT.md).
You can install the software directly on your machine, which is the traditional and probably best-supported approach. However, there
are two alternatives which makes it easier to get a consistent development environment and may avoid installation difficulties:

- **Vagrant** This installs the software into a virtual machine. For Vagrant instructions see [VAGRANT.md](VAGRANT.md).
- **Docker** This installs the software using containerization. For Docker instructions see [DOCKER.md](DOCKER.md).

These instructions are based on Ubuntu 18.04 LTS, which is the platform used by the OSMF servers.
The instructions also work, with only minor amendments, for all other current Ubuntu releases, Fedora and MacOSX
The instructions also work, with only minor amendments, for all other current Ubuntu releases, Fedora and MacOSX.

We don't recommend attempting to develop or deploy this software on Windows. If you need to use Windows, then try developing this software using Ubuntu in a virtual machine, or use [Vagrant](VAGRANT.md).
We don't recommend attempting to develop or deploy this software on Windows. If you need to use Windows, then try developing this software using Ubuntu in a virtual machine, or use [Vagrant](VAGRANT.md) or [Docker](DOCKER.md).

## Dependencies

Expand All @@ -18,11 +22,11 @@ of packages required before you can get the various gems installed.

## Minimum requirements

* Ruby 2.5+
* PostgreSQL 9.1+
* ImageMagick
* Bundler
* Javascript Runtime
- Ruby 2.5+
- PostgreSQL 9.1+
- ImageMagick
- Bundler
- Javascript Runtime

These can be installed on Ubuntu 18.04 or later with:

Expand Down Expand Up @@ -70,8 +74,8 @@ For MacOSX, you will need XCode installed from the Mac App Store; OS X 10.7 (Lio

Installing PostgreSQL:

* Install Postgres.app from https://postgresapp.com/
* Add PostgreSQL to your path, by editing your profile:
- Install Postgres.app from https://postgresapp.com/
- Add PostgreSQL to your path, by editing your profile:

`nano ~/.profile`

Expand All @@ -81,12 +85,12 @@ and adding:

Installing other dependencies:

* Install Homebrew from https://brew.sh/
* Install the latest version of Ruby: `brew install ruby`
* Install ImageMagick: `brew install imagemagick`
* Install libxml2: `brew install libxml2 --with-xml2-config`
* If you want to run the tests, you need `phantomjs` as well: `brew install phantomjs`
* Install Bundler: `gem install bundler`
- Install Homebrew from https://brew.sh/
- Install the latest version of Ruby: `brew install ruby`
- Install ImageMagick: `brew install imagemagick`
- Install libxml2: `brew install libxml2 --with-xml2-config`
- If you want to run the tests, you need `phantomjs` as well: `brew install phantomjs`
- Install Bundler: `gem install bundler`

Note that OS X does not have a /home directory by default, so if you are using the GPX functions, you will need to change the directories specified in config/application.yml.

Expand All @@ -106,7 +110,6 @@ git clone --depth=1 https://github.com/openstreetmap/openstreetmap-website.git

If you want to add in the full history later on, perhaps to run `git blame` or `git log`, run `git fetch --depth=1000000`


## Ruby gems

We use [Bundler](http://gembundler.com/) to manage the rubygems required for the project.
Expand Down Expand Up @@ -143,7 +146,7 @@ cp config/example.storage.yml config/storage.yml

## Database setup

The Rails Port uses three databases - one for development, one for testing, and one for production. The database-specific configuration
The Rails Port uses three databases - one for development, one for testing, and one for production. The database-specific configuration
options are stored in `config/database.yml`, which we need to create from the example template.

```
Expand Down Expand Up @@ -226,7 +229,7 @@ After installing this software, you may need to carry out some [configuration st

# Installing compiled shared library database functions (optional)

There are special database functions required by a (little-used) API call, the migrations and diff replication. The former two are provided as *either* pure SQL functions or a compiled shared library. The SQL versions are installed as part of the recommended install procedure above and the shared library versions are recommended only if you are running a production server making a lot of `/changes` API calls or need the diff replication functionality.
There are special database functions required by a (little-used) API call, the migrations and diff replication. The former two are provided as _either_ pure SQL functions or a compiled shared library. The SQL versions are installed as part of the recommended install procedure above and the shared library versions are recommended only if you are running a production server making a lot of `/changes` API calls or need the diff replication functionality.

If you aren't sure which you need, stick with the SQL versions.

Expand Down

0 comments on commit 0710e7a

Please sign in to comment.