GithubHelp home page GithubHelp logo

yobasystems / alpine-nginx Goto Github PK

View Code? Open in Web Editor NEW
36.0 5.0 14.0 218 KB

Nginx running on Alpine Linux [Docker]

Home Page: https://hub.docker.com/r/yobasystems/alpine-nginx/

Shell 2.98% HTML 6.20% Dockerfile 90.82%
docker-image alpine nginx yobasystems docker armhf arm64 amd64 webserver dockerfile

alpine-nginx's Introduction

Nginx container image running on Alpine Linux

Docker Automated build Docker Pulls Docker Stars

Alpine Version Nginx Version Nginx Version

This Container image (yobasystems/alpine-nginx) is based on the minimal Alpine Linux with version 1.25.4 of NGINX

Alpine Version 3.19.1 (Released 2023-01-26)

NGINX Version 1.25.4 (Mainline)
NGINX Version 1.24.0 (Stable)

Table of Contents

๐Ÿ”๏ธ What is Alpine Linux?

Alpine Linux is a Linux distribution built around musl libc and BusyBox. The image is only 5 MB in size and has access to a package repository that is much more complete than other BusyBox based images. This makes Alpine Linux a great image base for utilities and even production applications. Read more about Alpine Linux here and you can see how their mantra fits in right at home with Container images.

What is NGINX?

NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. [engine-ex]

โœจ Features

  • Minimal size only, minimal layers
  • Memory usage is minimal on a simple install.
  • Auto git clone from repo with yobasystems/alpine-nginx:git tag

๐Ÿ—๏ธ Architectures

  • :amd64, :x86_64 - 64 bit Intel/AMD (x86_64/amd64)
  • :arm64v8, :aarch64 - 64 bit ARM (ARMv8/aarch64)
  • :arm32v7, :armhf - 32 bit ARM (ARMv7/armhf)

๐Ÿ“ PLEASE CHECK TAGS BELOW FOR SUPPORTED ARCHITECTURES, THE ABOVE IS A LIST OF EXPLANATION

๐Ÿท๏ธ Tags

  • :latest latest branch based on mainline (Automatic Architecture Selection)
  • :master master branch usually inline with latest (Automatic Architecture Selection)
  • :mainline latest branch based on mainline release (Automatic Architecture Selection)
  • :stable stable branch usually inline with latest stable release (Automatic Architecture Selection)
  • :git latest branch with git based on mainline (Automatic Architecture Selection)
  • :git-ssh latest branch with git and ssh auth for private repo based on mainline (Automatic Architecture Selection)
  • :amd64, :x86_64 amd64 based on latest tag but amd64 architecture
  • :git-amd64, :git-x86_64 amd64 based on latest tag but amd64 architecture and includes git
  • :git-ssh-amd64, :git-ssh-x86_64 amd64 based on latest tag but amd64 architecture and includes git and ssh auth for private repo
  • :aarch64, :arm64v8 Armv8 based on latest tag but arm64 architecture
  • :aarch64-git, :git-arm64v8 Armv8 based on latest tag but arm64 architecture and includes git
  • :aarch64-git-ssh, :git-ssh-arm64v8 Armv8 based on latest tag but arm64 architecture and includes git and ssh auth for private repo
  • :armhf, :arm32v7 Armv7 based on latest tag but arm architecture
  • :git-armhf, :git-arm32v7 Armv7 based on latest tag but arm architecture and includes git
  • :git-ssh-armhf, :git-ssh-arm32v7 Armv7 based on latest tag but arm architecture and includes git and ssh auth for private repo

๐Ÿ“ Layers & Sizes

Version MicroBadger Layers (tag) MicroBadger Size (tag)

Version MicroBadger Layers (tag) MicroBadger Size (tag)

Version MicroBadger Layers (tag) MicroBadger Size (tag)

๐Ÿš€ How to use this image

Environment Variables:

  • URL: specify the url with that nginx will listen on. Default to localhost.

HTML content

To alter the HTML content that nginx serves up (add your website files), add the following to your Dockerfile:

ADD /path/to/content /etc/nginx/html

index.html is the default, but that's easily changed (see below).

Nginx configuration

A basic nginx configuration is supplied with this image. But it's easy to overwrite:

  • Create your own nginx.conf.
  • In your Dockerfile, make sure your nginx.conf file is copied to /etc/nginx/nginx.conf.

Make sure you start nginx without daemon mode, by including daemon off; in your nginx configuration, otherwise the container will constantly exit right after nginx starts.

Creating an instance

To use this image include FROM yobasystems/alpine-nginx at the top of your Dockerfile.

docker run --name webapp -p 80:80 -p 443:443 -e URL=www.example.co.uk yobasystems/alpine-nginx

To use persistent data , then use the volume var:

docker run --name webapp -p 80:80 -p 443:443 -e URL=www.example.co.uk -v /app/www:/etc/nginx/html yobasystems/alpine-nginx

Nginx logs (access and error logs) output to stdout and stderr

Docker Compose example:

version: '2'
services:
webapp:
  image: yobasystems/alpine-nginx
  environment:
    URL: www.example.co.uk
  expose:
    - "80"
    - "443"
  volumes:
    - /app/www:/etc/nginx/html
  domainname: www.example.co.uk
  restart: always

Docker Compose example (Git):

version: '2'
services:
webapp:
  image: yobasystems/alpine-nginx:git
  environment:
    URL: www.example.co.uk
    REPO: https://[email protected]/yobasystems/default-index.git
  expose:
    - "80"
    - "443"
  volumes:
    - /app/www:/etc/nginx/html
  domainname: www.example.co.uk
  restart: always

๐Ÿ” Image contents & Vulnerability analysis

PACKAGE NAME PACKAGE VERSION VULNERABILITIES

๐Ÿ“š Source Repositories

๐Ÿณ Container Registries

๐Ÿ”— Links

๐Ÿ’ฐ Donation

BMAC

BITCOIN

ETHEREUM

alpine-nginx's People

Contributors

dominictayloruk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

alpine-nginx's Issues

Are you serious?

Hi there, for your Dockerfiles that includes ssh, I failed to see where did you start your sshd? And you even didn't expose 22 at all. You sure your sshd is running when container starts?

Alpine version

would it be possible to somehow choose the Alpine version? 3.11 pulls in sold Node and Npm...

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.