mirror of
https://github.com/nextcloud/nextcloudpi.git
synced 2026-01-10 15:12:01 -03:30
docker: updated to stretch and added NextCloudPi layer
This commit is contained in:
parent
786728c2ec
commit
acbe26cc14
11
Makefile
11
Makefile
@ -5,15 +5,20 @@
|
||||
#
|
||||
|
||||
|
||||
nextcloudpi: nextcloud
|
||||
docker build . -f docker/nextcloudpi/Dockerfile -t ownyourbits/nextcloudpi:latest
|
||||
|
||||
nextcloud: lamp
|
||||
docker build . -f docker/nextcloud.dockerfile -t ownyourbits/nextcloudpi:latest
|
||||
docker build . -f docker/nextcloud/Dockerfile -t ownyourbits/nextcloud:latest
|
||||
|
||||
lamp: miniraspbian
|
||||
docker build . -f docker/lamp.dockerfile -t ownyourbits/lamp-arm:latest
|
||||
docker build . -f docker/lamp/Dockerfile -t ownyourbits/lamp-arm:latest
|
||||
|
||||
miniraspbian:
|
||||
docker build . -f docker/raspbian.dockerfile -t ownyourbits/miniraspbian:latest
|
||||
docker build . -f docker/miniraspbian/Dockerfile -t ownyourbits/miniraspbian:latest
|
||||
|
||||
devel:
|
||||
docker build . -f docker/devel/Dockerfile -t ownyourbits/nextcloudpi:devel
|
||||
# License
|
||||
#
|
||||
# This script is free software; you can redistribute it and/or modify it
|
||||
|
||||
12
changelog.md
12
changelog.md
@ -1,5 +1,15 @@
|
||||
|
||||
[v0.28.1](https://github.com/nextcloud/nextcloudpi/commit/164b656) (2017-09-15) nc-static-IP: add new IP to trusted domain
|
||||
[v0.29.3](https://github.com/nextcloud/nextcloudpi/commit/93c19f2) (2017-09-21) docker: updated to stretch and added NextCloudPi layer
|
||||
|
||||
[v0.29.2 ](https://github.com/nextcloud/nextcloudpi/commit/94a6513) (2017-09-20) changed hostname
|
||||
|
||||
[v0.29.1 ](https://github.com/nextcloud/nextcloudpi/commit/03b0263) (2017-09-20) lamp: add fileinfo mcrypt packages
|
||||
|
||||
[v0.29.0 ](https://github.com/nextcloud/nextcloudpi/commit/74a97c3) (2017-09-20) updated to NC12.0.3
|
||||
|
||||
[v0.28.2](https://github.com/nextcloud/nextcloudpi/commit/ac3fcab) (2017-09-18) ncp-web: point changelog to master
|
||||
|
||||
[v0.28.1 ](https://github.com/nextcloud/nextcloudpi/commit/3b71b3d) (2017-09-15) nc-static-IP: add new IP to trusted domain
|
||||
|
||||
[v0.28.0 ](https://github.com/nextcloud/nextcloudpi/commit/6cf07b2) (2017-09-14) added nc-static-IP
|
||||
|
||||
|
||||
35
docker/devel/Dockerfile
Normal file
35
docker/devel/Dockerfile
Normal file
@ -0,0 +1,35 @@
|
||||
# docker run -d -p 4443:4443 -p 443:443 -p 80:80 -v ncdata:/data --name nextcloudpi ownyourbits/nextcloudpi:devel
|
||||
# docker build . -f docker/devel/Dockerfile -t ownyourbits/nextcloudpi:devel
|
||||
|
||||
FROM ownyourbits/nextcloud
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
ENV DOCKERBUILD 1
|
||||
|
||||
COPY build-devel.sh /usr/local/etc/
|
||||
|
||||
RUN \
|
||||
apt-get update; \
|
||||
apt-get install --no-install-recommends -y wget ca-certificates git; \
|
||||
|
||||
# install nextcloudpi devel
|
||||
source /usr/local/etc/library.sh; \
|
||||
set +x; \
|
||||
cd /usr/local/etc/; \
|
||||
install_script build-devel.sh; \
|
||||
|
||||
# specific cleanup
|
||||
rm /usr/local/etc/build-devel.sh; \
|
||||
apt-get purge -y wget ca-certificates git; \
|
||||
|
||||
# package clean up
|
||||
apt-get autoremove -y; \
|
||||
apt-get clean; \
|
||||
rm -f /var/lib/apt/lists/*; \
|
||||
rm -rf /usr/share/man/*; \
|
||||
rm -rf /usr/share/doc/*; \
|
||||
rm -f /var/log/alternatives.log /var/log/apt/*; \
|
||||
rm /var/cache/debconf/*-old;
|
||||
@ -1,27 +0,0 @@
|
||||
# docker run -d -p 443:443 -p 80:80 -v ncdata:/data --name lamp ownyourbits/lamp
|
||||
# docker build . -f lamp.dockerfile -t ownyourbits/lamp-arm:latest
|
||||
|
||||
FROM ownyourbits/miniraspbian
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
COPY etc/library.sh lamp.sh /usr/local/etc/
|
||||
|
||||
# NOTE: move database to /data, which will be in a persistent volume
|
||||
RUN source /usr/local/etc/library.sh; set +x; install_script /usr/local/etc/lamp.sh; \
|
||||
apt-get autoremove -y; apt-get clean; rm /var/lib/apt/lists/* -f; rm -rf /usr/share/man/*; rm -rf /usr/share/doc/*; \
|
||||
mkdir -p /data/; \
|
||||
mv /var/lib/mysql /data/database; \
|
||||
sed -i "s|^datadir.*|datadir = /data/database|" /etc/mysql/mariadb.conf.d/50-server.cnf; \
|
||||
rm /data/database/ib_logfile*; \
|
||||
rm /var/cache/debconf/*-old; \
|
||||
rm /var/log/alternatives.log /var/log/apt/* ; \
|
||||
rm /usr/local/etc/{lamp.sh,library.sh}
|
||||
|
||||
COPY docker/run-lamp.sh /usr/local/bin/
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/run.sh"]
|
||||
|
||||
EXPOSE 80 443
|
||||
24
docker/lamp/010-lamp-run.sh
Executable file
24
docker/lamp/010-lamp-run.sh
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
case "$1" in
|
||||
stop)
|
||||
apachectl graceful-stop
|
||||
killall php-fpm7.0
|
||||
mysqladmin -u root shutdown
|
||||
echo "LAMP cleanup complete"
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "Starting PHP-fpm"
|
||||
php-fpm7.0 &
|
||||
|
||||
echo "Starting Apache"
|
||||
/usr/sbin/apache2ctl start
|
||||
|
||||
echo "Starting mariaDB"
|
||||
mysqld &
|
||||
|
||||
exit 0
|
||||
41
docker/lamp/Dockerfile
Normal file
41
docker/lamp/Dockerfile
Normal file
@ -0,0 +1,41 @@
|
||||
# docker run -d -p 443:443 -p 80:80 -v ncdata:/data --name lamp ownyourbits/lamp
|
||||
# docker build . -f lamp.dockerfile -t ownyourbits/lamp-arm:latest
|
||||
|
||||
FROM ownyourbits/miniraspbian
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
COPY etc/library.sh lamp.sh /usr/local/etc/
|
||||
|
||||
RUN \
|
||||
|
||||
# installation
|
||||
source /usr/local/etc/library.sh; \
|
||||
set +x; \
|
||||
install_script /usr/local/etc/lamp.sh; \
|
||||
|
||||
# mariaDB fixups (move database to /data, which will be in a persistent volume)
|
||||
mkdir -p /data/; \
|
||||
mv /var/lib/mysql /data/database; \
|
||||
sed -i "s|^datadir.*|datadir = /data/database|" /etc/mysql/mariadb.conf.d/50-server.cnf; \
|
||||
|
||||
# package cleanup
|
||||
apt-get autoremove -y; \
|
||||
apt-get clean; \
|
||||
rm /var/lib/apt/lists/* -f; \
|
||||
rm -rf /usr/share/man/*; \
|
||||
rm -rf /usr/share/doc/*; \
|
||||
rm /var/cache/debconf/*-old; \
|
||||
rm -f /var/log/alternatives.log /var/log/apt/*; \
|
||||
|
||||
# specific cleanup
|
||||
rm /data/database/ib_logfile*; \
|
||||
rm /usr/local/etc/{lamp.sh,library.sh}
|
||||
|
||||
COPY docker/lamp/010-lamp-run.sh /etc/cont-init.d/
|
||||
|
||||
ENTRYPOINT ["/run-parts.sh"]
|
||||
|
||||
EXPOSE 80 443
|
||||
@ -6,3 +6,6 @@ MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
CMD /bin/bash
|
||||
|
||||
RUN mkdir -p /etc/cont-init.d
|
||||
|
||||
COPY docker/miniraspbian/run-parts.sh /
|
||||
18
docker/miniraspbian/run-parts.sh
Executable file
18
docker/miniraspbian/run-parts.sh
Executable file
@ -0,0 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
cleanup()
|
||||
{
|
||||
for file in $( ls -1rv /etc/cont-init.d ); do
|
||||
/etc/cont-init.d/$file stop
|
||||
done
|
||||
exit
|
||||
}
|
||||
|
||||
trap cleanup SIGTERM
|
||||
|
||||
for file in $( ls -1v /etc/cont-init.d ); do
|
||||
/etc/cont-init.d/$file start
|
||||
done
|
||||
|
||||
echo "Init done"
|
||||
while true; do sleep 0.5; done # do nothing, just wait for trap from 'docker stop'
|
||||
@ -1,20 +0,0 @@
|
||||
# docker run -d -p 443:443 -p 80:80 -v ncdata:/data --name nextcloudpi ownyourbits/nextcloudpi
|
||||
# docker build . -f nextcloud.dockerfile -t ownyourbits/nextcloudpi:latest
|
||||
|
||||
FROM ownyourbits/lamp-arm
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
COPY etc/library.sh etc/nextcloudpi-config.d/nc-init.sh etc/nextcloudpi-config.d/nc-nextcloud.sh /usr/local/etc/
|
||||
|
||||
RUN apt-get update; apt-get install --no-install-recommends -y wget ca-certificates; \
|
||||
source /usr/local/etc/library.sh; set +x; activate_script /usr/local/etc/nc-nextcloud.sh; \
|
||||
apt-get purge -y wget ca-certificates libgnutls-deb0-28 libhogweed2 libicu52 libnettle4 libpsl0; \
|
||||
apt-get autoremove -y; apt-get clean; rm /var/lib/apt/lists/* -f; rm -rf /usr/share/man/*; rm -rf /usr/share/doc/*; \
|
||||
rm /var/log/apt/* ; \
|
||||
rm /var/cache/debconf/*-old; \
|
||||
rm /usr/local/etc/nc-nextcloud.sh
|
||||
|
||||
COPY docker/run-nc.sh /usr/local/bin/run.sh
|
||||
49
docker/nextcloud/020-nextcloud-run.sh
Executable file
49
docker/nextcloud/020-nextcloud-run.sh
Executable file
@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
NCDIR=/var/www/nextcloud
|
||||
OCC="$NCDIR/occ"
|
||||
|
||||
case "$1" in
|
||||
stop)
|
||||
echo "stopping cron..."
|
||||
killall cron
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# COPY NEXTCLOUD TO /data, WHICH WILL BE IN A PERSISTENT VOLUME (first run)
|
||||
test -d /data/app || {
|
||||
echo "Setting up persistent Nextcloud dir..."
|
||||
mv "$NCDIR" /data/app
|
||||
ln -s /data/app "$NCDIR"
|
||||
}
|
||||
|
||||
# INIT DATABASE AND NEXTCLOUD CONFIG (first run)
|
||||
test -f /data/app/config/config.php || {
|
||||
echo "Uninitialized instance, running nc-init..."
|
||||
source /usr/local/etc/library.sh
|
||||
cd /usr/local/etc/
|
||||
activate_script nc-init.sh
|
||||
}
|
||||
|
||||
# Trusted Domain ( as an argument )
|
||||
[[ "$@" != "" ]] && {
|
||||
IP=$( grep -oP '\d{1,3}(\.\d{1,3}){3}' <<< "$1" ) # validate that the first argument is a valid IP
|
||||
if [[ "$IP" != "" ]]; then
|
||||
sudo -u www-data php $OCC config:system:set trusted_domains 1 --value="$IP"
|
||||
else
|
||||
echo "First argument must be an IP address to include as a Trusted domain. Ignoring"
|
||||
fi
|
||||
}
|
||||
|
||||
# Trusted Domain ( local IP )
|
||||
IFACE=$( ip r | grep "default via" | awk '{ print $5 }' )
|
||||
IP=$( ip a | grep "global $IFACE" | grep -oP '\d{1,3}(\.\d{1,3}){3}' | head -1 )
|
||||
sudo -u www-data php $OCC config:system:set trusted_domains 2 --value="$IP"
|
||||
|
||||
echo "Starting cron"
|
||||
cron
|
||||
|
||||
exit 0
|
||||
44
docker/nextcloud/Dockerfile
Normal file
44
docker/nextcloud/Dockerfile
Normal file
@ -0,0 +1,44 @@
|
||||
# docker run -d -p 443:443 -p 80:80 -v ncdata:/data --name nextcloud ownyourbits/nextcloud
|
||||
# docker build . -f nextcloud.dockerfile -t ownyourbits/nextcloud:latest
|
||||
|
||||
FROM ownyourbits/lamp-arm
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
COPY etc/library.sh etc/nextcloudpi-config.d/nc-init.sh etc/nextcloudpi-config.d/nc-nextcloud.sh /usr/local/etc/
|
||||
|
||||
RUN \
|
||||
|
||||
# installation
|
||||
apt-get update; \
|
||||
apt-get install --no-install-recommends -y wget ca-certificates iputils-ping; \
|
||||
source /usr/local/etc/library.sh; \
|
||||
set +x; \
|
||||
activate_script /usr/local/etc/nc-nextcloud.sh; \
|
||||
|
||||
# package cleanup
|
||||
apt-get autoremove -y; \
|
||||
apt-get clean; \
|
||||
rm /var/lib/apt/lists/* -f; \
|
||||
rm -rf /usr/share/man/*; \
|
||||
rm -rf /usr/share/doc/*; \
|
||||
rm /var/cache/debconf/*-old; \
|
||||
rm -f /var/log/alternatives.log /var/log/apt/*; \
|
||||
|
||||
# specific cleanup
|
||||
apt-get purge -y wget ca-certificates; \
|
||||
rm /usr/local/etc/nc-nextcloud.sh
|
||||
|
||||
# TODO install make in noip:
|
||||
|
||||
# TODO consider pre-populating /data (volume overcopies)
|
||||
# TODO call cleanup() hooks for extras
|
||||
# TODO remove packages unneeded from lamp, wget...
|
||||
# # libudev1 util-linux
|
||||
# TODO remove mariadb client (reinstall mysqldump later, but that only)
|
||||
# apt-get purge -y wget ca-certificates libhogweed4 libnettle4 libpsl5
|
||||
# apt-get purge -y wget ca-certificates libgnutls-deb0-28 libhogweed2 libicu52 libnettle4 libpsl0
|
||||
|
||||
COPY docker/nextcloud/020-nextcloud-run.sh /etc/cont-init.d/
|
||||
25
docker/nextcloudpi/000-ncp-run.sh
Executable file
25
docker/nextcloudpi/000-ncp-run.sh
Executable file
@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
NCDIR=/var/www/nextcloud
|
||||
OCC="$NCDIR/occ"
|
||||
|
||||
# INIT SYSTEM CONFIG (first run)
|
||||
test -d /data/etc || {
|
||||
echo "Setting up system dir..."
|
||||
#mv /etc /data/etc
|
||||
#ln -s /data/etc /etc
|
||||
}
|
||||
|
||||
# INIT NCP CONFIG (first run)
|
||||
test -d /data/ncp || {
|
||||
echo "Setting up ncp dir..."
|
||||
mv /usr/local/etc/ /data/ncp
|
||||
ln -s /data/ncp /usr/local/etc
|
||||
}
|
||||
|
||||
# NC-INIT TODO copy all nextcloud folder?
|
||||
# INIT DATABASE AND NEXTCLOUD CONFIG
|
||||
#source /usr/local/etc/library.sh
|
||||
#activate_script /usr/local/etc/nextcloudpi-config.d/nc-init.sh
|
||||
|
||||
exit 0
|
||||
40
docker/nextcloudpi/Dockerfile
Normal file
40
docker/nextcloudpi/Dockerfile
Normal file
@ -0,0 +1,40 @@
|
||||
# docker run -d -p 4443:4443 -p 443:443 -p 80:80 -v ncdata:/data --name nextcloudpi ownyourbits/nextcloudpi
|
||||
# docker build . -f nextcloud.dockerfile -t ownyourbits/nextcloudpi:latest
|
||||
|
||||
FROM ownyourbits/nextcloudpi
|
||||
|
||||
MAINTAINER Ignacio Núñez Hernanz <nacho@ownyourbits.com>
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
ENV DOCKERBUILD 1
|
||||
|
||||
COPY nextcloudpi.sh /usr/local/etc/
|
||||
|
||||
RUN \
|
||||
apt-get update; \
|
||||
apt-get install --no-install-recommends -y wget ca-certificates; \
|
||||
|
||||
# install nextcloudpi
|
||||
source /usr/local/etc/library.sh; \
|
||||
set +x; \
|
||||
cd /usr/local/etc/; \
|
||||
install_script nextcloudpi.sh; \
|
||||
|
||||
# specific cleanup
|
||||
rm /usr/local/etc/nextcloudpi.sh; \
|
||||
apt-get purge -y wget ca-certificates; \
|
||||
|
||||
# package clean up
|
||||
apt-get autoremove -y; \
|
||||
apt-get clean; \
|
||||
rm -f /var/lib/apt/lists/*; \
|
||||
rm -rf /usr/share/man/*; \
|
||||
rm -rf /usr/share/doc/*; \
|
||||
rm -f /var/log/alternatives.log /var/log/apt/*; \
|
||||
rm /var/cache/debconf/*-old;
|
||||
|
||||
COPY docker/nextcloudpi/000-ncp-run.sh /etc/cont-init.d/
|
||||
|
||||
# 4443 - ncp-web
|
||||
EXPOSE 80 443 4443
|
||||
@ -1,27 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
cleanup()
|
||||
{
|
||||
apachectl graceful-stop
|
||||
killall php-fpm7.0
|
||||
mysqladmin -u root -pownyourbits shutdown
|
||||
killall cron
|
||||
echo "Cleanup complete"
|
||||
}
|
||||
|
||||
trap cleanup SIGTERM
|
||||
|
||||
echo "Starting PHP-fpm"
|
||||
php-fpm7.0 &
|
||||
|
||||
echo "Starting Apache"
|
||||
/usr/sbin/apache2ctl start
|
||||
|
||||
echo "Starting mariaDB"
|
||||
mysqld &
|
||||
|
||||
echo "Starting cron"
|
||||
cron
|
||||
|
||||
echo "Done"
|
||||
while true; do sleep 0.5; done # do nothing, just wait for trap from 'docker stop'
|
||||
@ -1,77 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
NCDIR=/var/www/nextcloud
|
||||
OCC="$NCDIR/occ"
|
||||
|
||||
cleanup()
|
||||
{
|
||||
apachectl graceful-stop
|
||||
killall php-fpm7.0
|
||||
mysqladmin -u root -pownyourbits shutdown
|
||||
killall cron
|
||||
echo "Cleanup complete"
|
||||
}
|
||||
|
||||
trap cleanup SIGTERM
|
||||
|
||||
echo "Starting PHP-fpm"
|
||||
php-fpm7.0 &
|
||||
|
||||
echo "Starting mariaDB"
|
||||
mysqld &
|
||||
|
||||
# WAIT FOR MARIADB
|
||||
while :; do
|
||||
[[ -S /var/run/mysqld/mysqld.sock ]] && break
|
||||
sleep 0.5
|
||||
done
|
||||
|
||||
## FIRST RUN: initialize NextCloud
|
||||
|
||||
test -d /data/app || {
|
||||
|
||||
echo "[First run]"
|
||||
|
||||
# INIT DATABASE AND NEXTCLOUD CONFIG
|
||||
source /usr/local/etc/library.sh
|
||||
activate_script /usr/local/etc/nextcloudpi-config.d/nc-init.sh
|
||||
|
||||
# COPY DATADIR TO /data, WHICH WILL BE IN A PERSISTENT VOLUME
|
||||
echo "Setting up persistent data dir..."
|
||||
cp -ra /"$NCDIR"/data /data/app
|
||||
sudo -u www-data php $OCC config:system:set datadirectory --value=/data/app
|
||||
|
||||
# COPY CONFIG TO /data, WHICH WILL BE IN A PERSISTENT VOLUME
|
||||
echo "Setting up persistent configuration..."
|
||||
test -e /data/config || mv /"$NCDIR"/config /data
|
||||
}
|
||||
|
||||
# Use persistent configuration
|
||||
test -e /data/config && {
|
||||
rm -rf /"$NCDIR"/config
|
||||
ln -s /data/config /"$NCDIR"/config
|
||||
}
|
||||
|
||||
# Trusted Domain ( as an argument )
|
||||
[[ "$@" != "" ]] && {
|
||||
IP=$( grep -oP '\d{1,3}(\.\d{1,3}){3}' <<< "$1" ) # validate that the first argument is a valid IP
|
||||
if [[ "$IP" != "" ]]; then
|
||||
sudo -u www-data php $OCC config:system:set trusted_domains 1 --value="$IP"
|
||||
else
|
||||
echo "First argument must be an IP address to include as a Trusted domain. Ignoring"
|
||||
fi
|
||||
}
|
||||
|
||||
# Trusted Domain ( local IP )
|
||||
IFACE=$( ip r | grep "default via" | awk '{ print $5 }' )
|
||||
IP=$( ip a | grep "global $IFACE" | grep -oP '\d{1,3}(\.\d{1,3}){3}' | head -1 )
|
||||
sudo -u www-data php $OCC config:system:set trusted_domains 2 --value="$IP"
|
||||
|
||||
echo "Starting Apache"
|
||||
/usr/sbin/apache2ctl start
|
||||
|
||||
echo "Starting cron"
|
||||
cron
|
||||
|
||||
echo "Done"
|
||||
while true; do sleep 0.5; done # do nothing, just wait for trap from 'docker stop'
|
||||
@ -141,6 +141,17 @@ function configure_script()
|
||||
)
|
||||
}
|
||||
|
||||
function persistent_cfgdir()
|
||||
{
|
||||
local SRCDIR="$1"
|
||||
local DSTDIR="${2:-/data/etc/$SRCDIR}"
|
||||
mkdir -p "$( basename "$DSTDIR" )"
|
||||
test -d "$DSTDIR" || {
|
||||
echo "Setting up $SRCDIR dir..."
|
||||
mv /etc/"$SRCDIR" "$DSTDIR"
|
||||
ln -s "$DSTDIR" /etc/"$SRCDIR"
|
||||
}
|
||||
}
|
||||
|
||||
# License
|
||||
#
|
||||
|
||||
9
lamp.sh
9
lamp.sh
@ -31,6 +31,7 @@ install()
|
||||
|
||||
$APTINSTALL apt-utils
|
||||
$APTINSTALL cron
|
||||
$APTINSTALL util-linux # TODO only need getopt (busybox?)
|
||||
$APTINSTALL apache2
|
||||
$APTINSTALL php7.0 php7.0-curl php7.0-gd php7.0-fpm php7.0-cli php7.0-opcache php7.0-mbstring php7.0-xml php7.0-zip php7.0-APC php7.0-fileinfo php7.0-mcrypt
|
||||
mkdir -p /run/php
|
||||
@ -122,6 +123,14 @@ EOF
|
||||
sed -i '/\[mysqld\]/ainnodb_file_per_table=1' /etc/mysql/mariadb.conf.d/50-server.cnf
|
||||
sed -i '/\[mysqld\]/ainnodb_file_format=barracuda' /etc/mysql/mariadb.conf.d/50-server.cnf
|
||||
|
||||
# launch mariadb if not already running (for docker build)
|
||||
[[ "$DOCKERBUILD" == 1 ]] && { mysqld & }
|
||||
|
||||
# wait for mariadb
|
||||
while :; do
|
||||
[[ -S /var/run/mysqld/mysqld.sock ]] && break
|
||||
sleep 0.5
|
||||
done
|
||||
mysql_secure_installation <<EOF
|
||||
$DBPASSWD
|
||||
n
|
||||
|
||||
@ -27,9 +27,10 @@ install()
|
||||
apt-get update
|
||||
$APTINSTALL dialog
|
||||
mkdir -p $CONFDIR
|
||||
sed -i '/Change User Password/i"0 NextCloudPi Configuration" "Configuration of NextCloudPi" \\\\' /usr/bin/raspi-config
|
||||
sed -i '/1\\\\ \*) do_change_pass ;;/i0\\\\ *) nextcloudpi-config ;;' /usr/bin/raspi-config
|
||||
|
||||
[[ "$DOCKERBUILD" != 1 ]] && {
|
||||
sed -i '/Change User Password/i"0 NextCloudPi Configuration" "Configuration of NextCloudPi" \\\\' /usr/bin/raspi-config
|
||||
sed -i '/1\\\\ \*) do_change_pass ;;/i0\\\\ *) nextcloudpi-config ;;' /usr/bin/raspi-config
|
||||
}
|
||||
|
||||
# NEXTCLOUDPI-CONFIG WEB
|
||||
##########################################
|
||||
@ -120,12 +121,12 @@ done
|
||||
cd /var/www/nextcloud
|
||||
sudo -u www-data php occ config:system:set trusted_domains 1 --value=$IP
|
||||
EOF
|
||||
systemctl enable nextcloud-domain # make sure this is called on last re-boot
|
||||
|
||||
# make sure this is called on last re-boot
|
||||
[[ "$DOCKERBUILD" != 1 ]] && systemctl enable nextcloud-domain
|
||||
|
||||
# NEXTCLOUDPI UPDATES
|
||||
##########################################
|
||||
$APTINSTALL git
|
||||
|
||||
cat > /etc/cron.daily/ncp-check-version <<EOF
|
||||
#!/bin/sh
|
||||
/usr/local/bin/ncp-check-version
|
||||
@ -139,8 +140,10 @@ EOF
|
||||
sed -i "s|^;\?sys_temp_dir =.*$|sys_temp_dir = $UPLOADTMPDIR|" /etc/php/7.0/fpm/php.ini
|
||||
|
||||
# update to latest version from github as part of the build process
|
||||
$APTINSTALL git
|
||||
wget https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/bin/ncp-update -O /usr/local/bin/ncp-update
|
||||
chmod a+x /usr/local/bin/ncp-update
|
||||
|
||||
/usr/local/bin/ncp-update
|
||||
|
||||
# Optional packets for Nextcloud and Apps
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user