FROM alpine:3.19

RUN set -eux \
    && apk add --no-cache \
        bash \
        ca-certificates \
        coreutils \
        nodejs \
        npm \
        pure-ftpd \
    && addgroup -g 2100 ftpgroup \
    && adduser -D -H -s /sbin/nologin -G ftpgroup -u 2100 ftpuser

WORKDIR /app

COPY control-service.js entrypoint.sh ./

RUN chmod +x /app/entrypoint.sh

EXPOSE 21 8080

CMD ["/app/entrypoint.sh"]
