Code Monkey home page Code Monkey logo

docker-web-redirect's Introduction

Docker-Web-Redirect

This Docker container listens (by default) on port 80 and redirects all web traffic permanently to the given target domain/URL.

Hint: This repo was forked from https://github.com/MorbZ/docker-web-redirect.

Features

  • Nginx 1.26
  • Lightweight: Uses only ~2 MB RAM on Linux
  • Keeps the URL path and GET parameters
  • Permanent redirect (HTTP 301)
  • Image Size only ~25MB

Usage

Docker run

The target domain/URL is set by the REDIRECT_TARGET environment variable. The port may be changed to another port than 80 by the PORT environment variable. Possible redirect targets include domains (mydomain.com), paths (mydomain.com/my_page) or specific protocols (https://mydomain.com/my_page).

Example (Listen on Port 80): $ docker run --rm -d -e REDIRECT_TARGET=mydomain.com -p 80:80 arbarwings/docker-web-redirect

Example (Listen on Port 8080): $ docker run --rm -d -e REDIRECT_TARGET=mydomain.com -e PORT=8080 -p 8080:8080 arbarwings/docker-web-redirect

Paths are retained

The URL path and GET parameters are retained. That means that a request to http://myolddomain.com/index.php?page=2 will be redirected to http://mydomain.com/index.php?page=2 when REDIRECT_TARGET=mydomain.com is set.

Permanent redirects

Redirects are permanent (HTTP status code 301). That means browsers will cache the redirect and will go directly to the new site on further requests. Also search engines will recognize the new domain and change their URLs. This means this image is not suitable for temporary redirects e.g. for site maintenance.

Docker Compose

A sample docker-compose file that redirects any incomming domain to mydomain.com could look like this:

version: '3'
services:
  redirect:
    image: arbarwings/docker-web-redirect
    restart: always
    environment:
      - REDIRECT_TARGET=mydomain.com

Build the image yourself

$ docker build -t arbarwings/docker-web-redirect:latest .

Source code

https://github.com/Arbarwings/docker-web-redirect

docker-web-redirect's People

Contributors

arbarwings avatar melvin-suter avatar ha-nso-li avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.