stack_car 0.8.0 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +5 -5
  2. data/.gitlab-ci.yml +17 -12
  3. data/README.md +122 -1
  4. data/lib/stack_car/cli.rb +253 -41
  5. data/lib/stack_car/dot_rc.rb +25 -0
  6. data/lib/stack_car/version.rb +1 -1
  7. data/lib/stack_car.rb +1 -0
  8. data/stack_car.gemspec +2 -0
  9. data/templates/.dockerignore.erb +2 -2
  10. data/templates/.env.development.erb +2 -0
  11. data/templates/.env.erb +29 -16
  12. data/templates/.gitlab/issue_templates/Bug.md +46 -0
  13. data/templates/.gitlab/issue_templates/Feature.md +41 -0
  14. data/templates/.gitlab/issue_templates/Question.md +18 -0
  15. data/templates/.gitlab/merge_request_templates/Bug.md +36 -0
  16. data/templates/.gitlab/merge_request_templates/Feature.md +36 -0
  17. data/templates/.gitlab-ci.yml.erb +98 -65
  18. data/templates/.sops.yaml.erb +3 -0
  19. data/templates/Dockerfile.erb +26 -7
  20. data/templates/README.md +81 -7
  21. data/templates/chart/.gitignore +3 -0
  22. data/templates/chart/.helmignore +23 -0
  23. data/templates/chart/Chart.yaml.tt +30 -0
  24. data/templates/chart/README.md +223 -0
  25. data/templates/chart/bin/check_sidekiq.rb +0 -0
  26. data/templates/chart/bin/decrypt +17 -0
  27. data/templates/chart/bin/deploy +14 -0
  28. data/templates/chart/bin/encrypt +15 -0
  29. data/templates/chart/bin/remove +15 -0
  30. data/templates/chart/sample-values.yaml.tt +153 -0
  31. data/templates/chart/templates/_helpers.tpl.tt +85 -0
  32. data/templates/chart/templates/rails-env-cm.yaml.tt +47 -0
  33. data/templates/chart/templates/rails-env-secret.yaml +10 -0
  34. data/templates/chart/templates/rails-pvc-shared.yml +20 -0
  35. data/templates/chart/templates/setup-job.yaml +73 -0
  36. data/templates/chart/templates/web-deploy.yaml +67 -0
  37. data/templates/chart/templates/web-ing-wildcard.yaml +20 -0
  38. data/templates/chart/templates/web-ing.yaml +20 -0
  39. data/templates/chart/templates/web-svc.yaml +20 -0
  40. data/templates/chart-fcrepo/fcrepo-deploy.yaml +63 -0
  41. data/templates/chart-fcrepo/fcrepo-env-cm.yaml +8 -0
  42. data/templates/chart-fcrepo/fcrepo-env-secret.yaml.tt +10 -0
  43. data/templates/chart-fcrepo/fcrepo-pvc.yaml +20 -0
  44. data/templates/chart-fcrepo/fcrepo-svc.yaml +19 -0
  45. data/templates/chart-sidekiq/sidekiq-deploy.yaml +80 -0
  46. data/templates/database.yml.erb +10 -11
  47. data/templates/decrypt-secrets +22 -0
  48. data/templates/development.rb.erb +90 -0
  49. data/templates/docker-compose.yml.erb +52 -18
  50. data/templates/encrypt-secrets +19 -0
  51. data/templates/env.conf.erb +11 -11
  52. data/templates/nginx.sh.erb +17 -0
  53. data/templates/production.rb.erb +117 -0
  54. metadata +71 -12
  55. data/templates/Dockerfile.base.erb +0 -48
  56. data/templates/Dockerfile.builder.erb +0 -13
  57. data/templates/docker-compose.ci.yml.erb +0 -87
  58. data/templates/docker-compose.production.yml.erb +0 -26
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # require 'byebug'
4
+
5
+ parent_dir = File.dirname(__dir__)
6
+ [
7
+ ".env.*",
8
+ "chart/*-values.yaml",
9
+ "ops/kube_config.yml",
10
+ "ops/.backend",
11
+ "ops/k8s/*-values.yaml"
12
+ ].each do |files|
13
+ Dir.glob(files).each do |file|
14
+ next if /enc/.match?(file)
15
+ cmd = "sops --encrypt #{file} > #{file}.enc"
16
+ puts cmd
17
+ `#{cmd}`
18
+ end
19
+ end
@@ -1,18 +1,18 @@
1
1
  <% if options[:postgres] -%>
