All Projects → guillaumebriday → Traefik Custom Error Pages

guillaumebriday / Traefik Custom Error Pages

Licence: mit
Bunch of custom error pages for Traefik 2.x built with Jekyll

Projects that are alternatives of or similar to Traefik Custom Error Pages

Cursor Pagination
Cursor pagination for your Laravel API
Stars: ✭ 47 (-4.08%)
Mutual labels:  laravel
Piplin
📤 An open source self-hosted continuous integration and deployment system - QQ群: 656868
Stars: ✭ 1,044 (+2030.61%)
Mutual labels:  laravel
Cj Google Geocoder
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Laravel5 Genderize Api Client
Laravel 5 client for the Genderize.io API
Stars: ✭ 47 (-4.08%)
Mutual labels:  laravel
Laravel Elasticbeanstalk Queue Worker
Stars: ✭ 48 (-2.04%)
Mutual labels:  laravel
Laravel Async
Package provide simple way to run code asynchronously for your Laravel application.
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Shcms
一个基于laravel的cms系统
Stars: ✭ 46 (-6.12%)
Mutual labels:  laravel
Laravel Adminlte Components
Laravel Blade Components For AdminLTE Bootstrap Admin Template
Stars: ✭ 50 (+2.04%)
Mutual labels:  laravel
Donate
A simple Stripe donation form.
Stars: ✭ 48 (-2.04%)
Mutual labels:  laravel
Laravel Blog
基于 Laravel 5.3 的个人博客系统
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Laravel Multilang
Package to integrate multi language (multi locale) functionality in Laravel 5.x.
Stars: ✭ 47 (-4.08%)
Mutual labels:  laravel
Ticket Conductor
A free and open-source Laravel 5.5 and VueJS (SPA) Ticket system
Stars: ✭ 48 (-2.04%)
Mutual labels:  laravel
Laravel Heartbeat
Periodically schedule a job to send a heartbeat to a monitoring system.
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Laravel Translatable
It's a Laravel database translations manager
Stars: ✭ 47 (-4.08%)
Mutual labels:  laravel
Fluent Facebook
A laravel 5 package for reading and writing to facebook graph object with ease in laravelish syntax
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Kbframe
一款基于Laravel框架开发的现代化二次开发框架,是高性能,高效率,高质量的企业级开发框架,具有驱动领域,敏捷开发,轻易上手,高内聚低耦合,开箱即用等特点。
Stars: ✭ 47 (-4.08%)
Mutual labels:  laravel
Nova Mega Filter
Allows you to control the columns and filters shown on any Nova resource index
Stars: ✭ 49 (+0%)
Mutual labels:  laravel
Intl Date Time
International DateTime for Laravel Nova
Stars: ✭ 50 (+2.04%)
Mutual labels:  laravel
Scout Elasticsearch Driver
This package offers advanced functionality for searching and filtering data in Elasticsearch.
Stars: ✭ 1,047 (+2036.73%)
Mutual labels:  laravel
Laravan
Ansible Playbooks for Laravel - machine provisioning and app deployment
Stars: ✭ 49 (+0%)
Mutual labels:  laravel

Donate Docker Pulls Docker Stars Netlify Status

⚠️ DEPRECATION WARNING ⚠️

I'm not using this image anymore. I switched from Traefik to Caddy because Traefik is far too complicated for my needs. This image works as it. If you want new features, feel free to fork the project.

Custom error pages for Traefik

A bunch of custom error pages for Traefik built with Jekyll.

Development

Install dependencies

$ bundle install

If you want to build the project on your host:

$ jekyll build

If you want to preview the pages before building the Docker image :

$ jekyll serve

Open http://127.0.0.1:4000/.

How to use with Traefik and Docker in Production

Run the container with labels, change with your needs:

# docker-compose.yml

errorpage:
  image: guillaumebriday/traefik-custom-error-pages
  restart: unless-stopped
  networks:
    - web
  labels:
    - traefik.enable: "true"
    - traefik.docker.network: "web"
    - traefik.http.routers.errorpage.entrypoints: "websecure"
    - traefik.http.routers.errorpage.rule: "HostRegexp(`{host:.+}`)"
    - traefik.http.services.globalerrorpage.loadbalancer.server.port: "80"

Build the image

This is a multi-stage build, to build the final image:

$ docker build -f .cloud/docker/Dockerfile -t traefik-custom-error-pages .

How it works?

As you can see in the Dockerfile, I use Nginx as Web server to serve static files. To generate this pages, I use Jekyll in the first step of the build.

You will find in this article https://www.techjunktrunk.com/docker/2017/11/03/traefik-default-server-catch-all why I set up rule this way.

It's very useful because this container will respond to all requests only if there is no container with a real rule.

Credits

I used the Laravel default HTTP error pages.

Contributing

Do not hesitate to contribute to the project by adapting or adding features ! Bug reports or pull requests are welcome.

License

This project is released under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].