add yourls

This commit is contained in:
L4RM4ND 2023-11-01 11:40:42 +01:00
parent 910b53c0e1
commit fa7901ea49
4 changed files with 64 additions and 0 deletions

View File

@ -157,6 +157,7 @@ docker compose up
- [Transfer.sh](examples/transfer.sh) - Easy and fast file sharing from the command-line.
- [Transfer.zip](examples/transfer.zip) - Transfer files securely and E2E encrypted (AES-256 GCM) between browsers using WebRTC Peer2peer.
- [HedgeDoc](examples/hedgedoc) - HedgeDoc lets you create real-time collaborative markdown notes.
- [YOURLS](examples/yourls) - The de-facto standard self hosted URL shortener in PHP.
### Publishing, Writing, Blogging, Hosting
- [Ghost](examples/ghost) - Ghost is a free and open source blogging platform written in JavaScript and distributed under the MIT License, designed to simplify the process of online publishing for individual bloggers as well as online publications.

View File

@ -0,0 +1,9 @@
# References
- https://github.com/YOURLS/YOURLS
# Notes
The provided `docker-compose.yml` file bind mounts a custom Apache `security.conf` into the container.
This ensures that YOURL's Apache web server does not disclose its detailed version information.

View File

@ -0,0 +1,49 @@
version: '3.1'
services:
yourls:
image: yourls:latest
container_name: yourls
restart: unless-stopped
ports:
- 8080:80
expose:
- 80
environment:
YOURLS_SITE: https://myyourls.example.com # please adjust to your domain
YOURLS_USER: yourls-admin # please adjust
YOURLS_PASS: very-secury-admin-password # please adjust
YOURLS_DB_HOST: mysql
YOURLS_DB_USER: yourls
YOURLS_DB_NAME: yourls
YOURLS_DB_PASS: very-secure-database-password # please adjust
volumes:
- ./security.conf:/etc/apache2/conf-enabled/security.conf:ro
#networks:
# - proxy
#labels:
# - traefik.enable=true
# - traefik.http.routers.yourls.rule=Host(`s.ptf.one`)
# - traefik.http.services.yourls.loadbalancer.server.port=80
# - traefik.docker.network=proxy
# # Part for optional traefik middlewares
# - traefik.http.routers.CHANGEME.middlewares=local-ipwhitelist@file,authelia@docker
mysql:
image: mysql:latest
container_name: yourls-db
restart: unless-stopped
environment:
MYSQL_DATABASE: yourls
MYSQL_USER: yourls
MYSQL_PASSWORD: very-secure-database-password # please adjust
MYSQL_ROOT_PASSWORD: very-secure-database-root-password # please adjust
volumes:
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/yourls/mysql:/var/lib/mysql
#networks:
# - proxy
#networks:
# proxy:
# external: true

View File

@ -0,0 +1,5 @@
# bind mount this file into the yourls container
# overwrites '/etc/apache2/conf-enabled/security.conf' to prevent version disclosure
ServerTokens Prod
ServerSignature Off