2
- env DB_ADAPTER;
3
- env POSTGRES_DB;
4
- env POSTGRES_USER;
5
- env POSTGRES_PASSWORD;
6
- env POSTGRES_HOST;
2
+ env DATABASE_ADAPTER;
3
+ env DATABASE_NAME;
4
+ env DATABASE_USER;
5
+ env DATABASE_PASSWORD;
6
+ env DATABASE_HOST;
7
7
  env TEST_DB;
8
8
  <% end -%>
9
9
  <% if options[:mysql] -%>
10
- env DB_ADAPTER;
11
- env MYSQL_DATABASE;
12
- env MYSQL_USER;
13
- env MYSQL_PASSWORD;
14
- env MYSQL_ROOT_PASSWORD;
15
- env MYSQL_HOST;
10
+ env DATABASE_ADAPTER;
11
+ env DATABASE_NAME;
12
+ env DATABASE_USER;
13
+ env DATABASE_PASSWORD;
14
+ env DATABASE_ROOT_PASSWORD;
15
+ env DATABASE_HOST;
16
16
  env TEST_DB;
17
17
  <% end -%>
18
18
  <% if options[:deploy] || options[:rancher] -%>
@@ -12,9 +12,26 @@ then
12
12
  export PASSENGER_APP_ENV=development
13
13
  fi
14
14
 
15
+ rm -rf /home/app/webapp/.ruby*
16
+
17
+ declare -p | grep -Ev 'BASHOPTS|PWD|BASH_VERSINFO|EUID|PPID|SHELLOPTS|UID' > /container.env
18
+
19
+ if [[ $PASSENGER_APP_ENV == "development" ]] || [[ $PASSENGER_APP_ENV == "test" ]]
20
+ then
21
+ /sbin/setuser app /bin/bash -l -c 'cd /home/app/webapp && bundle exec rails db:create db:migrate db:test:prepare'
22
+ fi
23
+
15
24
  if [[ $PASSENGER_APP_ENV == "production" ]] || [[ $PASSENGER_APP_ENV == "staging" ]]
16
25
  then
26
+ /bin/bash -l -c 'chown -R app:app /home/app/webapp/tmp' # mounted volume may have wrong permissions
27
+ /bin/bash -l -c 'chown -R app:app /home/app/webapp/public' # mounted volume may have wrong permissions
17
28
  /sbin/setuser app /bin/bash -l -c 'cd /home/app/webapp && bundle exec rake db:migrate'
29
+ if [ -d /home/app/webapp/public/assets-new ]; then
30
+ /sbin/setuser app /bin/bash -l -c 'cd /home/app/webapp && rsync -a public/assets-new/ public/assets/'
31
+ fi
32
+ if [ -d /home/app/webapp/public/packs-new ]; then
33
+ /sbin/setuser app /bin/bash -l -c 'cd /home/app/webapp && rsync -a public/packs-new/ public/packs/'
34
+ fi
18
35
  fi
19
36
 
20
37
  exec /usr/sbin/nginx
