Provide a Docker Compose example
Closes https://github.com/shaarli/Shaarli/issues/1010 See: - https://hub.docker.com/_/traefik/ - https://docs.traefik.io/configuration/backends/docker/ - https://docs.traefik.io/user-guide/docker-and-lets-encrypt/ - https://github.com/containous/traefik/pull/2798 - https://github.com/containous/traefik/issues/3298 Signed-off-by: VirtualTam <virtualtam@flibidi.net>
This commit is contained in:
parent
c9fcaaee93
commit
81c801300b
3 changed files with 60 additions and 0 deletions
|
@ -4,6 +4,9 @@
|
||||||
.github
|
.github
|
||||||
tests
|
tests
|
||||||
|
|
||||||
|
# Docker Compose resources
|
||||||
|
docker-compose.yml
|
||||||
|
|
||||||
# Shaarli runtime resources
|
# Shaarli runtime resources
|
||||||
cache/*
|
cache/*
|
||||||
data/*
|
data/*
|
||||||
|
|
1
.gitattributes
vendored
1
.gitattributes
vendored
|
@ -35,6 +35,7 @@ doc/**/*.json export-ignore
|
||||||
doc/**/*.md export-ignore
|
doc/**/*.md export-ignore
|
||||||
.docker/ export-ignore
|
.docker/ export-ignore
|
||||||
.dockerignore export-ignore
|
.dockerignore export-ignore
|
||||||
|
docker-compose.* export-ignore
|
||||||
Dockerfile* export-ignore
|
Dockerfile* export-ignore
|
||||||
Doxyfile export-ignore
|
Doxyfile export-ignore
|
||||||
Makefile export-ignore
|
Makefile export-ignore
|
||||||
|
|
56
docker-compose.yml
Normal file
56
docker-compose.yml
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
---
|
||||||
|
# Shaarli - Docker Compose script
|
||||||
|
#
|
||||||
|
# See:
|
||||||
|
# - https://shaarli.readthedocs.io/en/master/docker/shaarli-images/
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
networks:
|
||||||
|
http-proxy:
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
traefik-acme:
|
||||||
|
shaarli-cache:
|
||||||
|
shaarli-data:
|
||||||
|
|
||||||
|
services:
|
||||||
|
shaarli:
|
||||||
|
image: shaarli/shaarli:master
|
||||||
|
build: ./
|
||||||
|
networks:
|
||||||
|
- http-proxy
|
||||||
|
volumes:
|
||||||
|
- shaarli-cache:/var/www/shaarli/cache
|
||||||
|
- shaarli-data:/var/www/shaarli/data
|
||||||
|
labels:
|
||||||
|
traefik.domain: "${SHAARLI_VIRTUAL_HOST}"
|
||||||
|
traefik.backend: shaarli
|
||||||
|
traefik.frontend.rule: "Host:${SHAARLI_VIRTUAL_HOST}"
|
||||||
|
|
||||||
|
traefik:
|
||||||
|
image: traefik
|
||||||
|
command:
|
||||||
|
- "--defaultentrypoints=http,https"
|
||||||
|
- "--entrypoints=Name:http Address::80 Redirect.EntryPoint:https"
|
||||||
|
- "--entrypoints=Name:https Address::443 TLS"
|
||||||
|
- "--retry"
|
||||||
|
- "--docker"
|
||||||
|
- "--docker.domain=docker.localhost"
|
||||||
|
- "--docker.exposedbydefault=true"
|
||||||
|
- "--docker.watch=true"
|
||||||
|
- "--acme"
|
||||||
|
- "--acme.domains=${SHAARLI_VIRTUAL_HOST}"
|
||||||
|
- "--acme.email=${SHAARLI_LETSENCRYPT_EMAIL}"
|
||||||
|
- "--acme.entrypoint=https"
|
||||||
|
- "--acme.onhostrule=true"
|
||||||
|
- "--acme.storage=/acme/acme.json"
|
||||||
|
- "--acme.httpchallenge"
|
||||||
|
- "--acme.httpchallenge.entrypoint=http"
|
||||||
|
networks:
|
||||||
|
- http-proxy
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
- 443:443
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
- traefik-acme:/acme
|
Loading…
Reference in a new issue