19
19
# PY stage that simply does a pip install on our requirements
20
20
# #####################################################################
21
21
ARG PY_VER=3.7.9
22
- FROM python:${PY_VER} AS superset -py
22
+ FROM python:${PY_VER} AS spotrix -py
23
23
24
24
RUN mkdir /app \
25
25
&& apt-get update -y \
@@ -35,17 +35,17 @@ RUN mkdir /app \
35
35
# in order to only build if and only if requirements change
36
36
COPY ./requirements/*.txt /app/requirements/
37
37
COPY setup.py MANIFEST.in README.md /app/
38
- COPY superset -frontend/package.json /app/superset -frontend/
38
+ COPY spotrix -frontend/package.json /app/spotrix -frontend/
39
39
RUN cd /app \
40
- && mkdir -p superset /static \
41
- && touch superset /static/version_info.json \
40
+ && mkdir -p spotrix /static \
41
+ && touch spotrix /static/version_info.json \
42
42
&& pip install --no-cache -r requirements/local.txt
43
43
44
44
45
45
# #####################################################################
46
46
# Node stage to deal with static asset construction
47
47
# #####################################################################
48
- FROM node:14 AS superset -node
48
+ FROM node:14 AS spotrix -node
49
49
50
50
ARG NPM_VER=7
51
51
RUN npm install -g npm@${NPM_VER}
@@ -54,18 +54,18 @@ ARG NPM_BUILD_CMD="build"
54
54
ENV BUILD_CMD=${NPM_BUILD_CMD}
55
55
56
56
# NPM ci first, as to NOT invalidate previous steps except for when package.json changes
57
- RUN mkdir -p /app/superset -frontend
58
- RUN mkdir -p /app/superset /assets
57
+ RUN mkdir -p /app/spotrix -frontend
58
+ RUN mkdir -p /app/spotrix /assets
59
59
COPY ./docker/frontend-mem-nag.sh /
60
- COPY ./superset -frontend/package* /app/superset -frontend/
60
+ COPY ./spotrix -frontend/package* /app/spotrix -frontend/
61
61
RUN /frontend-mem-nag.sh \
62
- && cd /app/superset -frontend \
62
+ && cd /app/spotrix -frontend \
63
63
&& npm ci
64
64
65
65
# Next, copy in the rest and let webpack do its thing
66
- COPY ./superset -frontend /app/superset -frontend
66
+ COPY ./spotrix -frontend /app/spotrix -frontend
67
67
# This is BY FAR the most expensive step (thanks Terser!)
68
- RUN cd /app/superset -frontend \
68
+ RUN cd /app/spotrix -frontend \
69
69
&& npm run ${BUILD_CMD} \
70
70
&& rm -rf node_modules
71
71
@@ -79,13 +79,13 @@ FROM python:${PY_VER} AS lean
79
79
ENV LANG=C.UTF-8 \
80
80
LC_ALL=C.UTF-8 \
81
81
FLASK_ENV=production \
82
- FLASK_APP="superset .app:create_app()" \
82
+ FLASK_APP="spotrix .app:create_app()" \
83
83
PYTHONPATH="/app/pythonpath" \
84
- SPOTRIX_HOME="/app/superset_home " \
84
+ SPOTRIX_HOME="/app/spotrix_home " \
85
85
SPOTRIX_PORT=8088
86
86
87
87
RUN mkdir -p ${PYTHONPATH} \
88
- && useradd --user-group -d ${SPOTRIX_HOME} -m --no-log-init --shell /bin/bash superset \
88
+ && useradd --user-group -d ${SPOTRIX_HOME} -m --no-log-init --shell /bin/bash spotrix \
89
89
&& apt-get update -y \
90
90
&& apt-get install -y --no-install-recommends \
91
91
build-essential \
@@ -94,24 +94,24 @@ RUN mkdir -p ${PYTHONPATH} \
94
94
libpq-dev \
95
95
&& rm -rf /var/lib/apt/lists/*
96
96
97
- COPY --from=superset -py /usr/local/lib/python3.7/site-packages/ /usr/local/lib/python3.7/site-packages/
97
+ COPY --from=spotrix -py /usr/local/lib/python3.7/site-packages/ /usr/local/lib/python3.7/site-packages/
98
98
# Copying site-packages doesn't move the CLIs, so let's copy them one by one
99
- COPY --from=superset -py /usr/local/bin/gunicorn /usr/local/bin/celery /usr/local/bin/flask /usr/bin/
100
- COPY --from=superset -node /app/superset /static/assets /app/superset /static/assets
101
- COPY --from=superset -node /app/superset -frontend /app/superset -frontend
99
+ COPY --from=spotrix -py /usr/local/bin/gunicorn /usr/local/bin/celery /usr/local/bin/flask /usr/bin/
100
+ COPY --from=spotrix -node /app/spotrix /static/assets /app/spotrix /static/assets
101
+ COPY --from=spotrix -node /app/spotrix -frontend /app/spotrix -frontend
102
102
103
- # # Lastly, let's install superset itself
104
- COPY superset /app/superset
103
+ # # Lastly, let's install spotrix itself
104
+ COPY spotrix /app/spotrix
105
105
COPY setup.py MANIFEST.in README.md /app/
106
106
RUN cd /app \
107
- && chown -R superset:superset * \
107
+ && chown -R spotrix:spotrix * \
108
108
&& pip install -e .
109
109
110
110
COPY ./docker/docker-entrypoint.sh /usr/bin/
111
111
112
112
WORKDIR /app
113
113
114
- USER superset
114
+ USER spotrix
115
115
116
116
HEALTHCHECK CMD curl -f "http://localhost:$SPOTRIX_PORT/health"
117
117
@@ -148,17 +148,17 @@ RUN wget https://download-installer.cdn.mozilla.net/pub/firefox/releases/${FIREF
148
148
RUN cd /app \
149
149
&& pip install --no-cache -r requirements/docker.txt \
150
150
&& pip install --no-cache -r requirements/requirements-local.txt || true
151
- USER superset
151
+ USER spotrix
152
152
153
153
154
154
# #####################################################################
155
155
# CI image...
156
156
# #####################################################################
157
157
FROM lean AS ci
158
158
159
- COPY --chown=superset ./docker/docker-bootstrap.sh /app/docker/
160
- COPY --chown=superset ./docker/docker-init.sh /app/docker/
161
- COPY --chown=superset ./docker/docker-ci.sh /app/docker/
159
+ COPY --chown=spotrix ./docker/docker-bootstrap.sh /app/docker/
160
+ COPY --chown=spotrix ./docker/docker-init.sh /app/docker/
161
+ COPY --chown=spotrix ./docker/docker-ci.sh /app/docker/
162
162
163
163
RUN chmod a+x /app/docker/*.sh
164
164
0 commit comments