@@ -0,0 +1,117 @@
1
+ Rails.application.configure do
2
+ # Settings specified here will take precedence over those in config/application.rb.
3
+
4
+ # Code is not reloaded between requests.
5
+ config.cache_classes = true
6
+
7
+ # Eager load code on boot. This eager loads most of Rails and
8
+ # your application in memory, allowing both threaded web servers
9
+ # and those relying on copy on write to perform better.
10
+ # Rake tasks automatically ignore this option for performance.
11
+ config.eager_load = true
12
+
13
+ # Full error reports are disabled and caching is turned on.
14
+ config.consider_all_requests_local = false
15
+ config.action_controller.perform_caching = true
16
+
17
+ # Disable serving static files from the `/public` folder by default since
18
+ # Apache or NGINX already handles this.
19
+ config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
20
+ config.public_file_server.headers = {
21
+ 'Cache-Control' => 'public, s-maxage=31536000, maxage=15552000',
22
+ 'Expires' => "#{1.year.from_now.to_formatted_s(:rfc822)}"
23
+ }
24
+ # Compress JavaScripts and CSS.
25
+ config.assets.js_compressor = Uglifier.new(harmony: true)
26
+ # config.assets.css_compressor = :sass
27
+
28
+ # Do not fallback to assets pipeline if a precompiled asset is missed.
29
+ config.assets.compile = false
30
+
31
+ # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
32
+
33
+ # Enable serving of images, stylesheets, and JavaScripts from an asset server.
34
+ config.action_controller.asset_host = Settings.action_controller.asset_host if Settings.action_controller.asset_host
35
+
36
+ # Specifies the header that your server uses for sending files.
37
+ # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
38
+ # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
39
+
40
+ # Mount Action Cable outside main process or domain
41
+ # config.action_cable.mount_path = nil
42
+ # config.action_cable.url = 'wss://example.com/cable'
43
+ # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ]
44
+
45
+ # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
46
+ # config.force_ssl = true
47
+
48
+ # Use the lowest log level to ensure availability of diagnostic information
49
+ # when problems arise.
50
+ config.log_level = :debug
51
+
52
+ # Prepend all log lines with the following tags.
53
+ config.log_tags = [ :request_id ]
54
+
55
+ # Use a different cache store in production.
56
+ # config.cache_store = :mem_cache_store
57
+
58
+ # Use a real queuing backend for Active Job (and separate queues per environment)
59
+ require 'active_job/queue_adapters/better_active_elastic_job_adapter'
60
+ config.active_job.queue_adapter = Settings.active_job.queue_adapter
61
+ # config.active_job.queue_name_prefix = "hyku_#{Rails.env}"
62
+
63
+ # SMTP Mailer configuration
64
+ # Add SMTP settings to your environment and uncomment the following section to enable mailer
65
+ # if ENV['SMTP_ENABLED'].present? && ENV['SMTP_ENABLED'].to_s == 'true'
66
+ # config.action_mailer.smtp_settings = {
67
+ # user_name: ENV['SMTP_USER_NAME'],
68
+ # password: ENV['SMTP_PASSWORD'],
69
+ # address: ENV['SMTP_ADDRESS'],
70
+ # domain: ENV['SMTP_DOMAIN'],
71
+ # port: ENV['SMTP_PORT'],
72
+ # enable_starttls_auto: true,
73
+ # authentication: ENV['SMTP_TYPE']
74
+ # }
75
+ # # ActionMailer Config
76
+ # config.action_mailer.delivery_method = :smtp
77
+ # config.action_mailer.perform_deliveries = true
78
+ # config.action_mailer.raise_delivery_errors = false
79
+ <% if options[:hyku] %>
80
+ # config.action_mailer.asset_host = ENV['SETTINGS__MULTITENANCY__ADMIN_HOST']
81
+ <% end %>
82
+ # else
83
+ # config.action_mailer.delivery_method = :test
84
+ # end
85
+
86
+ config.action_mailer.perform_caching = false
87
+
88
+ # Ignore bad email addresses and do not raise email delivery errors.
89
+ # Set this to true and configure the email server for immediate delivery to raise delivery errors.
90
+ # config.action_mailer.raise_delivery_errors = false
91
+ #
92
+ config.action_mailer.default_url_options = { protocol: Settings.ssl_configured ? 'https' : 'http' }
93
+
94
+ # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
95
+ # the I18n.default_locale when a translation cannot be found).
96
+ config.i18n.fallbacks = true
97
+
98
+ # Send deprecation notices to registered listeners.
99
+ config.active_support.deprecation = :notify
100
+
101
+ # Use default logging formatter so that PID and timestamp are not suppressed.
102
+ config.log_formatter = ::Logger::Formatter.new
103
+
104
+ # Use a different logger for distributed setups.
105
+ # require 'syslog/logger'
106
+ # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
107
+
108
+ if ENV["RAILS_LOG_TO_STDOUT"].present?
109
+ logger = ActiveSupport::Logger.new(STDOUT)
110
+ logger.formatter = config.log_formatter
111
+ config.logger = ActiveSupport::TaggedLogging.new(logger)
112
+ end
113
+
114
+ # Do not dump schema after migrations.
115
+ config.active_record.dump_schema_after_migration = false
116
+ end
117
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stack_car
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Kaufman
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-08-16 00:00:00.000000000 Z
11
+ date: 2021-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: byebug
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -108,6 +122,20 @@ dependencies:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
124
  version: '2.2'
