Fully reordered file structure. All files splitted by servises. Manuals will be added where needed.
This commit is contained in:
		
							
								
								
									
										1
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | All yaml configs using stack.env variables, as they was designed to be used with Portainer | ||||||
							
								
								
									
										5
									
								
								ddns-cloudflare/cloudflare_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								ddns-cloudflare/cloudflare_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # Cloudflare API key. User -> My Profile -> API tokens | ||||||
|  | CLOUDFLARE_API=your_api_key | ||||||
|  |  | ||||||
|  | # Cloudflare zone, which will be used. Dashboard -> Web Sites | ||||||
|  | ZONE=your_zone | ||||||
							
								
								
									
										14
									
								
								ddns-cloudflare/ddns-cloudflare.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								ddns-cloudflare/ddns-cloudflare.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | version: '2' | ||||||
|  | services: | ||||||
|  |   cloudflare-ddns: | ||||||
|  |     container_name: ddns-cloudflare | ||||||
|  |     image: oznu/cloudflare-ddns:latest | ||||||
|  |     restart: always | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     environment: | ||||||
|  |       - API_KEY=${CLOUDFLARE_API} | ||||||
|  |       - ZONE=${ZONE} | ||||||
|  |       - PROXIED=true | ||||||
|  |       - PUID=1000 | ||||||
|  |       - PGID=1000 | ||||||
							
								
								
									
										15
									
								
								heimdall/heimdall.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								heimdall/heimdall.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | |||||||
|  | version: "2.1" | ||||||
|  | services: | ||||||
|  |   heimdall: | ||||||
|  |     image: lscr.io/linuxserver/heimdall:latest | ||||||
|  |     container_name: heimdall | ||||||
|  |     environment: | ||||||
|  |       - PUID=1000 | ||||||
|  |       - PGID=1000 | ||||||
|  |       - TZ=Europe/Warsaw | ||||||
|  |     volumes: | ||||||
|  |       - /home/mbuz/docker/heimdall/config:/config | ||||||
|  |     ports: | ||||||
|  |       - 80:80 | ||||||
|  |       - 443:443 | ||||||
|  |     restart: unless-stopped | ||||||
							
								
								
									
										4
									
								
								immich/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								immich/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | Sometimes Immich may return error 500 after startup. It helps to stop all containers and then start them in that order: | ||||||
|  | 1. immich_postgres, immich_redis, immich_typesense | ||||||
|  | 2. Here you need to wait 3-5 minutes to be sure, that typesense is running correctly | ||||||
|  | 3. Rest of the containers, including immich_server | ||||||
							
								
								
									
										98
									
								
								immich/immich.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										98
									
								
								immich/immich.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,98 @@ | |||||||
|  | version: "3.8" | ||||||
|  |  | ||||||
|  | services: | ||||||
|  |   immich-server: | ||||||
|  |     container_name: immich_server | ||||||
|  |     image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} | ||||||
|  |     command: [ "start.sh", "immich" ] | ||||||
|  |     volumes: | ||||||
|  |       - ${UPLOAD_LOCATION}:/usr/src/app/upload | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     depends_on: | ||||||
|  |       - redis | ||||||
|  |       - database | ||||||
|  |       - typesense | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   immich-microservices: | ||||||
|  |     container_name: immich_microservices | ||||||
|  |     image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} | ||||||
|  |     # extends: | ||||||
|  |     #   file: hwaccel.yml | ||||||
|  |     #   service: hwaccel | ||||||
|  |     command: [ "start.sh", "microservices" ] | ||||||
|  |     volumes: | ||||||
|  |       - ${UPLOAD_LOCATION}:/usr/src/app/upload | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     depends_on: | ||||||
|  |       - redis | ||||||
|  |       - database | ||||||
|  |       - typesense | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   immich-machine-learning: | ||||||
|  |     container_name: immich_machine_learning | ||||||
|  |     image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} | ||||||
|  |     volumes: | ||||||
|  |       - model-cache:/cache | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   immich-web: | ||||||
|  |     container_name: immich_web | ||||||
|  |     image: ghcr.io/immich-app/immich-web:${IMMICH_VERSION:-release} | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   typesense: | ||||||
|  |     container_name: immich_typesense | ||||||
|  |     image: typesense/typesense:0.24.1@sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd | ||||||
|  |     environment: | ||||||
|  |       - TYPESENSE_API_KEY=${TYPESENSE_API_KEY} | ||||||
|  |       - TYPESENSE_DATA_DIR=/data | ||||||
|  |       # remove this to get debug messages | ||||||
|  |       - GLOG_minloglevel=1 | ||||||
|  |     volumes: | ||||||
|  |       - tsdata:/data | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   redis: | ||||||
|  |     container_name: immich_redis | ||||||
|  |     image: redis:6.2-alpine@sha256:70a7a5b641117670beae0d80658430853896b5ef269ccf00d1827427e3263fa3 | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   database: | ||||||
|  |     container_name: immich_postgres | ||||||
|  |     image: postgres:14-alpine@sha256:28407a9961e76f2d285dc6991e8e48893503cc3836a4755bbc2d40bcc272a441 | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     environment: | ||||||
|  |       POSTGRES_PASSWORD: ${DB_PASSWORD} | ||||||
|  |       POSTGRES_USER: ${DB_USERNAME} | ||||||
|  |       POSTGRES_DB: ${DB_DATABASE_NAME} | ||||||
|  |     volumes: | ||||||
|  |       - pgdata:/var/lib/postgresql/data | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |   immich-proxy: | ||||||
|  |     container_name: immich_proxy | ||||||
|  |     image: ghcr.io/immich-app/immich-proxy:${IMMICH_VERSION:-release} | ||||||
|  |     environment: | ||||||
|  |       # Make sure these values get passed through from the env file | ||||||
|  |       - IMMICH_SERVER_URL | ||||||
|  |       - IMMICH_WEB_URL | ||||||
|  |     ports: | ||||||
|  |       - 2283:8080 | ||||||
|  |     depends_on: | ||||||
|  |       - immich-server | ||||||
|  |       - immich-web | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  | volumes: | ||||||
|  |   pgdata: | ||||||
|  |   model-cache: | ||||||
|  |   tsdata: | ||||||
							
								
								
									
										23
									
								
								immich/immich_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								immich/immich_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | |||||||
