Compare commits
No commits in common. "b6efb7a160d23c27b3fbf25e7b443f9acf2ff537" and "93fd089c2fc6e850d9e807791dcfb6c5a0ab5b29" have entirely different histories.
b6efb7a160
...
93fd089c2f
@ -2,7 +2,7 @@ FROM alpine:3.15
|
|||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
apk upgrade --update --no-cache && \
|
apk upgrade --update --no-cache && \
|
||||||
apk add --update --no-cache nextcloud-client bash
|
apk add --update --no-cache nextcloud-client
|
||||||
|
|
||||||
ENV USER_NAME=nextcloudclient
|
ENV USER_NAME=nextcloudclient
|
||||||
ENV USER_UID=1000
|
ENV USER_UID=1000
|
||||||
@ -23,4 +23,4 @@ ENV NEXTCLOUD_SLEEP=30
|
|||||||
|
|
||||||
COPY start.sh /start.sh
|
COPY start.sh /start.sh
|
||||||
|
|
||||||
ENTRYPOINT ["/bin/bash", "/start.sh"]
|
ENTRYPOINT ["/bin/sh", "/start.sh"]
|
||||||
|
49
start.sh
49
start.sh
@ -1,4 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/bin/sh
|
||||||
|
|
||||||
USER_NAME=${USER_NAME:-nextcloudclient}
|
USER_NAME=${USER_NAME:-nextcloudclient}
|
||||||
USER_GROUP=${USER_GROUP:-nextcloudgroup}
|
USER_GROUP=${USER_GROUP:-nextcloudgroup}
|
||||||
@ -12,21 +12,21 @@ NEXTCLOUD_DIR_CHOWN=${NEXTCLOUD_DIR_CHOWN:-1}
|
|||||||
NEXTCLOUD_SLEEP=${NEXTCLOUD_SLEEP:-30}
|
NEXTCLOUD_SLEEP=${NEXTCLOUD_SLEEP:-30}
|
||||||
|
|
||||||
# check if group already exists
|
# check if group already exists
|
||||||
GRP_NAME=$(getent group "${USER_GID}" )
|
GRP_NAME=$(getent group ${USER_GID} )
|
||||||
if [ "${GRP_NAME}" ] ; then
|
if [ "${GRP_NAME}" ] ; then
|
||||||
USER_GROUP=$( echo "${GRP_NAME}" | sed 's/\:.*//' )
|
USER_GROUP=$( echo ${GRP_NAME} | sed 's/\:.*//' )
|
||||||
else
|
else
|
||||||
# if not, we create the group
|
# if not, we create the group
|
||||||
addgroup -g "${USER_GID}" "${USER_GROUP}"
|
addgroup -g ${USER_GID} ${USER_GROUP}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# check if user already exists
|
# check if user already exists
|
||||||
USR_NAME=$(getent passwd "${USER_UID}" )
|
USR_NAME=$(getent passwd ${USER_UID} )
|
||||||
if [ "${USR_NAME}" ] ; then
|
if [ "${USR_NAME}" ] ; then
|
||||||
USER_NAME=$( echo "${USR_NAME}" | sed 's/\:.*//' )
|
USER_NAME=$( echo ${USR_NAME} | sed 's/\:.*//' )
|
||||||
else
|
else
|
||||||
# if not, we create the user
|
# if not, we create the user
|
||||||
adduser -s /bin/false -D -H -G "${USER_GROUP}" -u "${USER_UID}" "${USER_NAME}"
|
adduser -s /bin/false -D -H -G ${USER_GROUP} -u ${USER_UID} ${USER_NAME}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# create dir if not exists (it should exist if you mapped it outside the container)
|
# create dir if not exists (it should exist if you mapped it outside the container)
|
||||||
@ -36,51 +36,40 @@ fi
|
|||||||
|
|
||||||
# replace data directory permissions
|
# replace data directory permissions
|
||||||
if [ "${NEXTCLOUD_DIR_CHOWN}" = "1" ] ; then
|
if [ "${NEXTCLOUD_DIR_CHOWN}" = "1" ] ; then
|
||||||
chown -R "${USER_UID}":"${USER_GID}" "${NEXTCLOUD_DIR}"
|
chown -R ${USER_UID}:${USER_GID} "${NEXTCLOUD_DIR}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PARAMS=()
|
PARAMS=
|
||||||
if [ "${NEXTCLOUD_FORCE_TRUST}" = "1" ] ; then
|
if [ "${NEXTCLOUD_FORCE_TRUST}" = "1" ] ; then
|
||||||
PARAMS+="--trust"
|
PARAMS="${PARAMS} --trust"
|
||||||
fi
|
fi
|
||||||
if [ ! "${NEXTCLOUD_HTTPPROXY}" = "" ] ; then
|
if [ ! "${NEXTCLOUD_HTTPPROXY}" = "" ] ; then
|
||||||
PARAMS+="--httpproxy"
|
PARAMS="${PARAMS} --httpproxy '${NEXTCLOUD_HTTPPROXY}'"
|
||||||
PARAMS+="${NEXTCLOUD_HTTPPROXY}"
|
|
||||||
fi
|
fi
|
||||||
if [ ! "${NEXTCLOUD_UPLIMIT}" = "" ] ; then
|
if [ ! "${NEXTCLOUD_UPLIMIT}" = "" ] ; then
|
||||||
PARAMS+="--uplimit"
|
PARAMS="${PARAMS} --uplimit '${NEXTCLOUD_UPLIMIT}'"
|
||||||
PARAMS+="${NEXTCLOUD_UPLIMIT}"
|
|
||||||
fi
|
fi
|
||||||
if [ ! "${NEXTCLOUD_DOWNLIMIT}" = "" ] ; then
|
if [ ! "${NEXTCLOUD_DOWNLIMIT}" = "" ] ; then
|
||||||
PARAMS+="--downlimit"
|
PARAMS="${PARAMS} --downlimit '${NEXTCLOUD_DOWNLIMIT}'"
|
||||||
PARAMS+="${NEXTCLOUD_DOWNLIMIT}"
|
|
||||||
fi
|
fi
|
||||||
if [ ! "${NEXTCLOUD_EXCLUDEFILE}" = "" ] ; then
|
if [ ! "${NEXTCLOUD_EXCLUDEFILE}" = "" ] ; then
|
||||||
if [ -r "${NEXTCLOUD_EXCLUDEFILE}" ] ; then
|
if [ -r "${NEXTCLOUD_EXCLUDEFILE}" ] ; then
|
||||||
PARAMS+="--exclude"
|
PARAMS="${PARAMS} --exclude '${NEXTCLOUD_EXCLUDEFILE}'"
|
||||||
PARAMS+="${NEXTCLOUD_EXCLUDEFILE}"
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ ! "${NEXTCLOUD_UNSYNCFILE}" = "" ] ; then
|
if [ ! "${NEXTCLOUD_UNSYNCFILE}" = "" ] ; then
|
||||||
if [ -r "${NEXTCLOUD_UNSYNCFILE}" ] ; then
|
if [ -r "${NEXTCLOUD_UNSYNCFILE}" ] ; then
|
||||||
PARAMS+="--unsyncedfolders"
|
PARAMS="${PARAMS} --unsyncedfolders '${NEXTCLOUD_UNSYNCFILE}'"
|
||||||
PARAMS+="'${NEXTCLOUD_UNSYNCFILE}'"
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "${NEXTCLOUD_SILENT}" = "1" ] ; then
|
if [ "${NEXTCLOUD_SILENT}" = "1" ] ; then
|
||||||
PARAMS+="--silent"
|
PARAMS="${PARAMS} --silent"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PARAMS+="--non-interactive"
|
PARAMS="${PARAMS} --non-interactive -u ${NEXTCLOUD_USERNAME} -p ${NEXTCLOUD_PASSWORD} ${NEXTCLOUD_DIR} ${NEXTCLOUD_URL}"
|
||||||
PARAMS+="-u"
|
|
||||||
PARAMS+="${NEXTCLOUD_USERNAME}"
|
|
||||||
PARAMS+="-p"
|
|
||||||
PARAMS+="${NEXTCLOUD_PASSWORD}"
|
|
||||||
PARAMS+="${NEXTCLOUD_DIR}"
|
|
||||||
PARAMS+="${NEXTCLOUD_URL}"
|
|
||||||
|
|
||||||
# main loop
|
# main loop
|
||||||
while true; do
|
while true; do
|
||||||
/bin/su -s /bin/sh "${USER_NAME}" -c "/usr/bin/nextcloudcmd ${PARAMS[@]}"
|
/bin/su -s /bin/sh ${USER_NAME} -c "/usr/bin/nextcloudcmd ${PARAMS}"
|
||||||
sleep "${NEXTCLOUD_SLEEP}"
|
sleep ${NEXTCLOUD_SLEEP}
|
||||||
done
|
done
|
||||||
|
Loading…
Reference in New Issue
Block a user