|
1 | | -FROM hyperknot/baseimage16:1.0.2 |
2 | | - |
3 | | -MAINTAINER friends@niiknow.org |
4 | | - |
| 1 | +FROM hyperknot/baseimage16:1.0.2 AS buildstep |
5 | 2 | ENV LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 \ |
6 | 3 | TERM=xterm container=docker DEBIAN_FRONTEND=noninteractive \ |
| 4 | + NGINX_DEVEL_KIT_VERSION=0.3.0 NGINX_SET_MISC_MODULE_VERSION=0.31 \ |
7 | 5 | NGINX_VERSION=1.13.6 |
8 | | - |
9 | | -ENV NGINX_BUILD_DIR=/usr/src/nginx/nginx-${NGINX_VERSION} \ |
10 | | - NGINX_DEVEL_KIT_VERSION=0.3.0 NGINX_SET_MISC_MODULE_VERSION=0.31 |
11 | | - |
12 | 6 | ADD ./build/src/ /tmp/ |
| 7 | +RUN bash /tmp/ubuntu.sh |
13 | 8 |
|
14 | | -RUN \ |
15 | | - cd /tmp \ |
16 | | - && bash ubuntu.sh |
17 | 9 |
|
18 | | -# build 2 |
19 | 10 | FROM hyperknot/baseimage16:1.0.2 |
20 | 11 |
|
21 | 12 | MAINTAINER friends@niiknow.org |
22 | 13 |
|
23 | | -# files are nginx_***_adm64.deb or nginx-dbg_***_adm64.deb |
24 | | - |
25 | 14 | ENV LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 \ |
26 | 15 | TERM=xterm container=docker DEBIAN_FRONTEND=noninteractive \ |
27 | | - NGINX_VERSION=1.13.6-1~xenial_amd64.deb |
| 16 | + NGINX_VERSION=_1.13.6-1~xenial_amd64.deb \ |
| 17 | + NGINX_DEBUG=-dbg${NGINX_VERSION} |
28 | 18 |
|
29 | | -COPY --from=0 /usr/src/nginx/nginx_${NGINX_VERSION} /tmp |
| 19 | +COPY --from=buildstep /usr/src/nginx/nginx${NGINX_VERSION} /tmp |
30 | 20 |
|
31 | | -# start |
32 | | -RUN \ |
33 | | - cd /tmp \ |
34 | | - |
35 | | -# increase ulimit |
| 21 | +RUN cd /tmp \ |
36 | 22 | && echo "\n\n* soft nofile 800000\n* hard nofile 800000\n\n" >> /etc/security/limits.conf \ |
37 | | - |
38 | | -# add nginx repo |
39 | 23 | && curl -s https://nginx.org/keys/nginx_signing.key | apt-key add - \ |
40 | 24 | && cp /etc/apt/sources.list /etc/apt/sources.list.bak \ |
41 | 25 | && echo "deb http://nginx.org/packages/mainline/ubuntu/ xenial nginx" | tee -a /etc/apt/sources.list \ |
42 | 26 | && echo "deb-src http://nginx.org/packages/mainline/ubuntu/ xenial nginx" | tee -a /etc/apt/sources.list \ |
43 | | - |
44 | | -# update repo |
45 | 27 | && apt-get update -y && apt-get upgrade -y --no-install-recommends --no-install-suggests \ |
46 | 28 | && apt-get install -y --no-install-recommends --no-install-suggests \ |
47 | 29 | nano libgd3 gettext-base unzip rsync \ |
48 | 30 | && dpkg --configure -a \ |
49 | | - |
50 | | -# install nginx |
51 | | - && dpkg -i nginx_${NGINX_VERSION} \ |
52 | | - |
53 | | -# && dpkg -i nginx-dbg_${NGINX_VERSION} \ |
54 | | - |
55 | | -# delete dummy conf |
| 31 | + && dpkg -i nginx${NGINX_VERSION} \ |
56 | 32 | && rm -rf /etc/nginx/conf.d/default.conf \ |
57 | | - |
58 | | -# re-enable all default services |
59 | 33 | && rm -f /etc/service/syslog-forwarder/down \ |
60 | 34 | && rm -f /etc/service/cron/down \ |
61 | 35 | && rm -f /etc/service/syslog-ng/down \ |
62 | 36 | && rm -f /core \ |
63 | | - |
64 | | -# forward request and error logs to docker log collector |
65 | 37 | && ln -sf /dev/stdout /var/log/nginx/access.log \ |
66 | 38 | && ln -sf /dev/stderr /var/log/nginx/error.log \ |
67 | 39 | && service nginx stop && update-rc.d -f nginx disable \ |
68 | | - |
69 | | -# cleanup |
70 | 40 | && apt-get clean -y && apt-get autoclean -y \ |
71 | 41 | && apt-get autoremove --purge -y \ |
72 | 42 | && rm -rf /var/lib/apt/lists/* /var/lib/log/* /tmp/* /var/tmp/* |
73 | 43 |
|
74 | 44 | ADD ./files / |
75 | 45 |
|
76 | | -RUN \ |
77 | | -# generate fake ssl for server conf, allow for replacing it later |
78 | | - bash /root/bin/placeholder-ssl.sh \ |
| 46 | +RUN bash /root/bin/placeholder-ssl.sh \ |
79 | 47 | && mkdir -p /app-start/etc \ |
80 | | - |
81 | | -# redirect /etc/nginx |
82 | 48 | && mv /etc/nginx /app-start/etc/nginx \ |
83 | 49 | && rm -rf /etc/nginx \ |
84 | 50 | && ln -s /app/etc/nginx /etc/nginx \ |
85 | | - |
86 | | -# redirect logs |
87 | 51 | && mkdir -p /app-start/var/log \ |
88 | 52 | && mv /var/log/nginx /app-start/var/log/nginx \ |
89 | 53 | && rm -rf /var/log/nginx \ |
|
0 commit comments