125
+ - !ruby/object:Gem::Dependency
126
+ name: json
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '2.3'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '2.3'
111
139
  - !ruby/object:Gem::Dependency
112
140
  name: thor
113
141
  requirement: !ruby/object:Gem::Requirement
@@ -122,7 +150,7 @@ dependencies:
122
150
  - - "~>"
123
151
  - !ruby/object:Gem::Version
124
152
  version: '0.19'
125
- description:
153
+ description:
126
154
  email:
127
155
  - rob@notch8.com
128
156
  executables:
@@ -144,6 +172,7 @@ files:
144
172
  - exe/stack_car
145
173
  - lib/stack_car.rb
146
174
  - lib/stack_car/cli.rb
175
+ - lib/stack_car/dot_rc.rb
147
176
  - lib/stack_car/version.rb
148
177
  - logo.jpg
149
178
  - public/.gitkeep
@@ -154,15 +183,45 @@ files:
154
183
  - templates/.env.development.erb
155
184
  - templates/.env.erb
156
185
  - templates/.gitlab-ci.yml.erb
157
- - templates/Dockerfile.base.erb
158
- - templates/Dockerfile.builder.erb
186
+ - templates/.gitlab/issue_templates/Bug.md
187
+ - templates/.gitlab/issue_templates/Feature.md
188
+ - templates/.gitlab/issue_templates/Question.md
189
+ - templates/.gitlab/merge_request_templates/Bug.md
190
+ - templates/.gitlab/merge_request_templates/Feature.md
191
+ - templates/.sops.yaml.erb
159
192
  - templates/Dockerfile.erb
160
193
  - templates/README.md
194
+ - templates/chart-fcrepo/fcrepo-deploy.yaml
195
+ - templates/chart-fcrepo/fcrepo-env-cm.yaml
196
+ - templates/chart-fcrepo/fcrepo-env-secret.yaml.tt
197
+ - templates/chart-fcrepo/fcrepo-pvc.yaml
198
+ - templates/chart-fcrepo/fcrepo-svc.yaml
199
+ - templates/chart-sidekiq/sidekiq-deploy.yaml
200
+ - templates/chart/.gitignore
201
+ - templates/chart/.helmignore
202
+ - templates/chart/Chart.yaml.tt
203
+ - templates/chart/README.md
204
+ - templates/chart/bin/check_sidekiq.rb
205
+ - templates/chart/bin/decrypt
206
+ - templates/chart/bin/deploy
207
+ - templates/chart/bin/encrypt
208
+ - templates/chart/bin/remove
209
+ - templates/chart/sample-values.yaml.tt
210
+ - templates/chart/templates/_helpers.tpl.tt
211
+ - templates/chart/templates/rails-env-cm.yaml.tt
212
+ - templates/chart/templates/rails-env-secret.yaml
213
+ - templates/chart/templates/rails-pvc-shared.yml
214
+ - templates/chart/templates/setup-job.yaml
215
+ - templates/chart/templates/web-deploy.yaml
216
+ - templates/chart/templates/web-ing-wildcard.yaml
217
+ - templates/chart/templates/web-ing.yaml
218
+ - templates/chart/templates/web-svc.yaml
161
219
  - templates/database.yml.erb
