initial ver
This commit is contained in:
parent
de2b00a9c7
commit
a36c02bc35
|
@ -0,0 +1,114 @@
|
|||
version: '3.1'
|
||||
services:
|
||||
mysql:
|
||||
image: "mysql:5.7"
|
||||
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_RANDOM_ROOT_PASSWORD: "true"
|
||||
expose:
|
||||
- "3306"
|
||||
labels:
|
||||
- traefik.enable=false
|
||||
volumes:
|
||||
- ./docker:/docker-entrypoint-initdb.d:ro
|
||||
- ./data/mysql:/var/lib/mysql:rw
|
||||
|
||||
redis:
|
||||
image: redis
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli","ping"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
labels:
|
||||
- traefik.enable=false
|
||||
|
||||
traefik:
|
||||
image: "traefik:v2.0.0"
|
||||
command:
|
||||
- --entrypoints.web.address=:80
|
||||
- --entrypoints.websecure.address=:443
|
||||
- --providers.docker=true
|
||||
- --api.insecure # Don't do that in production
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
# dev hack, remove for production...
|
||||
#- "81:8080"
|
||||
volumes:
|
||||
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
||||
|
||||
nodepomf:
|
||||
build:
|
||||
context: https://github.com/odilitime/nodepomf.git
|
||||
expose:
|
||||
- "3000"
|
||||
environment:
|
||||
NPOMF_DB_FILENAME: ./databases/pomf_files.db
|
||||
NPOMF_MAX_UPLOAD_SIZE: 1000000 # 10mb
|
||||
NPOMF_FILE_URL: "/f"
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- "traefik.http.routers.nodepomf.rule=hostregexp(`{host:.+}`) && PathPrefix(`/f`)"
|
||||
volumes:
|
||||
- ./data/files:/usr/src/app/files:rw
|
||||
- ./data/pomfdb:/usr/src/app/databases:rw
|
||||
|
||||
platform:
|
||||
build: server
|
||||
depends_on:
|
||||
- mysql
|
||||
- redis
|
||||
- nodepomf
|
||||
#expose:
|
||||
# - "7070"
|
||||
# - "3000"
|
||||
ports:
|
||||
- "7070"
|
||||
- "3000"
|
||||
environment:
|
||||
stream__host: redis
|
||||
web__listen: platform
|
||||
admin__listen: platform
|
||||
admin__modKey: enableAdmin
|
||||
database__default__type: mysql
|
||||
database__default__options__database: lmpc_platform
|
||||
database__default__options__host: mysql
|
||||
database__default__options__username: platform
|
||||
database__default__options__password: publicchat_test
|
||||
pomf__provider: "nodepomf"
|
||||
pomf__provider_url: "http://nodepomf/upload"
|
||||
VIRTUAL_PORT: 7070
|
||||
VIRTUAL_HOST: platform.local
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- "traefik.http.routers.platform.rule=hostregexp(`{host:.+}`)"
|
||||
- traefik.http.services.platform.loadbalancer.server.port=7070
|
||||
|
||||
overlay:
|
||||
build: .
|
||||
depends_on:
|
||||
- mysql
|
||||
- platform
|
||||
ports:
|
||||
- "8080"
|
||||
environment:
|
||||
MYSQL_INIT_DB: publicchat_test
|
||||
VIRTUAL_PORT: 8080
|
||||
web__listen: platform
|
||||
admin__listen: platform
|
||||
admin__modKey: enableAdmin
|
||||
database__default__type: mysql
|
||||
database__default__options__database: lmpc_overlay
|
||||
database__default__options__host: mysql
|
||||
database__default__options__username: overlay
|
||||
database__default__options__password: publicchat_test
|
||||
api__url: http://platform:7070/
|
||||
admin__url: http://platform:3000/
|
||||
labels:
|
||||
- traefik.frontend.rule=PathPrefix:/loki/
|
||||
- traefik.enable=true
|
||||
- "traefik.http.routers.overlay.rule=hostregexp(`{host:.+}`) && PathPrefix(`/loki`)"
|
||||
- traefik.http.services.overlay.loadbalancer.server.port=8080
|
||||
|
Loading…
Reference in New Issue