diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index 375a0f34a4b52cf0f35b57f886f800b2a5d00b8a..6421ad2ce6d3be6798229c6b872ee892243b6fa3 100755
--- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,13 +2,12 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
 
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
   lazy val httpInterface = Try(config.getString("http.interface")).getOrElse("")
diff --git a/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index d1159ad76ac350049574d5e4b68e2753c228cd83..c9c776a410d714d2e28627a173e97a075500050e 100755
--- a/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,18 +2,17 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
- 
+
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val eslHost = Try(Properties.envOrElse("ESL_HOST", config.getString("freeswitch.esl.host"))).getOrElse("127.0.0.1")
+  lazy val eslHost = Try(config.getString("freeswitch.esl.host")).getOrElse("127.0.0.1")
   lazy val eslPort = Try(config.getInt("freeswitch.esl.port")).getOrElse(8021)
   lazy val eslPassword = Try(config.getString("freeswitch.esl.password")).getOrElse("ClueCon")
   lazy val fsProfile = Try(config.getString("freeswitch.conf.profile")).getOrElse("cdquality")
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/akka-bbb-transcode/Dockerfile b/akka-bbb-transcode/Dockerfile
deleted file mode 100644
index 96225399a7208e525d39e89dcb61901f2c5c5b78..0000000000000000000000000000000000000000
--- a/akka-bbb-transcode/Dockerfile
+++ /dev/null
@@ -1,26 +0,0 @@
-FROM bbb-common-message AS builder
-
-ARG COMMON_VERSION=0.0.1-SNAPSHOT
-
-COPY . /source
-
-RUN cd /source \
- && find -name build.sbt -exec sed -i "s|\(.*org.bigbluebutton.*bbb-common-message[^\"]*\"[ ]*%[ ]*\)\"[^\"]*\"\(.*\)|\1\"$COMMON_VERSION\"\2|g" {} \; \
- && sbt compile
-
-RUN apt-get update \
- && apt-get -y install fakeroot
-
-RUN cd /source \
- && sbt debian:packageBin
-
-# FROM ubuntu:16.04
-FROM openjdk:8-jre-slim-stretch
-
-COPY --from=builder /source/target/*.deb /root/
-
-RUN dpkg -i /root/*.deb \
- && apt-get update \
- && apt-get -y install ffmpeg
-
-CMD ["/usr/share/bbb-transcode-akka/bin/bbb-transcode-akka"]
diff --git a/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index bd39f3f7ef8d3b93fad7add7eeff8acda79b1f93..47eda79c6466655e2d13a1391968c19a169a507e 100644
--- a/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,13 +2,12 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
 
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
index 016b9557a3d9523521d72808fba754b2ad66cd37..0eb67da98170ac2b5304922e745ffcd835351719 100755
--- a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
+++ b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
@@ -1,14 +1,13 @@
 package org.bigbluebutton.api2
 
 import com.typesafe.config.ConfigFactory
-import scala.util.Properties
 
 import scala.util.Try
 
 trait SystemConfiguration {
-  val config = ConfigFactory.load()
+  val config = ConfigFactory.load("bbb-web")
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/bbb-lti/Dockerfile b/bbb-lti/Dockerfile
index 132e1c75d7a09dcfddc2ece248fd4d35ed4ef909..4503f2d172e525085026332f16b97e38b46f4a2c 100644
--- a/bbb-lti/Dockerfile
+++ b/bbb-lti/Dockerfile
@@ -47,7 +47,6 @@ COPY --from=builder /source/target/lti-*.war webapps/lti.war
 RUN unzip -q webapps/lti.war -d webapps/lti \
  && rm webapps/lti.war
 
-COPY entrypoint.sh .
-
-CMD ["./entrypoint.sh"]
+COPY docker-entrypoint.sh /usr/local/bin/
 
+CMD ["docker-entrypoint.sh"]
diff --git a/bbb-lti/entrypoint.sh b/bbb-lti/docker-entrypoint.sh
similarity index 100%
rename from bbb-lti/entrypoint.sh
rename to bbb-lti/docker-entrypoint.sh
diff --git a/bbb-lti/grails-app/i18n/messages.properties b/bbb-lti/grails-app/i18n/messages.properties
index dbf3ab604fd02c8dd8f49ea52b413b84f7fc0a91..4b708fbecba231e618ff510beff21645a3ccdddd 100644
--- a/bbb-lti/grails-app/i18n/messages.properties
+++ b/bbb-lti/grails-app/i18n/messages.properties
@@ -19,12 +19,12 @@
 # The welcome.header can be static, however if you want the name of the activity (meeting) to be injected use {0} as part of the text
 # {1} can be used to inject the name of the course
 bigbluebutton.welcome.header=Welcome to <b>{0}</b>!
-bigbluebutton.welcome.footer=To join the audio bridge click the headset icon (upper-left hand corner). <b>Please use a headset to avoid causing noise for others.
+bigbluebutton.welcome.footer=To understand how BigBlueButton works see our <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>tutorial videos</u></a>.<br><br>To join the audio bridge click the headset icon (upper-left hand corner). <b>Please use a headset to avoid causing noise for others.
 bigbluebutton.welcome.record=This meeting is being recorded
 bigbluebutton.welcome.duration=The maximum duration for this meeting is {0} minutes
 
-tool.view.app=Mconf
-tool.view.title=Mconf LTI Interface
+tool.view.app=BigBlueButton
+tool.view.title=BigBlueButton LTI Interface
 tool.view.join=Join Meeting
 tool.view.recording=Recording
 tool.view.recording.format.presentation=presentation
diff --git a/bbb-lti/grails-app/i18n/messages_es.properties b/bbb-lti/grails-app/i18n/messages_es.properties
index 0d47b069eed58a9f635f6a381eb064ea623d71e8..2513f516b2906e9dec726a59a4225b176dd32311 100644
--- a/bbb-lti/grails-app/i18n/messages_es.properties
+++ b/bbb-lti/grails-app/i18n/messages_es.properties
@@ -17,12 +17,12 @@
 #
 
 bigbluebutton.welcome.header=Bienvenido a <b>{0}</b>!
-bigbluebutton.welcome.footer=Para activar el audio haga click en el icono de auricular (equina superior izquierda). <b>Por favor utilice auricular para evitar causar ruido.
+bigbluebutton.welcome.footer=Para entender como funciona BigBlueButton consulte estos <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>videos tutoriales</u></a>.<br><br>Para activar el audio haga click en el icono de auricular (equina superior izquierda). <b>Por favor utilice auricular para evitar causar ruido.
 bigbluebutton.welcome.record=Esta sesi&#243;n esta siendo grabada
 bigbluebutton.welcome.duration=La duraci&#243;n maxima para esta sesi&#243;n es de {0} minutos
 
-tool.view.app=Mconf
-tool.view.title=Interface LTI para Mconf
+tool.view.app=BigBlueButton
+tool.view.title=Interface LTI para BigBlueButton
 tool.view.join=Ingresar a la sesi&#243;n
 tool.view.recording=Grabaci&#243;n
 tool.view.recording.format.presentation=presentaci&#243;n
diff --git a/bbb-lti/grails-app/i18n/messages_fr.properties b/bbb-lti/grails-app/i18n/messages_fr.properties
index 3c38fb490b684a6fb3f0f2322b086fae052749dc..a25b69bf01283a26867cecec4706e18ef265e11a 100644
--- a/bbb-lti/grails-app/i18n/messages_fr.properties
+++ b/bbb-lti/grails-app/i18n/messages_fr.properties
@@ -17,10 +17,10 @@
 #
 
 bigbluebutton.welcome.header=<br>Bienvenue au <b>{0}</b>!<br>
-bigbluebutton.welcome.footer=<br>Pour activer l'audio cliquez sur l'ic&#244;ne du casque &#224; &#233;couteurs (coin sup&#233;rieur gauche). <b>S'il vous pla�t utiliser le casque pour &#233;viter de causer du bruit.</b>
+bigbluebutton.welcome.footer=<br>Pour comprendre comment fonctionne BigBlueButton, consultez les <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>didacticiels vid&#233;o</u></a>.<br><br>Pour activer l'audio cliquez sur l'ic&#244;ne du casque &#224; &#233;couteurs (coin sup&#233;rieur gauche). <b>S'il vous pla�t utiliser le casque pour &#233;viter de causer du bruit.</b>
 
-tool.view.app=Mconf
-tool.view.title=LTI Interface pour Mconf
+tool.view.app=BigBlueButton
+tool.view.title=LTI Interface pour BigBlueButton
 tool.view.join=Saisie de la r&#233;union
 tool.view.recording=Enregistrement
 tool.view.recording.format.presentation=presentation
diff --git a/bbb-lti/grails-app/i18n/messages_pt.properties b/bbb-lti/grails-app/i18n/messages_pt.properties
deleted file mode 100644
index d39a3650fa8cad15f357eee9dbf964720a312957..0000000000000000000000000000000000000000
--- a/bbb-lti/grails-app/i18n/messages_pt.properties
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
-#
-# Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
-#
-# This program is free software; you can redistribute it and/or modify it under the
-# terms of the GNU Lesser General Public License as published by the Free Software
-# Foundation; either version 3.0 of the License, or (at your option) any later
-# version.
-#
-# BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License along
-# with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
-#
-
-# The welcome.header can be static, however if you want the name of the activity (meeting) to be injected use {0} as part of the text
-# {1} can be used to inject the name of the course
-bigbluebutton.welcome.header=Bem-vindo &#224; sala <b>{0}</b>!
-bigbluebutton.welcome.footer=Para habilitar o &#225;udio, clique no bot&#227;o do headset (no canto superior esquerdo). <b>Para uma melhor experi&#234;ncia, utilize sempre que poss&#237;vel um headset e conecte na rede cabeada.
-bigbluebutton.welcome.record=Esta sess&#227;o est&#225; sendo gravada
-bigbluebutton.welcome.duration=A dura&#231;&#227;o m&#225;xima desta sess&#227;o &#233; de {0} minutos
-
-tool.view.app=Mconf
-tool.view.title=Interface LTI do Mconf
-tool.view.join=Entrar na sala
-tool.view.recording=Grava&#231;&#227;o
-tool.view.recording.format.presentation=apresenta&#231;&#227;o
-tool.view.recording.format.video=v&#237;deo
-tool.view.recording.delete.confirmation=Voc&#234; tem certeza que deseja remover permanentemente esta grava&#231;&#227;o?
-tool.view.recording.delete.confirmation.warning=Aviso
-tool.view.recording.delete.confirmation.yes=Sim
-tool.view.recording.delete.confirmation.no=N&#227;o
-tool.view.recording.publish=Publicar
-tool.view.recording.unpublish=Despublicar
-tool.view.recording.delete=Remover
-tool.view.activity=Atividade
-tool.view.description=Descri&#231;&#227;o
-tool.view.preview=Preview
-tool.view.date=Data
-tool.view.duration=Dura&#231;&#227;o
-tool.view.actions=A&#231;&#245;es
-tool.view.dateFormat=dd/mm/yyyy HH:mm:ss Z
-
-tool.error.general=Conex&#227;o n&#227;o pode ser estabelecida.
-
diff --git a/bbb-webhooks/application.js b/bbb-webhooks/application.js
index 12d9e74dd877bb41814a04e67da21e32200c1501..b6e9985b1254bf729a2d226204d680600ead0903 100644
--- a/bbb-webhooks/application.js
+++ b/bbb-webhooks/application.js
@@ -13,7 +13,7 @@ const async = require("async");
 module.exports = class Application {
 
   constructor() {
-    let options = {
+    const options = {
       host : process.env.REDIS_HOST || config.redis.host,
       port : process.env.REDIS_PORT || config.redis.port
     };
diff --git a/bbb-webhooks/test/test.js b/bbb-webhooks/test/test.js
index 460ce5af88938783b85bda4ca6021cab255f30e4..7239b9f16f3327383a2776591c735e1621bd7211 100644
--- a/bbb-webhooks/test/test.js
+++ b/bbb-webhooks/test/test.js
@@ -9,7 +9,7 @@ const Helpers = require('./helpers.js')
 const sinon = require('sinon');
 const winston = require('winston');
 
-const sharedSecret = process.env.SHARED_SECRET || sharedSecrett;
+const sharedSecret = process.env.SHARED_SECRET || sharedSecret;
 
 // Block winston from logging
 Logger.remove(winston.transports.Console);
@@ -40,7 +40,7 @@ describe('bbb-webhooks tests', () => {
 
   describe('GET /hooks/list permanent', () => {
     it('should list permanent hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.listUrl, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.listUrl, sharedSecret);
       getUrl = Helpers.listUrl + '?checksum=' + getUrl
 
       request(Helpers.url)
@@ -64,7 +64,7 @@ describe('bbb-webhooks tests', () => {
       Hook.removeSubscription(hooks[hooks.length-1].id, () => { done(); });
     });
     it('should create a hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl, sharedSecret);
       getUrl = Helpers.createUrl + '&checksum=' + getUrl
 
       request(Helpers.url)
@@ -89,7 +89,7 @@ describe('bbb-webhooks tests', () => {
     it('should destroy a hook', (done) => {
       const hooks = Hook.allGlobalSync();
       const hook = hooks[hooks.length-1].id;
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyUrl(hook), sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyUrl(hook), sharedSecret);
       getUrl = Helpers.destroyUrl(hook) + '&checksum=' + getUrl
 
       request(Helpers.url)
@@ -105,7 +105,7 @@ describe('bbb-webhooks tests', () => {
 
   describe('GET /hooks/destroy permanent hook', () => {
     it('should not destroy the permanent hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyPermanent, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyPermanent, sharedSecret);
       getUrl = Helpers.destroyPermanent + '&checksum=' + getUrl
       request(Helpers.url)
       .get(getUrl)
@@ -128,7 +128,7 @@ describe('bbb-webhooks tests', () => {
       Hook.removeSubscription(hooks[hooks.length-1].id, () => { done(); });
     });
     it('should create a hook with getRaw=true', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl + Helpers.createRaw, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl + Helpers.createRaw, sharedSecret);
       getUrl = Helpers.createUrl + '&checksum=' + getUrl + Helpers.createRaw
 
       request(Helpers.url)
diff --git a/bigbluebutton-web/grails-app/conf/Config.groovy b/bigbluebutton-web/grails-app/conf/Config.groovy
index d03d3eb93f95b6e2c9fdd9e8363947763b5f3199..230e3f8feb790666eb17745f327a5065cce133a6 100755
--- a/bigbluebutton-web/grails-app/conf/Config.groovy
+++ b/bigbluebutton-web/grails-app/conf/Config.groovy
@@ -132,5 +132,5 @@ log4j = {
 
     debug  'org.bigbluebutton',
            'grails.app.controllers',
-           'grails.app.services',
+           'grails.app.services'
 }
diff --git a/labs/docker/greenlight/db/production/production.sqlite3 b/labs/docker/greenlight/db/production/production.sqlite3
deleted file mode 100644
index 87e8ce3b4cf9ea1fbafb8613dbdb8384e11eaeb9..0000000000000000000000000000000000000000
Binary files a/labs/docker/greenlight/db/production/production.sqlite3 and /dev/null differ
diff --git a/labs/docker/greenlight/greenlight.env b/labs/docker/greenlight/greenlight.env
deleted file mode 100644
index 830bb1ddad041bbe0921f0e0581ec11f82cefcae..0000000000000000000000000000000000000000
--- a/labs/docker/greenlight/greenlight.env
+++ /dev/null
@@ -1,150 +0,0 @@
-# This is a sample of the environment variables you will need
-# To use, copy this file to .env `cp sample.env .env`
-
-# Create a secret key for rails
-#
-# You can generate a secure one through the Greenlight docker image
-# with with the command
-#
-#   docker run --rm bigbluebutton/greenlight rake secret
-#
-SECRET_KEY_BASE=a8b7f914b8323db980756414b6eb7b9825eb84befbc0bd9b9beeb2e84a89f3e959e198149150649b0b101eaf323e79250f3f5662db185c35562ef1a3e12cdabc
-
-# For either developent or production
-
-# Enter credentials for your BigBlueButton Server
-#
-# The endpoint and secret from your bigbluebutton server.  To get these values, run
-# the following command on your BigBlueButton server
-#
-#    bbb-conf --secret
-#
-# and uncomment the following two variables
-BIGBLUEBUTTON_ENDPOINT=https://felipe-docker.mconf.com/bigbluebutton/
-BIGBLUEBUTTON_SECRET=2ff5336294114f9ee7ff4596203f2a53
-
-# Set default client (optional)
-#
-# By default, GreenLight will join users to a BigBlueButton session using the Flash
-# client. By setting USE_HTML5_BY_DEFAULT to true, you can configure GreenLight to
-# use the HTML5 client by default. GreenLight will only use the default for
-# non-authenticated users. Users who have authenticated are able to set their
-# prefered client under preferences. Also note that if the HTML5 client is not
-# running on a BigBlueButton server, all clients will be joined using Flash
-# regardless on any settings. 
-USE_HTML5_BY_DEFAULT=true
-
-# Twitter Login Provider (optional)
-#
-#   You will need to register the app at https://apps.twitter.com/
-#   For the callback URL use 'http://<your hostname:port>/auth/twitter/callback'
-#   Once registered copy the ID and Secret here
-#
-TWITTER_ID=
-TWITTER_SECRET=
-
-# Google Login Provider (optional)
-#
-#   You will need to register for at https://console.developers.google.com/apis/credentials
-#   Select Oauth client ID -> web application
-#   For the callback URL use 'http://<your hostname:port>/auth/google/callback'
-#   Once registered copy the ID and Secret here
-#
-#   The GOOGLE_OAUTH2_HD variable is used to limit sign-in to a particular Google Apps hosted domain. This
-#   can be a string such as, 'domain.com'. If left blank, GreenLight will allow sign-in from all Google Apps hosted
-#   domains.
-#
-GOOGLE_OAUTH2_ID=
-GOOGLE_OAUTH2_SECRET=
-GOOGLE_OAUTH2_HD=
-
-# LDAP Login Provider (optional)
-#
-#   You can enable LDAP authentication by providing values for the variables below.
-#   For information about setting up LDAP, see:
-#     http://docs.bigbluebutton.org/install/green-light.html#ldap-oauth
-#
-LDAP_SERVER=
-LDAP_PORT=
-LDAP_METHOD=
-LDAP_UID=
-LDAP_BASE=
-LDAP_BIND_DN=
-LDAP_PASSWORD=
-
-# If "true", GreenLight will register a webhook callback for each meeting
-# created. This callback is called for all events that happen in the meeting,
-# including the processing of its recording. These events are used to update
-# the web page dynamically as things happen in the server.
-# If not "true", the application will add a metadata to the meetings with this same
-# callback URL. Scripts can then be added to BigBlueButton to call this callback
-# URL and send specific events to GreenLight (e.g. a post publish script to warn
-# the application when recordings are done).
-# GREENLIGHT_USE_WEBHOOKS=true
-
-# Enable uploading to Youtube (optional)
-#
-#   When this is enabled, users will be able to directly upload their recordings
-#   to Youtube. If you plan to enable this, you should follow the steps outlined
-#   in our docs for setting up the Youtube data API.
-#
-#   http://docs.bigbluebutton.org/install/green-light.html#8-enabling-uploading-to-youtube-optional
-#
-ENABLE_YOUTUBE_UPLOADING=false
-
-# Slack Integration (optional)
-#
-#   You will need to register an incoming-webhook for your slack channel
-#   in order for GreenLight to post to it. You can do this by going
-#   to https://slack.com/apps/A0F7XDUAZ-incoming-webhooks, selecting your
-#   team and then selecting "Add Incoming WebHooks integration" on the
-#   desired channel. You will then need to paste the webhook below.
-#
-SLACK_WEBHOOK=
-SLACK_CHANNEL=
-
-# Landing Background (optional)
-#
-#   Supply a URL to an image to change the landing background. If no
-#   URL is provided GreenLight will use a default image. If you
-#   supply a path that does not lead to an image, no landing image
-#   will appear.
-#
-LANDING_BACKGROUND=
-
-# SMTP Mailer (optional)
-#
-GREENLIGHT_MAIL_NOTIFICATIONS=true
-# In the format [localhost.localdomain]
-GREENLIGHT_DOMAIN=localhost-lxc.org
-SMTP_FROM=youremail@gmail.com
-SMTP_SERVER=smtp.gmail.com
-SMTP_PORT=587
-SMTP_DOMAIN=gmail.com
-SMTP_USERNAME=youremail@gmail.com
-SMTP_PASSWORD=yourpassword
-# SMTP_TLS=false
-# SMTP_AUTH=login
-# SMTP_STARTTLS_AUTO=true
-
-# Enable QR Code generation (optional)
-#
-#   When this is enabled, users will be able to generate a QR code for direct access
-#   to a meeting room that can be shared as the URL link.
-#
-ENABLE_QRCODE_GENERATION=false
-
-
-# Prefix for the application's root URL
-# Useful for deploying the application to a subdirectory
-#
-#   default is '/b' (recommended)
-#
-# RELATIVE_URL_ROOT=/b
-
-# Uncomment and set to 'true' to only allow users to create meetings when authenticated.
-# Unauthenticated users are still able to join meetings through invites.
-# DISABLE_GUEST_ACCESS=false
-
-# Comment this out to send logs to STDOUT in production instead of log/production.log .
-DISABLE_RAILS_LOG_TO_STDOUT=true
diff --git a/labs/docker/nginx-dhp/Dockerfile b/labs/docker/nginx-dhp/Dockerfile
index f2e1bfddf1ab1bf7e39be8f1549ba80e7ae47ea9..591d34c9acac937d11defb67151f957213db267b 100644
--- a/labs/docker/nginx-dhp/Dockerfile
+++ b/labs/docker/nginx-dhp/Dockerfile
@@ -2,7 +2,6 @@ FROM tannerfe/alpine-openssl
 
 WORKDIR /root
 
-COPY entrypoint.sh .
-
-CMD ["./entrypoint.sh"]
+COPY entrypoint.sh /usr/local/bin/
 
+CMD ["docker-entrypoint.sh"]
diff --git a/labs/docker/nginx-dhp/entrypoint.sh b/labs/docker/nginx-dhp/docker-entrypoint.sh
similarity index 100%
rename from labs/docker/nginx-dhp/entrypoint.sh
rename to labs/docker/nginx-dhp/docker-entrypoint.sh
diff --git a/labs/docker/nginx/.dockerfile b/labs/docker/nginx/.dockerfile
deleted file mode 100644
index 94143827ed065ca0d7d5be1b765d255c5c32cd9a..0000000000000000000000000000000000000000
--- a/labs/docker/nginx/.dockerfile
+++ /dev/null
@@ -1 +0,0 @@
-Dockerfile