Browse Source

Ajusta Dockerfile e docker-compose com entrypoint start.sh

pull/1023/head
Matheus Veleci 9 years ago
parent
commit
ff8ad4bbc0
  1. 10
      Dockerfile
  2. 3
      docker-compose.yml
  3. 31
      gen-env.py
  4. 13
      start.sh

10
Dockerfile

@ -2,7 +2,7 @@ FROM alpine:3.5
ENV BUILD_PACKAGES postgresql-dev graphviz-dev graphviz build-base git pkgconfig \
python3-dev libxml2-dev jpeg-dev libressl-dev libffi-dev libxslt-dev nodejs py3-lxml \
py3-magic postgresql-client
py3-magic postgresql-client vim
RUN apk add --no-cache python3 && \
python3 -m ensurepip && \
@ -24,9 +24,11 @@ WORKDIR /sapl
ADD . /sapl
RUN chmod +x ./start.sh
COPY start.sh /sapl
# RUN pip install -r requirements/requirements.txt --upgrade setuptools --no-cache-dir
RUN chmod +x /sapl/start.sh
RUN pip install -r requirements/requirements.txt --upgrade setuptools --no-cache-dir
VOLUME ["/sapl/data"]
ENTRYPOINT ["./start.sh"]
ENTRYPOINT ["/sapl/start.sh"]

3
docker-compose.yml

@ -6,8 +6,6 @@ server:
- ./config/nginx:/etc/nginx/conf.d
volumes_from:
- web
links:
- web
sapldb:
image: postgres
environment:
@ -21,7 +19,6 @@ sapldb:
- "5532:5432"
web:
build: .
command: /bin/sh -c "/bin/sh busy-wait.sh && python3 manage.py bower install && python3 manage.py migrate && /bin/sh gunicorn_start.sh"
volumes:
- .:/sapl
links:

31
gen-env.py

@ -1,4 +1,5 @@
import os
import subprocess
from genkey import generate_secret
key = None
@ -10,34 +11,30 @@ else:
key = generate_secret()
f.write("%s" % key)
with open(".env", "w") as f:
with open("sapl/.env", "w") as f:
f.write("DATABASE_URL = postgresql://postgres:@localhost:/sapldb\n")
f.write("SECRET_KEY: %s\n" % key)
DATABASE_URL = 'postgresql://sapl:sapl@sapldb:5432/sapl'
URL = os.environ['DATABASE_URL'] if 'DATABASE_URL' in os.environ else DATABASE_URL
f.write("DATABASE_URL = %s\n" % URL)
f.write("SECRET_KEY = %s\n" % key)
# TODO use template and dict?
f.write("DEBUG=False\n")
f.write("DEBUG = False\n")
f.write("EMAIL_USE_TLS = True\n")
f.write("EMAIL_PORT = 587\n")
EMAIL_PORT = os.environ['EMAIL_PORT'] if 'EMAIL_PORT' in os.environ else ''
f.write("EMAIL_PORT: %s\n" % EMAIL_PORT)
EMAIL_PORT = os.environ['EMAIL_PORT'] if 'EMAIL_PORT' in os.environ else '587'
f.write("EMAIL_PORT = %s\n" % EMAIL_PORT)
EMAIL_HOST = os.environ['EMAIL_HOST'] if 'EMAIL_HOST' in os.environ else ''
f.write("EMAIL_HOST: %s\n" % EMAIL_HOST)
f.write("EMAIL_HOST = %s\n" % EMAIL_HOST)
EMAIL_HOST_USER = os.environ['EMAIL_HOST_USER'] if 'EMAIL_HOST_USER' in os.environ else ''
f.write("EMAIL_HOST_USER: %s\n" % EMAIL_HOST_USER)
f.write("EMAIL_HOST_USER = %s\n" % EMAIL_HOST_USER)
EMAIL_HOST_PASSWORD = os.environ['EMAIL_HOST_PASSWORD'] if 'EMAIL_HOST_PASSWORD' in os.environ else ''
f.write("EMAIL_HOST_PASSWORD: %s\n" % EMAIL_HOST_PASSWORD)
f.write("EMAIL_HOST_PASSWORD = %s\n" % EMAIL_HOST_PASSWORD)
# SECRET_KEY=TravisTest
# DEBUG=False
# EMAIL_USE_TLS = True
# EMAIL_PORT = 587
# EMAIL_HOST = ''
# EMAIL_HOST_USER = ''
# EMAIL_HOST_PASSWORD = ''
#subprocess.call("./start.sh")

13
start.sh

@ -1,12 +1,7 @@
#!/bin/sh
touch .env
python3 gen-env.py
/bin/sh
# Generate .env em /sapl/data volume
python3 manage.py bower install
/bin/sh busy-wait.sh
python3 manage.py migrate
/bin/sh gunicorn_start.sh

Loading…
Cancel
Save