|  | # You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables | ||||||
|  |  | ||||||
|  | # The location where your uploaded files are stored | ||||||
|  | UPLOAD_LOCATION=/path/to/media/folder | ||||||
|  |  | ||||||
|  | # The Immich version to use. You can pin this to a specific version like "v1.71.0" | ||||||
|  | IMMICH_VERSION=release | ||||||
|  |  | ||||||
|  | # Connection secrets for postgres and typesense. You should change these to random passwords | ||||||
|  | TYPESENSE_API_KEY=some_random_text | ||||||
|  | DB_PASSWORD=strong_password | ||||||
|  |  | ||||||
|  | # The values below this line do not need to be changed | ||||||
|  | ################################################################################### | ||||||
|  | DB_HOSTNAME=immich_postgres | ||||||
|  | DB_USERNAME=postgres | ||||||
|  | DB_DATABASE_NAME=immich | ||||||
|  |  | ||||||
|  | REDIS_HOSTNAME=immich_redis | ||||||
|  |  | ||||||
|  | # Uncomment and change, if you need to use Immich with proxy | ||||||
|  | # IMMICH_WEB_URLL= | ||||||
|  | # IMMICH_SERVER_URL= | ||||||
							
								
								
									
										48
									
								
								nextcloud/nextcloud.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								nextcloud/nextcloud.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,48 @@ | |||||||
|  | version: '3.3' | ||||||
|  | services: | ||||||
|  |  nextcloud: | ||||||
|  |     image: lscr.io/linuxserver/nextcloud:latest | ||||||
|  |     container_name: nextcloud | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     environment: | ||||||
|  |       - PUID=1000 | ||||||
|  |       - PGID=1000 | ||||||
|  |       - PHP_MEMORY_LIMIT=${PHP_MEMORY_LIMIT} | ||||||
|  |       - PHP_UPLOAD_LIMIT=${PHP_UPLOAD_LIMIT} | ||||||
|  |       - TZ=${TZ} | ||||||
|  |  | ||||||
|  |     volumes: | ||||||
|  |       - ${CONFIG}:/config | ||||||
|  |       - ${DATA}:/data | ||||||
|  |     ports: | ||||||
|  |       - 5443:443 | ||||||
|  |     restart: unless-stopped | ||||||
|  |     links: | ||||||
|  |       - nextcloud-mariadb | ||||||
|  |     depends_on: | ||||||
|  |       - nextcloud-mariadb | ||||||
|  |      | ||||||
|  |  nextcloud-mariadb: | ||||||
|  |     image: lscr.io/linuxserver/mariadb:latest | ||||||
|  |     container_name: nextloud-mariadb | ||||||
|  |     environment: | ||||||
|  |       - PUID=1000 | ||||||
|  |       - PGID=1000 | ||||||
|  |       - TZ=${TZ} | ||||||
|  |       - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} | ||||||
|  |       - MYSQL_DATABASE=nextcloud | ||||||
|  |       - MYSQL_USER=nextcloud | ||||||
|  |       - MYSQL_PASSWORD=${MYSQL_PASSWORD} | ||||||
|  |  | ||||||
|  |     volumes: | ||||||
|  |       - ${MARIADB}:/config | ||||||
|  |     ports: | ||||||
|  |       - 5306:3306 | ||||||
|  |     restart: unless-stopped | ||||||
|  |  | ||||||
|  |      | ||||||
|  | networks: | ||||||
|  |   default: | ||||||
|  |     name: nextcloud | ||||||
|  |     driver: bridge | ||||||
							
								
								
									
										21
									
								
								nextcloud/nextcoud_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								nextcloud/nextcoud_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | |||||||
