-
Notifications
You must be signed in to change notification settings - Fork 35
/
Dockerfile
34 lines (27 loc) · 889 Bytes
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
FROM node:20-alpine3.17
LABEL maintainer="Deokgyu Yang <[email protected]>" \
description="Lightweight Docusaurus container with Node.js based on Alpine Linux"
RUN apk add --no-cache \
bash bash-completion supervisor \
autoconf automake build-base libtool nasm
# Environments
ENV TARGET_UID=1000
ENV TARGET_GID=1000
ENV AUTO_UPDATE='true'
ENV WEBSITE_NAME='MyWebsite'
ENV TEMPLATE='classic'
ENV RUN_MODE='development'
# Create Docusaurus directory and change working directory to that
RUN mkdir /docusaurus
WORKDIR /docusaurus
# Copy configuration files
ADD config/init.sh /
ADD config/auto_update_crontab.txt /
ADD config/auto_update_job.sh /
ADD config/run.sh /
COPY config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
# Set files permission
RUN chmod a+x /init.sh /auto_update_job.sh /run.sh
EXPOSE 80
VOLUME [ "/docusaurus" ]
ENTRYPOINT [ "/init.sh" ]