220
+ - templates/decrypt-secrets
162
221
  - templates/deploy.yml.erb
163
- - templates/docker-compose.ci.yml.erb
164
- - templates/docker-compose.production.yml.erb
222
+ - templates/development.rb.erb
165
223
  - templates/docker-compose.yml.erb
224
+ - templates/encrypt-secrets
166
225
  - templates/env.conf.erb
167
226
  - templates/hosts.erb
168
227
  - templates/nginx.sh.erb
@@ -182,13 +241,14 @@ files:
182
241
  - templates/ops/roles/docker.ubuntu/templates/docker.conf
183
242
  - templates/ops/roles/docker.ubuntu/tests/vagrant.yml
184
243
  - templates/ops/roles/docker.ubuntu/vars/main.yml
244
+ - templates/production.rb.erb
185
245
  - templates/provision.yml.erb
186
246
  - templates/webapp.conf.erb
187
247
  - templates/worker.sh.erb
188
248
  homepage: https://gitlab.com/notch8/stack_car
189
249
  licenses: []
190
250
  metadata: {}
191
- post_install_message:
251
+ post_install_message:
192
252
  rdoc_options: []
193
253
  require_paths:
194
254
  - lib
@@ -203,9 +263,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
203
263
  - !ruby/object:Gem::Version
204
264
  version: '0'
205
265
  requirements: []
206
- rubyforge_project:
207
- rubygems_version: 2.6.12
208
- signing_key:
266
+ rubygems_version: 3.0.6
267
+ signing_key:
209
268
  specification_version: 4
210
269
  summary: A tool to make rails + docker easy
211
270
  test_files: []
