mirror of
https://github.com/optim-enterprises-bv/Mailu.git
synced 2025-11-01 10:37:49 +00:00
Update the build configuration to use webpack and compiled assets
This commit is contained in:
@@ -1,20 +1,25 @@
|
|||||||
FROM alpine:3.8
|
# First stage to build assets
|
||||||
# python3 shared with most images
|
FROM node:8 as assets
|
||||||
RUN apk add --no-cache \
|
|
||||||
python3 py3-pip git bash \
|
COPY package.json ./
|
||||||
&& pip3 install --upgrade pip
|
RUN npm install
|
||||||
RUN pip3 install git+https://github.com/usrpro/MailuStart.git#egg=mailustart
|
|
||||||
# Image specific layers under this line
|
COPY ./webpack.config.js ./
|
||||||
|
COPY ./assets ./assets
|
||||||
|
RUN mkdir static \
|
||||||
|
&& ./node_modules/.bin/webpack-cli
|
||||||
|
|
||||||
|
|
||||||
|
# Actual application
|
||||||
|
FROM python:3.7
|
||||||
|
|
||||||
RUN mkdir -p /app
|
RUN mkdir -p /app
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY requirements-prod.txt requirements.txt
|
COPY requirements-prod.txt requirements.txt
|
||||||
RUN apk add --no-cache libressl curl postgresql-libs mariadb-connector-c \
|
RUN pip install -r requirements.txt
|
||||||
&& apk add --no-cache --virtual build-dep \
|
|
||||||
libressl-dev libffi-dev python3-dev build-base postgresql-dev mariadb-connector-c-dev \
|
|
||||||
&& pip3 install -r requirements.txt \
|
|
||||||
&& apk del --no-cache build-dep
|
|
||||||
|
|
||||||
|
COPY --from=assets static ./mailu/ui/static
|
||||||
COPY mailu ./mailu
|
COPY mailu ./mailu
|
||||||
COPY migrations ./migrations
|
COPY migrations ./migrations
|
||||||
COPY start.py /start.py
|
COPY start.py /start.py
|
||||||
|
|||||||
@@ -1,49 +1,50 @@
|
|||||||
alembic==1.0.2
|
alembic==1.0.10
|
||||||
asn1crypto==0.24.0
|
asn1crypto==0.24.0
|
||||||
Babel==2.6.0
|
Babel==2.6.0
|
||||||
bcrypt==3.1.5
|
bcrypt==3.1.6
|
||||||
blinker==1.4
|
blinker==1.4
|
||||||
cffi==1.11.5
|
cffi==1.12.3
|
||||||
Click==7.0
|
Click==7.0
|
||||||
cryptography==2.3.1
|
cryptography==2.6.1
|
||||||
decorator==4.3.0
|
decorator==4.4.0
|
||||||
dnspython==1.16.0
|
dnspython==1.16.0
|
||||||
dominate==2.3.4
|
dominate==2.3.5
|
||||||
Flask==1.0.2
|
Flask==1.0.2
|
||||||
Flask-Babel==0.12.2
|
Flask-Babel==0.12.2
|
||||||
Flask-Bootstrap==3.3.7.1
|
Flask-Bootstrap==3.3.7.1
|
||||||
Flask-DebugToolbar==0.10.1
|
Flask-DebugToolbar==0.10.1
|
||||||
Flask-Limiter==1.0.1
|
Flask-Limiter==1.0.1
|
||||||
Flask-Login==0.4.1
|
Flask-Login==0.4.1
|
||||||
Flask-Migrate==2.3.1
|
Flask-Migrate==2.4.0
|
||||||
Flask-Script==2.0.6
|
Flask-Script==2.0.6
|
||||||
Flask-SQLAlchemy==2.3.2
|
Flask-SQLAlchemy==2.4.0
|
||||||
Flask-WTF==0.14.2
|
Flask-WTF==0.14.2
|
||||||
gunicorn==19.9.0
|
gunicorn==19.9.0
|
||||||
idna==2.7
|
idna==2.8
|
||||||
infinity==1.4
|
infinity==1.4
|
||||||
intervals==0.8.1
|
intervals==0.8.1
|
||||||
itsdangerous==1.1.0
|
itsdangerous==1.1.0
|
||||||
Jinja2==2.10
|
Jinja2==2.10.1
|
||||||
limits==1.3
|
limits==1.3
|
||||||
Mako==1.0.7
|
Mako==1.0.9
|
||||||
MarkupSafe==1.1.0
|
MarkupSafe==1.1.1
|
||||||
mysqlclient==1.3.14
|
mysqlclient==1.4.2.post1
|
||||||
passlib==1.7.1
|
passlib==1.7.1
|
||||||
psycopg2==2.7.6.1
|
psycopg2==2.8.2
|
||||||
pycparser==2.19
|
pycparser==2.19
|
||||||
pyOpenSSL==18.0.0
|
pyOpenSSL==19.0.0
|
||||||
python-dateutil==2.7.5
|
python-dateutil==2.8.0
|
||||||
python-editor==1.0.3
|
python-editor==1.0.4
|
||||||
pytz==2018.7
|
pytz==2019.1
|
||||||
PyYAML==4.2b4
|
PyYAML==5.1
|
||||||
redis==3.0.1
|
redis==3.2.1
|
||||||
six==1.11.0
|
six==1.12.0
|
||||||
SQLAlchemy==1.2.13
|
socrate==0.1.1
|
||||||
tabulate==0.8.2
|
SQLAlchemy==1.3.3
|
||||||
tenacity==5.0.2
|
tabulate==0.8.3
|
||||||
validators==0.12.2
|
tenacity==5.0.4
|
||||||
|
validators==0.12.5
|
||||||
visitor==0.1.3
|
visitor==0.1.3
|
||||||
Werkzeug==0.14.1
|
Werkzeug==0.15.2
|
||||||
WTForms==2.2.1
|
WTForms==2.2.1
|
||||||
WTForms-Components==0.10.3
|
WTForms-Components==0.10.4
|
||||||
|
|||||||
@@ -9,9 +9,8 @@ module.exports = {
|
|||||||
vendor: "./assets/vendor.js"
|
vendor: "./assets/vendor.js"
|
||||||
},
|
},
|
||||||
output: {
|
output: {
|
||||||
path: path.resolve(__dirname, "mailu/ui/static/"),
|
path: path.resolve(__dirname, "static/"),
|
||||||
filename: "[name].js",
|
filename: "[name].js"
|
||||||
publicPath: "/static"
|
|
||||||
},
|
},
|
||||||
module: {
|
module: {
|
||||||
rules: [
|
rules: [
|
||||||
|
|||||||
Reference in New Issue
Block a user