commit 2608ff4ed1c992cc76b0d6576f5f17de46909629
| author | 斟酌 鵬兄 <tgckpg@gmail.com> |
| date | 2020-09-22T18:57:50Z |
| subject | Use Alpine linux for smaller image |
commit 2608ff4ed1c992cc76b0d6576f5f17de46909629
Author: 斟酌 鵬兄 <tgckpg@gmail.com>
Date: 2020-09-22T18:57:50Z
Use Alpine linux for smaller image
---
Dockerfile | 13 +++++--------
k8s.yaml | 4 ++--
setup/docker.start | 7 ++++---
3 files changed, 11 insertions(+), 13 deletions(-)
diff --git a/Dockerfile b/Dockerfile
index a941f4d..085bc33 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,21 +1,18 @@
-FROM python:latest
+FROM alpine:latest
WORKDIR /app
-RUN apt-get update
-RUN apt-get install -y openjdk-11-jre
-
RUN mkdir -p /opt/utils
RUN wget -O /opt/utils/closure.jar "https://repo1.maven.org/maven2/com/google/javascript/closure-compiler/v20200830/closure-compiler-v20200830.jar"
RUN wget -O /opt/utils/yuicompressor.jar "https://github.com/yui/yuicompressor/releases/download/v2.4.8/yuicompressor-2.4.8.jar"
-RUN pip install virtualenv
+RUN apk add --update bash python3 uwsgi uwsgi-python; python3 -m ensurepip
+
+RUN echo "www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin" >> /etc/passwd; echo "www-data:x:33:" >> /etc/group
RUN chown www-data:www-data . -R
+RUN pip3 install Flask redis compressinja Celery
USER www-data
-RUN virtualenv env
-RUN env/bin/pip install Flask redis compressinja Celery uwsgi
-
EXPOSE 5000
ENTRYPOINT ["setup/docker.start"]
diff --git a/k8s.yaml b/k8s.yaml
index eb23527..8627e55 100644
--- a/k8s.yaml
+++ b/k8s.yaml
@@ -19,7 +19,7 @@ spec:
path: /srv/astrostorage
containers:
- name: web
- image: 192.168.80.4:32000/sites/astrojs:b00019
+ image: 192.168.80.4:32000/sites/astrojs:b00027
volumeMounts:
- mountPath: "/app/cache"
name: astrojs-cache
@@ -33,7 +33,7 @@ spec:
- name: redis
image: redis:6.0.8-alpine
- name: compiler
- image: 192.168.80.4:32000/sites/astrojs:b00018
+ image: 192.168.80.4:32000/sites/astrojs:b00027
volumeMounts:
- mountPath: "/app/cache"
name: astrojs-cache
diff --git a/setup/docker.start b/setup/docker.start
index ee0092a..541d8d4 100644
--- a/setup/docker.start
+++ b/setup/docker.start
@@ -9,7 +9,8 @@ mkdir -p cache/botanjs
case "$RUN_MODE" in
"web")
./botan-rebuild.py
- ./env/bin/uwsgi \
+ uwsgi \
+ --plugins-dir /usr/lib/uwsgi/ --need-plugin python \
--http-socket :5000 \
--wsgi-file main.py \
--callable application --master \
@@ -18,10 +19,10 @@ case "$RUN_MODE" in
"tasks")
source "$INST_DIR/celery.conf"
- "$BIN_ROOT/celery" worker -n worker1@%h \
+ celery worker -n worker1@%h \
-A ${CELERY_APP} \
--loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS} \
- & "$BIN_ROOT/celery" worker -n worker1@%h \
+ & celery worker -n worker1@%h \
-A ${CELERY_APP} \
--loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}
;;