Version 1
This commit is contained in:
parent
2e27d570dd
commit
4ea086fb00
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
|
|
@ -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
|
|
@ -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
|
|
@ -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"
|
|
@ -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"
|
|
@ -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:
|
|
@ -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"
|
|
@ -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"
|
||||||
|
}
|
||||||
|
}
|
|
@ -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
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"database": {
|
||||||
|
"engine": "mysql",
|
||||||
|
"host": "db",
|
||||||
|
"name": "npm",
|
||||||
|
"user": "npm",
|
||||||
|
"password": "changeme",
|
||||||
|
"port": 3306
|
||||||
|
}
|
||||||
|
}
|
|
@ -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
|
|
@ -0,0 +1,10 @@
|
||||||
|
version: '2'
|
||||||
|
services:
|
||||||
|
docserver:
|
||||||
|
image: onlyoffice/documentserver
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 81:80
|
||||||
|
environment:
|
||||||
|
- JWT_ENABLED=true
|
||||||
|
- JWT_SECRET=changeme
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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"
|
|
@ -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:
|
Loading…
Reference in New Issue