|  | # Overall and upload PHP limits | ||||||
|  | PHP_MEMORY_LIMIT=2048M | ||||||
|  | PHP_UPLOAD_LIMIT=5120M | ||||||
|  |  | ||||||
|  | # Timezone | ||||||
|  | TZ=Europe/Warsaw | ||||||
|  |  | ||||||
|  | # Where config will be stored | ||||||
|  | CONFIG=/path/to/config_folder | ||||||
|  |  | ||||||
|  | # Where the data (files) will be stored | ||||||
|  | DATA=/path/to/data_folder | ||||||
|  |  | ||||||
|  | # MySQL password for the root account | ||||||
|  | MYSQL_ROOT_PASSWORD=super_duper_strong_password | ||||||
|  |  | ||||||
|  | # MySQL password for the nextcloud account | ||||||
|  | MYSQL_PASSWORD=another_one_strong_password | ||||||
|  |  | ||||||
|  | # Folder, where database will be stored  | ||||||
|  | MARIADB=/path/to/mariadb/folder | ||||||
							
								
								
									
										14
									
								
								nginx-proxy-manager/nginx-proxy.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								nginx-proxy-manager/nginx-proxy.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | version: '3.8' | ||||||
|  | services: | ||||||
|  |   app: | ||||||
|  |     image: jc21/nginx-proxy-manager:latest | ||||||
|  |     restart: unless-stopped | ||||||
|  |     env_file: | ||||||
|  |       - stack.env | ||||||
|  |     ports: | ||||||
|  |       - 1080:80 | ||||||
|  |       - 1081:81 | ||||||
|  |       - 10443:443 | ||||||
|  |     volumes: | ||||||
|  |       - ${NGINX_DATA}:/data | ||||||
|  |       - ${NGINX_LETSENCRYPT}:/etc/letsencrypt | ||||||
							
								
								
									
										5
									
								
								nginx-proxy-manager/nginx_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								nginx-proxy-manager/nginx_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # Where the proxy data will be stored | ||||||
|  | NGINX_DATA=/path/to/nginx/data_folder | ||||||
|  |  | ||||||
|  | # Where the Letsencrypt data will be stored | ||||||
|  | NGINX_LETSENCRYPT=/path/to/letsencrypt/data_folder | ||||||
							
								
								
									
										14
									
								
								portainer/portainer.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								portainer/portainer.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | version: "3" | ||||||
|  | services: | ||||||
|  |   portainer: | ||||||
|  |     image: portainer/portainer-ce:latest | ||||||
|  |     ports: | ||||||
|  |       - 9443:9443     | ||||||
|  |     env_file: | ||||||
|  |       - stack.env     | ||||||
|  |     volumes: | ||||||
|  |         - ${PORTAINER_DATA}:/data | ||||||
|  |         - /var/run/docker.sock:/var/run/docker.sock | ||||||
|  |     restart: unless-stopped | ||||||
|  | volumes: | ||||||
|  |   data: | ||||||
							
								
								
									
										2
									
								
								portainer/portainer_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								portainer/portainer_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | |||||||
|  | # Path where thr Portainer data will be stored on the host | ||||||
|  | PORTAINER_DATA=/path/to/portainer/data | ||||||
							
								
								
									
										21
									
								
								webtop/webtop.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								webtop/webtop.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | |||||||
|  | version: "2.1" | ||||||
|  | services: | ||||||
|  |   webtop: | ||||||
|  |     image: lscr.io/linuxserver/webtop:debian-mate | ||||||
|  |     container_name: webtop | ||||||
|  |     env_file: | ||||||
|  |       - stack.env      | ||||||
|  |     environment: | ||||||
|  |       - PUID=1000 | ||||||
|  |       - PGID=1000 | ||||||
|  |       - TZ=Europe/Warsaw | ||||||
|  | #      - CUSTOM_USER=user | ||||||
|  | #      - PASSWORD=password | ||||||
|  |     volumes: | ||||||
|  |       - /home/mbuz/docker/webtop:/config | ||||||
|  |     ports: | ||||||
|  |       - 3000:3000 | ||||||
|  |     devices: | ||||||
|  |       - /dev/dri:/dev/dri #optional | ||||||
|  |     shm_size: "2gb" #optional | ||||||
|  |     restart: unless-stopped | ||||||
							
								
								
									
										2
									
								
								webtop/webtop_example.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								webtop/webtop_example.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | |||||||
|  | # Where webtop config will be stored | ||||||
|  | CONFIG=/path/to/webtop/data | ||||||
		Reference in New Issue
	
	Block a user
	 Max Buz
					Max Buz