@@ -345,6 +345,7 @@ lazy val glanceEval = soarCrossProject("glance-eval", CrossType.Full)
345
345
.settings(sjsCrossVersionPatch:_* )
346
346
.enablePlugins(SbtWeb )
347
347
.enablePlugins(WorkbenchPlugin )
348
+ .enablePlugins(DockerPlugin )
348
349
349
350
lazy val glanceEvalJS = glanceEval.js
350
351
.dependsOn(coreJS, glanceCoreJS)
@@ -365,14 +366,35 @@ lazy val glanceEvalJS = glanceEval.js
365
366
" org.webjars" % " chartjs" % " 2.1.3" / " Chart.js" minified " Chart.min.js" ,
366
367
ProvidedJS / " react-sortable-hoc.js" minified " react-sortable-hoc.min.js" dependsOn(" react-with-addons.js" , " react-dom.js" )
367
368
),
368
- scalaJSUseMainModuleInitializer := true )
369
+ scalaJSUseMainModuleInitializer := true ,
370
+ dockerfile in docker := {
371
+ val app = (fullOptJS in Compile ).value.data
372
+ val appTarget = " /nginx/share/nginx/html"
373
+
374
+ new Dockerfile {
375
+ from(" nginx" )
376
+ copy(app, appTarget)
377
+ }
378
+ }
379
+ )
369
380
370
381
371
382
lazy val glanceEvalJVM = glanceEval.jvm
372
383
.dependsOn(coreJVM, glanceCoreJVM, server)
373
384
.settings(
374
385
(resources in Compile ) += (fastOptJS in (glanceEvalJS, Compile )).value.data,
375
- mainClass in Compile := Some (" uk.ac.ncl.la.soar.glance.eval.server.Main" ))
386
+ mainClass in Compile := Some (" uk.ac.ncl.la.soar.glance.eval.server.Main" ),
387
+ dockerfile in docker := {
388
+ val fatJar : File = assembly.value
389
+ val jarTarget = s " /app/ ${fatJar.name}"
390
+
391
+ new Dockerfile {
392
+ from(" java" )
393
+ add(fatJar, jarTarget)
394
+ entryPoint(" java" , " -Xms512M -Xmx2G -jar" , jarTarget)
395
+ expose(8080 )
396
+ }
397
+ })
376
398
.settings(commonBackendDeps:_* )
377
399
.settings(flywaySettings(" glance_eval" ):_* )
378
400
.settings(commonAssembly(" uk.ac.ncl.la.soar.glance.eval.server.Main" , " soar-glance-eval.jar" ))
0 commit comments