@@ -1,48 +0,0 @@
1
- FROM phusion/passenger-ruby23:0.9.28
2
-
3
- RUN <%= pre_apt_string %> && \
4
- curl -sL https://deb.nodesource.com/setup_8.x | bash - && \
5
- apt-get update -qq && \
6
- apt-get install -y build-essential nodejs pv tzdata libsasl2-dev <%= apt_packages_string %> && \
7
- apt-get clean && \
8
- rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
9
- <%= post_apt_string %>
10
-
11
- <% if options[:fcrepo] %>
12
- RUN mkdir -p /opt/fits && \
13
- curl -fSL -o /opt/fits-0.8.5.zip http://projects.iq.harvard.edu/files/fits/files/fits-0.8.5.zip && \
14
- cd /opt && \
15
- unzip fits-0.8.5.zip && \
16
- chmod +x fits-0.8.5/fits.sh
17
-
18
- <% end -%>
19
-
20
- RUN rm /etc/nginx/sites-enabled/default
21
-
22
- ENV APP_HOME /home/app/webapp
23
- RUN mkdir $APP_HOME
24
- WORKDIR $APP_HOME
25
-
26
- ENV BUNDLE_GEMFILE=$APP_HOME/Gemfile \
27
- BUNDLE_JOBS=4
28
-
29
- ADD Gemfile* $APP_HOME/
30
- RUN bundle check || bundle install
31
-
32
- <% if options[:delayed_job] || options[:sidekiq] %>
33
- RUN touch /var/log/worker.log && chmod 666 /var/log/worker.log
34
- RUN mkdir /etc/service/worker
35
- ADD ops/worker.sh /etc/service/worker/run
36
- RUN chmod +x /etc/service/worker/run
37
- <% end %>
38
-
39
- ADD . $APP_HOME
40
- RUN chown -R app $APP_HOME
41
-
42
- # this is so that these items are cached and only have to be updated
43
- RUN /sbin/setuser app /bin/bash -l -c 'cd /home/app/webapp && DB_ADAPTER=nulldb bundle exec rake assets:precompile'
44
- # Asset complie and migrate if prod, otherwise just start nginx
45
- ADD ops/nginx.sh /etc/service/nginx/run
46
- RUN chmod +x /etc/service/nginx/run
47
- RUN rm -f /etc/service/nginx/down
48
-
@@ -1,13 +0,0 @@
1
- FROM docker:latest
2
-
3
- RUN apk update && \
4
- apk add bash git ruby-json ansible openssh && \
5
- gem install stack_car --no-ri --no-rdoc && \
6
- <% if options[:rancher] %>
7
- wget https://github.com/rancher/cli/releases/download/v0.4.1/rancher-linux-amd64-v0.4.1.tar.gz && \
8
- tar zxfv rancher-linux-amd64-v0.4.1.tar.gz && \
9
- mv rancher-v0.4.1/rancher /bin/rancher
10
- <% end %>
11
- <% if options[:heroku] %>
12
- gem install dpl multi_json --no-ri --no-rdoc
13
- <% end %>
@@ -1,87 +0,0 @@
1
- version: '2.1'
2
- services:
3
- <% if options[:postgres] -%>
4
- postgres:
5
- image: postgres
6
- env_file:
7
- - .env
8
- ports:
9
- - "5432"
10
- <% end -%>
11
- <% if options[:mysql] -%>
12
- mysql:
13
- image: mysql
14
- env_file:
15
- - .env
16
- ports:
17
- - '3306'
18
- <% end -%>
19
- <% if options[:elasticsearch] -%>
20
- elasticsearch:
21
- image: elasticsearch:1.7.1
22
- env_file:
23
- - .env
24
- ports:
25
- - "9200"
26
- - "9300"
27
- <% end -%>
28
- <% if options[:solr] %>
29
- solr:
30
- image: solr:latest
31
- env_file:
32
- - .env
33
- ports:
34
- - "8983"
35
- entrypoint:
36
- - docker-entrypoint.sh
37
- - solr-precreate
38
- - mycore
39
- # docker-compose exec --user=solr solr bin/solr create_core -c CORENAME
40
- <% end -%>
41
- <% if options[:redis] -%>
42
- redis:
43
- image: 'redis:3.2-alpine'
44
- env_file:
45
- - .env
46
- command: redis-server
47
- ports:
48
- - '6379'
49
- <% end -%>
50
- <% if options[:mongodb] -%>
51
- mongodb:
52
- image: mongo:2.6.12
53
- env_file:
54
- - .env
55
- ports:
56
- - "27017"
57
- <% end -%>
58
- <% if options[:memcached] -%>
59
- memcached:
60
- image: memcached
61
- env_file:
62
- - .env
63
- ports:
64
- - "11211"
65
- <% end -%>
66
- <% if options[:fcrepo] -%>
67
- fcrepo:
68
- image: botimer/fcrepo:4.5.1
69
- env_file:
70
- - .env
71
- volumes:
72
- - 'fcrepo:/opt/data'
73
- ports:
74
- - "8080"
75
- <% end -%>
76
- web:
77
- image: "${REGISTRY_HOST}${REGISTRY_URI}:${TAG:-master}"
78
- env_file:
79
- - .env
80
- rap.host: ${SITE_URI}
81
- rap.le_host: ${SITE_URI}
82
- rap.le_test: true
83
- io.rancher.container.pull_image: always
84
- ports:
85
- - "80"
86
- depends_on:
87
- <%= compose_depends %>