mirror of
				https://github.com/dustinbrun/docker-compose-homeserver.git
				synced 2025-11-04 06:47:31 +01:00 
			
		
		
		
	Version 1
This commit is contained in:
		
							
								
								
									
										46
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								README.md
									
									
									
									
									
								
							@@ -1,2 +1,48 @@
 | 
				
			|||||||
# docker-compose-homeserver
 | 
					# docker-compose-homeserver
 | 
				
			||||||
Docker Compose application templates for homeserver setup
 | 
					Docker Compose application templates for homeserver setup
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In this repository I share my docker-compose files, which I use in my homeserver environment.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<br>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# How to use these Files
 | 
				
			||||||
 | 
					These Containers are designed to work on a Debain based machine.
 | 
				
			||||||
 | 
					<br>You need to install docker (see https://docs.docker.com/engine/install/debian/) 
 | 
				
			||||||
 | 
					<br>and docker-compose (see https://docs.docker.com/compose/install/). 
 | 
				
			||||||
 | 
					<br>I also recommend to install portainer to monitor your created containers (see https://documentation.portainer.io/v2.0/deploy/ceinstalldocker/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For each application there is a seperate folder.
 | 
				
			||||||
 | 
					You need to place these folders in your home-directory, for example into `/root`. The docker-compose files are designed in a way, that all configuration- and data-folders are stored in these application folders. If you want to backup your containers you simply backup these folders and you can restore them easily.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To deploy a container, go into the application-folder and type: 
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					docker-compose up -d
 | 
				
			||||||
 | 
					``` 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Application List
 | 
				
			||||||
 | 
					| Name      | Description  |
 | 
				
			||||||
 | 
					| --------  | ------------ |
 | 
				
			||||||
 | 
					| gitea     | self-hosted Git service |
 | 
				
			||||||
 | 
					| hedgedoc  | collaborative (multi user) markdown editor |
 | 
				
			||||||
 | 
					| icecast   | audio streaming server |
 | 
				
			||||||
 | 
					| nextcloud | online file server / personal cloud |
 | 
				
			||||||
 | 
					| onlyoffice | webbrowser based office software, used with nextcloud 
 | 
				
			||||||
 | 
					| npm       | nginx proxy manager, nginy proxy with web ui |
 | 
				
			||||||
 | 
					| wordpress | content management system (CMS) / blog software |
 | 
				
			||||||
 | 
					| synapse   | Matrix server, personal chat server |
 | 
				
			||||||
 | 
					| matrix-extensions | synapse-admin - User management for synapse with web ui |
 | 
				
			||||||
 | 
					|                   | element-web - Web Messenger client for matrix/element |
 | 
				
			||||||
 | 
					| duplicati | Automated backup software with web ui |
 | 
				
			||||||
 | 
					| overleaf | web based latex text editor with live preview (sharelatex) |
 | 
				
			||||||
 | 
					| lychee | web photo gallery |
 | 
				
			||||||
 | 
					| piwigo | web photo gallery <- Best one in my Opinion |
 | 
				
			||||||
 | 
					| picapport | web photo gallery |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<br><br>
 | 
				
			||||||
 | 
					# Sources
 | 
				
			||||||
 | 
					Most of these Files I have not written myself. I found these accross the web and somtimes adapted them to my needs. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Mainly these are the template files created by the respective developer of the application. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dustinbrun
 | 
				
			||||||
							
								
								
									
										17
									
								
								duplicati/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								duplicati/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					version: "2.1"
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  duplicati:
 | 
				
			||||||
 | 
					    image: ghcr.io/linuxserver/duplicati
 | 
				
			||||||
 | 
					    container_name: duplicati
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - PUID=0
 | 
				
			||||||
 | 
					      - PGID=0
 | 
				
			||||||
 | 
					      - TZ=Europe/Berlin
 | 
				
			||||||
 | 
					     # - CLI_ARGS= #optional
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./config:/config
 | 
				
			||||||
 | 
					      - ./backups:/backups
 | 
				
			||||||
 | 
					      - ./source:/source
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 8200:8200
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
							
								
								
									
										46
									
								
								gitea/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								gitea/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,46 @@
 | 
				
			|||||||
 | 
					version: "2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					networks:
 | 
				
			||||||
 | 
					  gitea:
 | 
				
			||||||
 | 
					    external: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  server:
 | 
				
			||||||
 | 
					   image: gitea/gitea:latest
 | 
				
			||||||
 | 
					   environment:
 | 
				
			||||||
 | 
					     - USER_UID=1000
 | 
				
			||||||
 | 
					     - USER_GID=1000
 | 
				
			||||||
 | 
					     - DB_TYPE=mysql
 | 
				
			||||||
 | 
					     - DB_HOST=db:3306
 | 
				
			||||||
 | 
					     - DB_NAME=gitea
 | 
				
			||||||
 | 
					     - DB_USER=gitea
 | 
				
			||||||
 | 
					     - DB_PASSWD=123456
 | 
				
			||||||
 | 
					     - APP_NAME=My_Git_Server
 | 
				
			||||||
 | 
					     - DISABLE_SSH=true
 | 
				
			||||||
 | 
					     - DISABLE_REGISTRATION=true
 | 
				
			||||||
 | 
					     - DOMAIN=git.local
 | 
				
			||||||
 | 
					   restart: always
 | 
				
			||||||
 | 
					   networks:
 | 
				
			||||||
 | 
					     - gitea
 | 
				
			||||||
 | 
					   volumes:
 | 
				
			||||||
 | 
					     - ./gitea:/data
 | 
				
			||||||
 | 
					     - /etc/timezone:/etc/timezone:ro
 | 
				
			||||||
 | 
					     - /etc/localtime:/etc/localtime:ro
 | 
				
			||||||
 | 
					   ports:
 | 
				
			||||||
 | 
					     - "3000:3000"
 | 
				
			||||||
 | 
					     - "222:22"
 | 
				
			||||||
 | 
					   depends_on:
 | 
				
			||||||
 | 
					     - db
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					    image: mysql:5.7
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=123456
 | 
				
			||||||
 | 
					      - MYSQL_USER=gitea
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=123456
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=gitea
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - gitea
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./mysql:/var/lib/mysql
 | 
				
			||||||
							
								
								
									
										35
									
								
								hedgedoc/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								hedgedoc/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
				
			|||||||
 | 
					version: "3"
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  mariadb:
 | 
				
			||||||
 | 
					    image: ghcr.io/linuxserver/mariadb:latest
 | 
				
			||||||
 | 
					    container_name: hedgedoc_mariadb
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./db_config:/config
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=123456
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=hedgedoc
 | 
				
			||||||
 | 
					      - MYSQL_USER=hedgedoc
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=123456
 | 
				
			||||||
 | 
					      - PGID=0
 | 
				
			||||||
 | 
					      - PUID=0
 | 
				
			||||||
 | 
					      - TZ=Europe/Berlin
 | 
				
			||||||
 | 
					  hedgedoc:
 | 
				
			||||||
 | 
					    image: ghcr.io/linuxserver/hedgedoc:latest
 | 
				
			||||||
 | 
					    container_name: hedgedoc
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - mariadb
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./config:/config
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - DB_HOST=mariadb
 | 
				
			||||||
 | 
					      - DB_USER=hedgedoc
 | 
				
			||||||
 | 
					      - DB_PASS=123456
 | 
				
			||||||
 | 
					      - DB_NAME=hedgedoc
 | 
				
			||||||
 | 
					      - DB_PORT=3306
 | 
				
			||||||
 | 
					      - PGID=0
 | 
				
			||||||
 | 
					      - PUID=0
 | 
				
			||||||
 | 
					      - TZ=Europe/Berlin
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "86:3000"
 | 
				
			||||||
							
								
								
									
										18
									
								
								icecast/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								icecast/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					version: "2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  icecast:
 | 
				
			||||||
 | 
					   image: infiniteproject/icecast:latest
 | 
				
			||||||
 | 
					   environment:
 | 
				
			||||||
 | 
					     - ICECAST_HOSTNAME=My_Stream
 | 
				
			||||||
 | 
					     - ICECAST_ADMIN_PASSWORD=changeme
 | 
				
			||||||
 | 
					     - ICECAST_ADMIN_USERNAME=admin
 | 
				
			||||||
 | 
					     - ICECAST_SOURCE_PASSWORD=changeme
 | 
				
			||||||
 | 
					     - ICECAST_LOCATION=My_home
 | 
				
			||||||
 | 
					     - ICECAST_MAX_CLIENTS=25
 | 
				
			||||||
 | 
					     - ICECAST_MAX_SOURCES=5
 | 
				
			||||||
 | 
					   restart: always
 | 
				
			||||||
 | 
					#   volumes:
 | 
				
			||||||
 | 
					#     - ./config:/etc/icecast2
 | 
				
			||||||
 | 
					   ports:
 | 
				
			||||||
 | 
					     - "85:8000"
 | 
				
			||||||
							
								
								
									
										83
									
								
								lychee/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								lychee/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,83 @@
 | 
				
			|||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					#  Docker Compose
 | 
				
			||||||
 | 
					# @RobLandry
 | 
				
			||||||
 | 
					# Repo : https://github.com/LycheeOrg/Lychee-Laravel-Docker
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					version: '3'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  lychee_db:
 | 
				
			||||||
 | 
					    container_name: lychee_db
 | 
				
			||||||
 | 
					    image: mariadb:10
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=lychee
 | 
				
			||||||
 | 
					      - MYSQL_USER=lychee
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=changeme
 | 
				
			||||||
 | 
					    expose: 
 | 
				
			||||||
 | 
					      - 3306
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./mysql:/var/lib/mysql
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - lychee
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  lychee:
 | 
				
			||||||
 | 
					    image: lycheeorg/lychee
 | 
				
			||||||
 | 
					    container_name: lychee
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 90:80
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./lychee/conf:/conf
 | 
				
			||||||
 | 
					      - ./lychee/uploads:/uploads
 | 
				
			||||||
 | 
					      - ./lychee/sym:/sym
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - lychee
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      #- PUID=1000
 | 
				
			||||||
 | 
					      #- PGID=1000
 | 
				
			||||||
 | 
					      # PHP timezone e.g. PHP_TZ=America/New_York
 | 
				
			||||||
 | 
					      - PHP_TZ=Germany/Berlin
 | 
				
			||||||
 | 
					      #- APP_NAME=Laravel
 | 
				
			||||||
 | 
					      #- APP_ENV=local
 | 
				
			||||||
 | 
					      #- APP_DEBUG=true
 | 
				
			||||||
 | 
					      #- APP_URL=http://localhost
 | 
				
			||||||
 | 
					      #- LOG_CHANNEL=stack
 | 
				
			||||||
 | 
					      - DB_CONNECTION=mysql
 | 
				
			||||||
 | 
					      - DB_HOST=lychee_db
 | 
				
			||||||
 | 
					      - DB_PORT=3306
 | 
				
			||||||
 | 
					      - DB_DATABASE=lychee
 | 
				
			||||||
 | 
					      - DB_USERNAME=lychee
 | 
				
			||||||
 | 
					      - DB_PASSWORD=changeme
 | 
				
			||||||
 | 
					      #- DB_DROP_CLEAR_TABLES_ON_ROLLBACK=false
 | 
				
			||||||
 | 
					      #- DB_OLD_LYCHEE_PREFIX=''
 | 
				
			||||||
 | 
					      #- BROADCAST_DRIVER=log
 | 
				
			||||||
 | 
					      #- CACHE_DRIVER=file
 | 
				
			||||||
 | 
					      #- SESSION_DRIVER=file
 | 
				
			||||||
 | 
					      #- SESSION_LIFETIME=120
 | 
				
			||||||
 | 
					      #- QUEUE_DRIVER=sync
 | 
				
			||||||
 | 
					      #- SECURITY_HEADER_HSTS_ENABLE=false
 | 
				
			||||||
 | 
					      #- REDIS_HOST=127.0.0.1
 | 
				
			||||||
 | 
					      #- REDIS_PASSWORD=null
 | 
				
			||||||
 | 
					      #- REDIS_PORT=6379
 | 
				
			||||||
 | 
					      #- MAIL_DRIVER=smtp
 | 
				
			||||||
 | 
					      #- MAIL_HOST=smtp.mailtrap.io
 | 
				
			||||||
 | 
					      #- MAIL_PORT=2525
 | 
				
			||||||
 | 
					      #- MAIL_USERNAME=null
 | 
				
			||||||
 | 
					      #- MAIL_PASSWORD=null
 | 
				
			||||||
 | 
					      #- MAIL_ENCRYPTION=null
 | 
				
			||||||
 | 
					      #- PUSHER_APP_ID=''
 | 
				
			||||||
 | 
					      #- PUSHER_APP_KEY=''
 | 
				
			||||||
 | 
					      #- PUSHER_APP_SECRET=''
 | 
				
			||||||
 | 
					      #- PUSHER_APP_CLUSTER=mt1
 | 
				
			||||||
 | 
					      - STARTUP_DELAY=30
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - lychee_db
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					networks:
 | 
				
			||||||
 | 
					  lychee:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					volumes:
 | 
				
			||||||
 | 
					  mysql:
 | 
				
			||||||
							
								
								
									
										16
									
								
								matrix-extensions/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								matrix-extensions/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					version: "2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  element-web:
 | 
				
			||||||
 | 
					   image: vectorim/element-web
 | 
				
			||||||
 | 
					   restart: unless-stopped
 | 
				
			||||||
 | 
					   volumes:
 | 
				
			||||||
 | 
					     - ./element-web-config/config.json:/app/config.json
 | 
				
			||||||
 | 
					   ports:
 | 
				
			||||||
 | 
					     - "91:80"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  synapse-admin:
 | 
				
			||||||
 | 
					   image: awesometechnologies/synapse-admin
 | 
				
			||||||
 | 
					   restart: unless-stopped
 | 
				
			||||||
 | 
					   ports:
 | 
				
			||||||
 | 
					     - "92:80"
 | 
				
			||||||
							
								
								
									
										54
									
								
								matrix-extensions/element-web-config/config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								matrix-extensions/element-web-config/config.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					    "default_server_config": {
 | 
				
			||||||
 | 
					        "m.homeserver": {
 | 
				
			||||||
 | 
					            "base_url": "--Chatserver-URL--",
 | 
				
			||||||
 | 
					            "server_name": "My-Chat"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "m.identity_server": {
 | 
				
			||||||
 | 
					            "base_url": "--Chatserver-URL--"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "disable_custom_urls": true,
 | 
				
			||||||
 | 
					    "disable_guests": false,
 | 
				
			||||||
 | 
					    "disable_login_language_selector": false,
 | 
				
			||||||
 | 
					    "disable_3pid_login": false,
 | 
				
			||||||
 | 
					    "brand": "Element",
 | 
				
			||||||
 | 
					    "integrations_ui_url": "https://scalar.vector.im/",
 | 
				
			||||||
 | 
					    "integrations_rest_url": "https://scalar.vector.im/api",
 | 
				
			||||||
 | 
					    "integrations_widgets_urls": [
 | 
				
			||||||
 | 
					        "https://scalar.vector.im/_matrix/integrations/v1",
 | 
				
			||||||
 | 
					        "https://scalar.vector.im/api",
 | 
				
			||||||
 | 
					        "https://scalar-staging.vector.im/_matrix/integrations/v1",
 | 
				
			||||||
 | 
					        "https://scalar-staging.vector.im/api",
 | 
				
			||||||
 | 
					        "https://scalar-staging.riot.im/scalar/api"
 | 
				
			||||||
 | 
					    ],
 | 
				
			||||||
 | 
					    "bug_report_endpoint_url": "https://element.io/bugreports/submit",
 | 
				
			||||||
 | 
					    "defaultCountryCode": "DE",
 | 
				
			||||||
 | 
					    "showLabsSettings": false,
 | 
				
			||||||
 | 
					    "features": {
 | 
				
			||||||
 | 
					        "feature_new_spinner": false
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "default_federate": true,
 | 
				
			||||||
 | 
					    "default_theme": "light",
 | 
				
			||||||
 | 
					    "roomDirectory": {
 | 
				
			||||||
 | 
					        "servers": [
 | 
				
			||||||
 | 
					            "matrix.org"
 | 
				
			||||||
 | 
					        ]
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "piwik": {
 | 
				
			||||||
 | 
					        "url": "https://piwik.riot.im/",
 | 
				
			||||||
 | 
					        "whitelistedHSUrls": ["https://matrix.org"],
 | 
				
			||||||
 | 
					        "whitelistedISUrls": ["https://vector.im", "https://matrix.org"],
 | 
				
			||||||
 | 
					        "siteId": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "enable_presence_by_hs_url": {
 | 
				
			||||||
 | 
					        "https://matrix.org": false,
 | 
				
			||||||
 | 
					        "https://matrix-client.matrix.org": false
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "settingDefaults": {
 | 
				
			||||||
 | 
					        "breadcrumbs": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "jitsi": {
 | 
				
			||||||
 | 
					        "preferredDomain": "jitsi.riot.im"
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										32
									
								
								nextcloud/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								nextcloud/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					version: '2'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					volumes:
 | 
				
			||||||
 | 
					  nextcloud:
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					    image: mariadb
 | 
				
			||||||
 | 
					    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./db:/var/lib/mysql
 | 
				
			||||||
 | 
					      - /etc/localtime:/etc/localtime:ro
 | 
				
			||||||
 | 
					      - /etc/timezone:/etc/timezone:ro
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=nextcloud
 | 
				
			||||||
 | 
					      - MYSQL_USER=nextcloud
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  app:
 | 
				
			||||||
 | 
					    image: nextcloud
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 80:80
 | 
				
			||||||
 | 
					      - 443:443
 | 
				
			||||||
 | 
					    links:
 | 
				
			||||||
 | 
					      - db
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./nextcloud:/var/www/html
 | 
				
			||||||
 | 
					      - ./nextcloud_data:/var/www/html/data
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
							
								
								
									
										10
									
								
								npm/config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								npm/config.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "database": {
 | 
				
			||||||
 | 
					    "engine": "mysql",
 | 
				
			||||||
 | 
					    "host": "db",
 | 
				
			||||||
 | 
					    "name": "npm",
 | 
				
			||||||
 | 
					    "user": "npm",
 | 
				
			||||||
 | 
					    "password": "changeme",
 | 
				
			||||||
 | 
					    "port": 3306
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										28
									
								
								npm/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								npm/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
				
			|||||||
 | 
					version: "3"
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  app:
 | 
				
			||||||
 | 
					    image: jc21/nginx-proxy-manager:latest
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 80:80
 | 
				
			||||||
 | 
					      - 81:81
 | 
				
			||||||
 | 
					      - 443:443
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./config.json:/app/config/production.json
 | 
				
			||||||
 | 
					      - ./data:/data
 | 
				
			||||||
 | 
					      - ./letsencrypt:/etc/letsencrypt
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - db
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					    # if you want pretty colors in your docker logs:
 | 
				
			||||||
 | 
					    - FORCE_COLOR=1
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					    image: mariadb:latest
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      MYSQL_ROOT_PASSWORD: "npm"
 | 
				
			||||||
 | 
					      MYSQL_DATABASE: "npm"
 | 
				
			||||||
 | 
					      MYSQL_USER: "npm"
 | 
				
			||||||
 | 
					      MYSQL_PASSWORD: "changeme"
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./data/mysql:/var/lib/mysql
 | 
				
			||||||
							
								
								
									
										10
									
								
								onlyoffice/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								onlyoffice/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					version: '2'
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					   docserver:
 | 
				
			||||||
 | 
					     image: onlyoffice/documentserver
 | 
				
			||||||
 | 
					     restart: always
 | 
				
			||||||
 | 
					     ports:
 | 
				
			||||||
 | 
					       - 81:80
 | 
				
			||||||
 | 
					     environment:
 | 
				
			||||||
 | 
					       - JWT_ENABLED=true
 | 
				
			||||||
 | 
					       - JWT_SECRET=changeme
 | 
				
			||||||
							
								
								
									
										146
									
								
								overleaf/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										146
									
								
								overleaf/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,146 @@
 | 
				
			|||||||
 | 
					version: '2.2'
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					    sharelatex:
 | 
				
			||||||
 | 
					        restart: always
 | 
				
			||||||
 | 
					        # Server Pro users:
 | 
				
			||||||
 | 
					        # image: quay.io/sharelatex/sharelatex-pro
 | 
				
			||||||
 | 
					        image: sharelatex/sharelatex
 | 
				
			||||||
 | 
					        container_name: sharelatex
 | 
				
			||||||
 | 
					        depends_on:
 | 
				
			||||||
 | 
					            mongo:
 | 
				
			||||||
 | 
					                condition: service_healthy
 | 
				
			||||||
 | 
					            redis:
 | 
				
			||||||
 | 
					                condition: service_started
 | 
				
			||||||
 | 
					        ports:
 | 
				
			||||||
 | 
					            - 83:80
 | 
				
			||||||
 | 
					        links:
 | 
				
			||||||
 | 
					            - mongo
 | 
				
			||||||
 | 
					            - redis
 | 
				
			||||||
 | 
					        volumes:
 | 
				
			||||||
 | 
					            - ./sharelatex_data:/var/lib/sharelatex
 | 
				
			||||||
 | 
					            ########################################################################
 | 
				
			||||||
 | 
					            ####  Server Pro: Un-comment the following line to mount the docker ####
 | 
				
			||||||
 | 
					            ####             socket, required for Sibling Containers to work    ####
 | 
				
			||||||
 | 
					            ########################################################################
 | 
				
			||||||
 | 
					            # - /var/run/docker.sock:/var/run/docker.sock
 | 
				
			||||||
 | 
					        environment:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            SHARELATEX_APP_NAME: Overleaf Community Edition
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            SHARELATEX_MONGO_URL: mongodb://mongo/sharelatex
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # Same property, unfortunately with different names in
 | 
				
			||||||
 | 
					            # different locations
 | 
				
			||||||
 | 
					            SHARELATEX_REDIS_HOST: redis
 | 
				
			||||||
 | 
					            REDIS_HOST: redis
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ENABLED_LINKED_FILE_TYPES: 'url,project_file'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # Enables Thumbnail generation using ImageMagick
 | 
				
			||||||
 | 
					            ENABLE_CONVERSIONS: 'true'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # Disables email confirmation requirement
 | 
				
			||||||
 | 
					            EMAIL_CONFIRMATION_DISABLED: 'true'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # temporary fix for LuaLaTex compiles
 | 
				
			||||||
 | 
					            # see https://github.com/overleaf/overleaf/issues/695
 | 
				
			||||||
 | 
					            TEXMFVAR: /var/lib/sharelatex/tmp/texmf-var
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ## Set for SSL via nginx-proxy
 | 
				
			||||||
 | 
					            #VIRTUAL_HOST: 103.112.212.22
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_SITE_URL: http://sharelatex.mydomain.com
 | 
				
			||||||
 | 
					            # SHARELATEX_NAV_TITLE: Our ShareLaTeX Instance
 | 
				
			||||||
 | 
					            # SHARELATEX_HEADER_IMAGE_URL: http://somewhere.com/mylogo.png
 | 
				
			||||||
 | 
					            # SHARELATEX_ADMIN_EMAIL: support@it.com
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_LEFT_FOOTER: '[{"text": "Powered by <a href=\"https://www.sharelatex.com\">ShareLaTeX</a> 2016"},{"text": "Another page I want to link to can be found <a href=\"here\">here</a>"} ]'
 | 
				
			||||||
 | 
					            # SHARELATEX_RIGHT_FOOTER: '[{"text": "Hello I am on the Right"} ]'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_FROM_ADDRESS: "team@sharelatex.com"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_AWS_SES_ACCESS_KEY_ID:
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_AWS_SES_SECRET_KEY:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_HOST: smtp.mydomain.com
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_PORT: 587
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_SECURE: false
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_USER:
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_PASS:
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: true
 | 
				
			||||||
 | 
					            # SHARELATEX_EMAIL_SMTP_IGNORE_TLS: false
 | 
				
			||||||
 | 
					            # SHARELATEX_CUSTOM_EMAIL_FOOTER: "<div>This system is run by department x </div>"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ################
 | 
				
			||||||
 | 
					            ## Server Pro ##
 | 
				
			||||||
 | 
					            ################
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SANDBOXED_COMPILES: 'true'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SANDBOXED_COMPILES_SIBLING_CONTAINERS: 'true'
 | 
				
			||||||
 | 
					            # SANDBOXED_COMPILES_HOST_DIR: '/var/sharelatex_data/data/compiles'
 | 
				
			||||||
 | 
					            # SYNCTEX_BIN_HOST_PATH: '/var/sharelatex_data/bin/synctex'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # DOCKER_RUNNER: 'false'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ## Works with test LDAP server shown at bottom of docker compose
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_URL: 'ldap://ldap:389'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_SEARCH_BASE: 'ou=people,dc=planetexpress,dc=com'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_SEARCH_FILTER: '(uid={{username}})'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_BIND_DN: 'cn=admin,dc=planetexpress,dc=com'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_BIND_CREDENTIALS: 'GoodNewsEveryone'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_EMAIL_ATT: 'mail'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_NAME_ATT: 'cn'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_LAST_NAME_ATT: 'sn'
 | 
				
			||||||
 | 
					            # SHARELATEX_LDAP_UPDATE_USER_DETAILS_ON_LOGIN: 'true'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_TEMPLATES_USER_ID: "578773160210479700917ee5"
 | 
				
			||||||
 | 
					            # SHARELATEX_NEW_PROJECT_TEMPLATE_LINKS: '[ {"name":"All Templates","url":"/templates/all"}]'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # SHARELATEX_PROXY_LEARN: "true"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    mongo:
 | 
				
			||||||
 | 
					        restart: always
 | 
				
			||||||
 | 
					        image: mongo
 | 
				
			||||||
 | 
					        container_name: mongo
 | 
				
			||||||
 | 
					        expose:
 | 
				
			||||||
 | 
					            - 27017
 | 
				
			||||||
 | 
					        volumes:
 | 
				
			||||||
 | 
					            - ./mongo_data:/data/db
 | 
				
			||||||
 | 
					        healthcheck:
 | 
				
			||||||
 | 
					            test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet
 | 
				
			||||||
 | 
					            interval: 10s
 | 
				
			||||||
 | 
					            timeout: 10s
 | 
				
			||||||
 | 
					            retries: 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    redis:
 | 
				
			||||||
 | 
					        restart: always
 | 
				
			||||||
 | 
					        image: redis:5
 | 
				
			||||||
 | 
					        container_name: redis
 | 
				
			||||||
 | 
					        expose:
 | 
				
			||||||
 | 
					            - 6379
 | 
				
			||||||
 | 
					        volumes:
 | 
				
			||||||
 | 
					            - ./redis_data:/data
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # ldap:
 | 
				
			||||||
 | 
					    #    restart: always
 | 
				
			||||||
 | 
					    #    image: rroemhild/test-openldap
 | 
				
			||||||
 | 
					    #    container_name: ldap
 | 
				
			||||||
 | 
					    #    expose:
 | 
				
			||||||
 | 
					    #        - 389
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # See https://github.com/jwilder/nginx-proxy for documentation on how to configure the nginx-proxy container,
 | 
				
			||||||
 | 
					    # and https://github.com/overleaf/overleaf/wiki/HTTPS-reverse-proxy-using-Nginx for an example of some recommended
 | 
				
			||||||
 | 
					    # settings. We recommend using a properly managed nginx instance outside of the Overleaf Server Pro setup,
 | 
				
			||||||
 | 
					    # but the example here can be used if you'd prefer to run everything with docker-compose
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # nginx-proxy:
 | 
				
			||||||
 | 
					    #     image: jwilder/nginx-proxy
 | 
				
			||||||
 | 
					    #     container_name: nginx-proxy
 | 
				
			||||||
 | 
					    #     ports:
 | 
				
			||||||
 | 
					    #       #- "80:80"
 | 
				
			||||||
 | 
					    #       - "443:443"
 | 
				
			||||||
 | 
					    #     volumes:
 | 
				
			||||||
 | 
					    #       - /var/run/docker.sock:/tmp/docker.sock:ro
 | 
				
			||||||
 | 
					    #       - /home/sharelatex/tmp:/etc/nginx/certs
 | 
				
			||||||
							
								
								
									
										15
									
								
								picapport/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								picapport/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					version: '3'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  picapport:
 | 
				
			||||||
 | 
					    image: whatever4711/picapport
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 84:80    
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - Xms=512m
 | 
				
			||||||
 | 
					      - Xmx=1g
 | 
				
			||||||
 | 
					      - PICAPPORT_LANG=de
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./config:/opt/picapport/.picapport
 | 
				
			||||||
 | 
					      - ./photos:/srv/photos
 | 
				
			||||||
							
								
								
									
										27
									
								
								piwigo/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								piwigo/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
				
			|||||||
 | 
					version: "2.1"
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  piwigo:
 | 
				
			||||||
 | 
					    image: linuxserver/piwigo
 | 
				
			||||||
 | 
					    container_name: piwigo
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      #- PUID=0
 | 
				
			||||||
 | 
					      #- PGID=0
 | 
				
			||||||
 | 
					      - TZ=Europe/Berlin
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./config:/config
 | 
				
			||||||
 | 
					      - ./fotos_cloud:/config/www/gallery/fotos_cloud
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 82:80
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					    image: mariadb
 | 
				
			||||||
 | 
					    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./db:/var/lib/mysql
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=piwigo
 | 
				
			||||||
 | 
					      - MYSQL_USER=piwigo
 | 
				
			||||||
							
								
								
									
										14
									
								
								synapse/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								synapse/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					version: "2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  synapse:
 | 
				
			||||||
 | 
					   image: matrixdotorg/synapse:latest
 | 
				
			||||||
 | 
					   environment:
 | 
				
			||||||
 | 
					     - TZ=DE
 | 
				
			||||||
 | 
					     - UID=0
 | 
				
			||||||
 | 
					     - GID=0
 | 
				
			||||||
 | 
					   restart: always
 | 
				
			||||||
 | 
					   volumes:
 | 
				
			||||||
 | 
					     - ./synapse-data:/data
 | 
				
			||||||
 | 
					   ports:
 | 
				
			||||||
 | 
					     - "8008:8008"
 | 
				
			||||||
							
								
								
									
										31
									
								
								wordpress/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								wordpress/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
				
			|||||||
 | 
					version: '3.1'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  wordpress:
 | 
				
			||||||
 | 
					    image: wordpress
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 84:80
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      WORDPRESS_DB_HOST: db
 | 
				
			||||||
 | 
					      WORDPRESS_DB_USER: wordpress
 | 
				
			||||||
 | 
					      WORDPRESS_DB_PASSWORD: changeme
 | 
				
			||||||
 | 
					      WORDPRESS_DB_NAME: wordpress
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./wordpress:/var/www/html
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
 | 
					    image: mysql:5.7
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      MYSQL_DATABASE: wordpress
 | 
				
			||||||
 | 
					      MYSQL_USER: wordpress
 | 
				
			||||||
 | 
					      MYSQL_PASSWORD: changeme
 | 
				
			||||||
 | 
					      MYSQL_ROOT_PASSWORD: changeme
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./db:/var/lib/mysql
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					volumes:
 | 
				
			||||||
 | 
					  wordpress:
 | 
				
			||||||
 | 
					  db:
 | 
				
			||||||
		Reference in New Issue
	
	Block a user