macasieb / main-server

My main server setup

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Forks Stargazers Issues GPL License


Logo

docker server

A simple server running common services using docker
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

About The Project

Getting Started

Prerequisites

All you need is docker and docker-compose

Installation

  1. Clone the main-server
git clone https://github.com/F0xedb/main-server.git
  1. Launch the services you want to use
# for jenkins
cd jenkins
docker-compose up -d
cd ../
# for repo
cd repo
docker-compose up -d
cd ../

Don't forget to change the domains to point to your instance by opening each docker-compose file.

  1. Create the public docker network
docker network create web
  1. Start the traefik docker-compose file
cd traefik
docker-compose up -d

Traefik will resolve the ssl certificates using letsencrypt. Make sure all subdomains point to your server If you wish to change the subdomain go into each docker-compose file and edit the domains

Usage

Each docker-compose file manages 1 single application and all its dependencies.

The traefik container is needed as a reverse proxy to manage all these applications.

Each application is served on a subdomain. eg

portainer -> port.example.com

jenkins -> jenkins.example.com

Here is a short list with description what each app does

  • portainer - Manage your docker network in a UI
  • scrumblr - A simple whiteboard online that serves as an agile manager
  • jenkins - This is a complex and advanced ci/cd pipeline app
  • repo - A simple webserver managing repositories
  • site - A simple webserver for your website
  • tos - A simple webserver for another site
  • traefik - A reverse proxy/loadbalancer

For more examples, please refer to the Documentation

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

F0xedb - tom@odex.be

Project Link: https://github.com/F0xedb/main-server

Acknowledgements

About

My main server setup

License:MIT License


Languages

Language:HTML 84.0%Language:JavaScript 9.5%Language:CSS 3.0%Language:PHP 2.7%Language:Pug 0.6%Language:Shell 0.2%Language:Dockerfile 0.1%