Up
This commit is contained in:
parent
24bee4c85e
commit
c084dd2a19
7 changed files with 86 additions and 22 deletions
22
db-init.d/create-multiple-postgresql-databases.sh
Normal file
22
db-init.d/create-multiple-postgresql-databases.sh
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
|
||||
function create_user_and_database() {
|
||||
local database=$1
|
||||
echo " Creating user and database '$database'"
|
||||
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL
|
||||
CREATE USER $database;
|
||||
CREATE DATABASE $database;
|
||||
GRANT ALL PRIVILEGES ON DATABASE $database TO $database;
|
||||
EOSQL
|
||||
}
|
||||
|
||||
if [ -n "$POSTGRES_MULTIPLE_DATABASES" ]; then
|
||||
echo "Multiple database creation requested: $POSTGRES_MULTIPLE_DATABASES"
|
||||
for db in $(echo $POSTGRES_MULTIPLE_DATABASES | tr ',' ' '); do
|
||||
create_user_and_database $db
|
||||
done
|
||||
echo "Multiple databases created"
|
||||
fi
|
||||
4
db.env
Normal file
4
db.env
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
MYSQL_ROOT_PASSWORD=root
|
||||
MYSQL_USER=nextcloud
|
||||
MYSQL_PASSWORD=nextcloud
|
||||
MYSQL_DATABASE=nextcloud
|
||||
|
|
@ -7,9 +7,10 @@ volumes:
|
|||
# vhost.d:
|
||||
html:
|
||||
#NextCloud
|
||||
nc-appdata:
|
||||
nc-data:
|
||||
nc-userdata:
|
||||
nc-apps:
|
||||
db-data:
|
||||
|
||||
networks:
|
||||
proxy-tier:
|
||||
|
|
@ -17,12 +18,12 @@ networks:
|
|||
services:
|
||||
# ============ NextCloud
|
||||
nextcloud:
|
||||
image: nextcloud
|
||||
build: ./images/nc
|
||||
restart: always
|
||||
expose:
|
||||
- 80
|
||||
volumes:
|
||||
- nc-appdata:/var/www/html
|
||||
- nc-data:/var/www/html
|
||||
- nc-userdata:/var/www/html/data
|
||||
- nc-apps:/var/www/html/apps
|
||||
environment:
|
||||
|
|
@ -34,25 +35,37 @@ services:
|
|||
- OVERWRITEPROTOCOL=https
|
||||
- NEXTCLOUD_ADMIN_USER=Super
|
||||
- "NEXTCLOUD_ADMIN_PASSWORD=&3Qv%CQCGp>zs-!f"
|
||||
- OBJECTSTORE_S3_HOST=axkurj1fnll3.compat.objectstorage.sa-santiago-1.oraclecloud.com
|
||||
- OBJECTSTORE_S3_BUCKET=palta.cyou-nextcloud-standard-1
|
||||
- OBJECTSTORE_S3_KEY=40b34022e06916f8c1ce17cd3dc93438465feb00
|
||||
- OBJECTSTORE_S3_SECRET=uZDPc7J6oic5p3S0BWBJm0YojLtDsL+Ukjh8MdSCxNs=
|
||||
- OBJECTSTORE_S3_HOST=s3.us-west-001.backblazeb2.com
|
||||
- OBJECTSTORE_S3_BUCKET=paltas
|
||||
- OBJECTSTORE_S3_KEY=001602c9b6d6e420000000001
|
||||
- OBJECTSTORE_S3_SECRET=K001WXz69MkRgVKk+7DP4mwbZYXe2fQ
|
||||
- OBJECTSTORE_S3_PORT=443
|
||||
- OBJECTSTORE_S3_SSL=true
|
||||
- OBJECTSTORE_S3_REGION=sa-santiago-1
|
||||
- OBJECTSTORE_S3_REGION=us-west-001
|
||||
- OBJECTSTORE_S3_USEPATH_STYLE=true
|
||||
- POSTGRES_HOST=db
|
||||
- REDIS_HOST=redis
|
||||
env_file:
|
||||
- db.env
|
||||
networks:
|
||||
- default
|
||||
- proxy-tier
|
||||
depends_on:
|
||||
- reverse_proxy
|
||||
- db
|
||||
- redis
|
||||
|
||||
nextcloud-janitor:
|
||||
image: nextcloud
|
||||
build: ./images/nc
|
||||
restart: always
|
||||
volumes:
|
||||
- nc-appdata:/var/www/html
|
||||
- nc-data:/var/www/html
|
||||
- nc-userdata:/var/www/html/data
|
||||
- nc-apps:/var/www/html/apps
|
||||
entrypoint: /cron.sh
|
||||
# depends_on:
|
||||
depends_on:
|
||||
- db
|
||||
- redis
|
||||
|
||||
# =========== SSL
|
||||
|
||||
|
|
@ -78,7 +91,7 @@ services:
|
|||
volumes:
|
||||
- certs:/etc/nginx/certs
|
||||
- acme:/etc/acme.sh
|
||||
- ./vhost.d:/etc/nginx/vhost.d:ro
|
||||
- ./vhost.d:/etc/nginx/vhost.d
|
||||
- html:/usr/share/nginx/html
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
networks:
|
||||
|
|
@ -88,3 +101,19 @@ services:
|
|||
environment:
|
||||
#- ACME_CA_URI=https://acme-staging-v02.api.letsencrypt.org/directory # test-server
|
||||
- DEFAULT_EMAIL=admin@uwu.email
|
||||
|
||||
db:
|
||||
# container_name: db
|
||||
image: postgres:14-alpine
|
||||
restart: always
|
||||
ports:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- db-data:/var/lib/postgresql/data
|
||||
env_file:
|
||||
- db.env
|
||||
shm_size: 256MB
|
||||
|
||||
redis:
|
||||
image: redis:alpine
|
||||
restart: always
|
||||
|
|
|
|||
4
docker-update.sh
Executable file
4
docker-update.sh
Executable file
|
|
@ -0,0 +1,4 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
docker compose up --force-recreate --build -d --pull always
|
||||
docker image prune -f
|
||||
5
images/nc/Dockerfile
Normal file
5
images/nc/Dockerfile
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
FROM nextcloud:25.0
|
||||
|
||||
RUN echo "*/5 * * * * php -f /var/www/nextcloud/occ preview:pre-generate">> /var/spool/cron/crontabs/www-data
|
||||
RUN apt-get update && apt-get install -y ffmpeg imagemagick \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
## Start of configuration add by letsencrypt container
|
||||
location ^~ /.well-known/acme-challenge/ {
|
||||
auth_basic off;
|
||||
auth_request off;
|
||||
allow all;
|
||||
root /usr/share/nginx/html;
|
||||
try_files $uri =404;
|
||||
break;
|
||||
}
|
||||
## End of configuration add by letsencrypt container
|
||||
|
|
@ -1,3 +1,13 @@
|
|||
## Start of configuration add by letsencrypt container
|
||||
location ^~ /.well-known/acme-challenge/ {
|
||||
auth_basic off;
|
||||
auth_request off;
|
||||
allow all;
|
||||
root /usr/share/nginx/html;
|
||||
try_files $uri =404;
|
||||
break;
|
||||
}
|
||||
## End of configuration add by letsencrypt container
|
||||
# From: https://github.com/nextcloud/docker/blob/85e22b4a8e6b12d82d574c7eacd68656dac85bf5/.examples/docker-compose/with-nginx-proxy/postgres/fpm/proxy/uploadsize.conf
|
||||
client_max_body_size 10G;
|
||||
proxy_request_buffering off;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue