Skip to content

Commit 6d12c55

Browse files
authored
Merge pull request #299 from OpenHistoricalMap/staging
Updating setting.local.yaml and passenger version
2 parents 4b1bfa1 + fa53ef6 commit 6d12c55

File tree

5 files changed

+41
-33
lines changed

5 files changed

+41
-33
lines changed

images/web/Dockerfile

+21-13
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:22.04
1+
FROM ruby:3.3.0
22
ENV DEBIAN_FRONTEND=noninteractive
33
ENV workdir /var/www
44

@@ -8,7 +8,7 @@ ENV RAILS_ENV=production
88
# Install the openstreetmap-website dependencies
99
RUN apt-get update \
1010
&& apt-get install -y \
11-
ruby ruby-dev ruby-bundler libmagickwand-dev libxml2-dev libxslt1-dev \
11+
libmagickwand-dev libxml2-dev libxslt1-dev \
1212
apache2 apache2-dev build-essential git-core postgresql-client \
1313
libpq-dev libsasl2-dev imagemagick libffi-dev libgd-dev libarchive-dev libbz2-dev curl \
1414
default-jre-headless file gpg-agent libvips-dev locales software-properties-common tzdata unzip \
@@ -17,7 +17,7 @@ RUN apt-get update \
1717
&& rm -rf /var/lib/apt/lists/*
1818

1919
## Install node
20-
RUN curl -sL https://deb.nodesource.com/setup_16.x | bash -
20+
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
2121
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
2222
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
2323
RUN apt-get update && apt-get install -y nodejs yarn && \
@@ -42,6 +42,10 @@ RUN cd $cgimap && \
4242
./configure && \
4343
make && \
4444
make install
45+
RUN echo "/usr/local/lib" > /etc/ld.so.conf.d/local_libs.conf && ldconfig
46+
47+
# Install Passenger
48+
RUN gem install passenger && passenger-install-apache2-module --auto
4549

4650
# Install svgo required
4751
RUN npm install -g svgo
@@ -85,19 +89,23 @@ RUN a2enmod setenvif
8589
RUN a2dissite 000-default
8690
RUN a2ensite production
8791

88-
# Install Passenger + Apache module
89-
RUN apt-key adv --refresh-keys --keyserver keyserver.ubuntu.com
90-
RUN apt-get update && apt-get install -y libapache2-mod-passenger lighttpd
91-
92-
# Enable the Passenger Apache module and restart Apache
92+
# # Enable the Passenger Apache module and restart Apache
9393
RUN echo "ServerName $(cat /etc/hostname)" >> /etc/apache2/apache2.conf
94+
95+
# Config passenger module
96+
RUN echo "LoadModule passenger_module $(passenger-config --root)/buildout/apache2/mod_passenger.so" > /etc/apache2/mods-available/passenger.load
97+
RUN echo "<IfModule mod_passenger.c>\n\
98+
PassengerRoot $(passenger-config --root)\n\
99+
PassengerRuby /usr/local/bin/ruby\n\
100+
</IfModule>" > /etc/apache2/mods-available/passenger.conf
101+
94102
RUN a2enmod passenger
95103

96-
# Check installation
97-
RUN /usr/bin/passenger-config validate-install
98-
RUN /usr/sbin/passenger-memory-stats
104+
# # Check installation
105+
RUN /usr/local/bundle/bin/passenger-config validate-install
106+
RUN /usr/local/bundle/bin/passenger-memory-stats
99107

100-
# Enable required apache modules for the cgimap Apache service
108+
# # Enable required apache modules for the cgimap Apache service
101109
RUN a2enmod proxy proxy_http rewrite lbmethod_byrequests proxy_fcgi
102110

103111
# Config the virtual host apache2
@@ -107,7 +115,7 @@ RUN apache2ctl configtest
107115
RUN chown -R www-data: $workdir
108116

109117
# Add settings
110-
ADD config/settings-local.yml $workdir/config/
118+
ADD config/settings.local.yml $workdir/config/
111119

112120
COPY start.sh $workdir/
113121
COPY liveness.sh $workdir/

images/web/config/production.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# ServerName localhost
33
# Tell Apache and Passenger where your app's 'public' directory is
44
DocumentRoot /var/www/public
5-
PassengerRuby /usr/bin/ruby
5+
PassengerRuby /usr/local/bin/ruby
66
RewriteEngine On
77
RewriteCond %{HTTP:X-Forwarded-Proto} =http
88
# Development mode in case domain is localhost
File renamed without changes.

images/web/start.sh

+18-18
Original file line numberDiff line numberDiff line change
@@ -14,48 +14,48 @@ production:
1414
encoding: utf8" >$workdir/config/database.yml
1515

1616
#### SETTING UP SERVER_URL AND SERVER_PROTOCOL
17-
sed -i -e 's/server_url: "openhistoricalmap.example.com"/server_url: "'$SERVER_URL'"/g' $workdir/config/settings-local.yml
18-
sed -i -e 's/server_protocol: "http"/server_protocol: "'$SERVER_PROTOCOL'"/g' $workdir/config/settings-local.yml
17+
sed -i -e 's/server_url: "openhistoricalmap.example.com"/server_url: "'$SERVER_URL'"/g' $workdir/config/settings.local.yml
18+
sed -i -e 's/server_protocol: "http"/server_protocol: "'$SERVER_PROTOCOL'"/g' $workdir/config/settings.local.yml
1919

2020
### WEBSITE STATUS
2121
sed -i "s/online/$WEBSITE_STATUS/g" $workdir/config/settings.yml
2222

2323
#### SETTING UP MAIL SENDER
24-
sed -i -e 's/smtp_address: "localhost"/smtp_address: "'$MAILER_ADDRESS'"/g' $workdir/config/settings-local.yml
25-
sed -i -e 's/smtp_domain: "localhost"/smtp_domain: "'$MAILER_DOMAIN'"/g' $workdir/config/settings-local.yml
26-
sed -i -e 's/smtp_enable_starttls_auto: false/smtp_enable_starttls_auto: true/g' $workdir/config/settings-local.yml
27-
sed -i -e 's/smtp_authentication: null/smtp_authentication: "login"/g' $workdir/config/settings-local.yml
28-
sed -i -e 's/smtp_user_name: null/smtp_user_name: "'$MAILER_USERNAME'"/g' $workdir/config/settings-local.yml
29-
sed -i -e 's/smtp_password: null/smtp_password: "'$MAILER_PASSWORD'"/g' $workdir/config/settings-local.yml
30-
sed -i -e 's/[email protected]/'$MAILER_FROM'/g' $workdir/config/settings-local.yml
31-
sed -i -e 's/smtp_port: 25/smtp_port: '$MAILER_PORT'/g' $workdir/config/settings-local.yml
24+
sed -i -e 's/smtp_address: "localhost"/smtp_address: "'$MAILER_ADDRESS'"/g' $workdir/config/settings.local.yml
25+
sed -i -e 's/smtp_domain: "localhost"/smtp_domain: "'$MAILER_DOMAIN'"/g' $workdir/config/settings.local.yml
26+
sed -i -e 's/smtp_enable_starttls_auto: false/smtp_enable_starttls_auto: true/g' $workdir/config/settings.local.yml
27+
sed -i -e 's/smtp_authentication: null/smtp_authentication: "login"/g' $workdir/config/settings.local.yml
28+
sed -i -e 's/smtp_user_name: null/smtp_user_name: "'$MAILER_USERNAME'"/g' $workdir/config/settings.local.yml
29+
sed -i -e 's/smtp_password: null/smtp_password: "'$MAILER_PASSWORD'"/g' $workdir/config/settings.local.yml
30+
sed -i -e 's/[email protected]/'$MAILER_FROM'/g' $workdir/config/settings.local.yml
31+
sed -i -e 's/smtp_port: 25/smtp_port: '$MAILER_PORT'/g' $workdir/config/settings.local.yml
3232

3333
#### SET UP ID KEY
34-
sed -i -e 's/id_application: ""/id_application: "'$OPENSTREETMAP_id_key'"/g' $workdir/config/settings-local.yml
34+
sed -i -e 's/id_application: ""/id_application: "'$OPENSTREETMAP_id_key'"/g' $workdir/config/settings.local.yml
3535
sed -i -e 's/#id_application: ""/id_application: "'$OPENSTREETMAP_id_key'"/g' $workdir/config/settings.yml
3636

3737
### SET UP OAUTH ID AND KEY
38-
sed -i -e 's/OAUTH_CLIENT_ID/'$OAUTH_CLIENT_ID'/g' $workdir/config/settings-local.yml
39-
sed -i -e 's/OAUTH_KEY/'$OAUTH_KEY'/g' $workdir/config/settings-local.yml
38+
sed -i -e 's/OAUTH_CLIENT_ID/'$OAUTH_CLIENT_ID'/g' $workdir/config/settings.local.yml
39+
sed -i -e 's/OAUTH_KEY/'$OAUTH_KEY'/g' $workdir/config/settings.local.yml
4040
sed -i -e 's/# oauth_application: "OAUTH_CLIENT_ID"/oauth_application: "'$OAUTH_CLIENT_ID'"/g' $workdir/config/settings.yml
4141
sed -i -e 's/# oauth_key: "OAUTH_CLIENT_ID"/oauth_key: "'$OAUTH_KEY'"/g' $workdir/config/settings.yml
4242

4343
#### Setup env vars for memcached server
44-
sed -i -e 's/memcache_servers: \[\]/memcache_servers: "'$OPENSTREETMAP_memcache_servers'"/g' $workdir/config/settings-local.yml
44+
sed -i -e 's/memcache_servers: \[\]/memcache_servers: "'$OPENSTREETMAP_memcache_servers'"/g' $workdir/config/settings.local.yml
4545

4646
## SET NOMINATIM URL
47-
sed -i -e 's/nominatim.openhistoricalmap.org/'$NOMINATIM_URL'/g' $workdir/config/settings-local.yml
47+
sed -i -e 's/nominatim.openhistoricalmap.org/'$NOMINATIM_URL'/g' $workdir/config/settings.local.yml
4848

4949
## SET OVERPASS URL
50-
sed -i -e 's/overpass-api.de/'$OVERPASS_URL'/g' $workdir/config/settings-local.yml
50+
sed -i -e 's/overpass-api.de/'$OVERPASS_URL'/g' $workdir/config/settings.local.yml
5151
sed -i -e 's/overpass-api.de/'$OVERPASS_URL'/g' $workdir/app/views/site/export.html.erb
5252
sed -i -e 's/overpass-api.de/'$OVERPASS_URL'/g' $workdir/app/assets/javascripts/index/export.js
5353

5454
# ADD DOORKEEPER_SIGNING_KEY
5555
openssl genpkey -algorithm RSA -out private.pem
5656
chmod 400 /var/www/private.pem
5757
export DOORKEEPER_SIGNING_KEY=$(cat /var/www/private.pem | sed -e '1d;$d' | tr -d '\n')
58-
sed -i "s#PRIVATE_KEY#${DOORKEEPER_SIGNING_KEY}#" $workdir/config/settings-local.yml
58+
sed -i "s#PRIVATE_KEY#${DOORKEEPER_SIGNING_KEY}#" $workdir/config/settings.local.yml
5959

6060
#### CHECK IF DB IS ALREADY UP AND START THE APP
6161
flag=true
@@ -68,7 +68,7 @@ while "$flag" = true; do
6868
sleep 2
6969
done &
7070

71-
# Enable assets:precompile, to take lates changes for assets in $workdir/config/settings-local.yml.
71+
# Enable assets:precompile, to take lates changes for assets in $workdir/config/settings.local.yml.
7272
time bundle exec rake i18n:js:export assets:precompile
7373

7474
bundle exec rails db:migrate

values.staging.template.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ osm-seed:
120120
NEW_RELIC_LICENSE_KEY: {{STAGING_NEW_RELIC_LICENSE_KEY}}
121121
NEW_RELIC_APP_NAME: {{STAGING_NEW_RELIC_APP_NAME}}
122122
ORGANIZATION_NAME: OpenHistoricalMap
123-
WEBSITE_STATUS: "api_readonly"
123+
WEBSITE_STATUS: "online"
124124
resources:
125125
enabled: false
126126
requests:

0 commit comments

Comments
 (0)