{"id":13596468,"url":"https://github.com/traefikturkey/onramp","last_synced_at":"2025-04-09T16:32:44.480Z","repository":{"id":37241274,"uuid":"504635885","full_name":"traefikturkey/onramp","owner":"traefikturkey","description":"Traefik with all the stuffing. Onramp is a docker compose setup designed to allow users to get up to speed quickly and securely using Traefik, LetsEncrypt, Cloudflare Tunnels and other popular self hosted home lab services.","archived":false,"fork":false,"pushed_at":"2025-03-30T21:11:30.000Z","size":1428,"stargazers_count":97,"open_issues_count":2,"forks_count":23,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-30T22:20:29.071Z","etag":null,"topics":["cloudflare","cloudflare-dns","docker","docker-compose","homelab","homelab-automation","homelab-setup","homelabbing","letsencrypt","make","makefile","traefik","traefik-docker"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/traefikturkey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-17T18:30:07.000Z","updated_at":"2025-03-30T21:09:51.000Z","dependencies_parsed_at":"2023-09-25T01:33:10.809Z","dependency_job_id":"e709b5ca-a579-4385-a08c-80544db12751","html_url":"https://github.com/traefikturkey/onramp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traefikturkey%2Fonramp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traefikturkey%2Fonramp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traefikturkey%2Fonramp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traefikturkey%2Fonramp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/traefikturkey","download_url":"https://codeload.github.com/traefikturkey/onramp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248067933,"owners_count":21042381,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare","cloudflare-dns","docker","docker-compose","homelab","homelab-automation","homelab-setup","homelabbing","letsencrypt","make","makefile","traefik","traefik-docker"],"created_at":"2024-08-01T16:02:28.219Z","updated_at":"2025-04-09T16:32:39.465Z","avatar_url":"https://github.com/traefikturkey.png","language":"Makefile","funding_links":[],"categories":["Makefile","Python"],"sub_categories":[],"readme":"\n#### A docker-compose setup of [common services](SERVICES.md) with Traefik using Cloudflare dns-01 for letsencrypt certificates\n\nHere is a complete list of [available services](SERVICES.md) and [available games](SERVICES.md#available-games)\n\nThis repo assumes that you are running a debian linux disto like Ubuntu!\n\nYou'll need a personal domain that's setup with Cloudflare\nand an scoped API token created like shown below, [https://dash.cloudflare.com/profile/api-tokens](https://dash.cloudflare.com/profile/api-tokens) \n\n![Cloudflare api token](https://raw.githubusercontent.com/traefikturkey/onramp/master/documentation/assets/read%2Bedit-token.png \"Cloudflare api token\")\n\n## Download OnRamp\n\nAfter getting your Cloudflare API key\nyou can run the following to do the basic setup automagically:\n\n```bash\nsudo apt install git make -y\n\nsudo mkdir /apps\nsudo chown -R $USER:$USER /apps\ncd /apps\ngit clone https://github.com/traefikturkey/onramp.git onramp\ncd onramp\n\nmake install\n```\n\nEdit the .env file to include Cloudflare credentials, your domain and the hostname of the current machine, save the file and exit. \n\n```bash\nmake start-staging\n```\n\nTraefik will start and attempt to obtain a staging certificate, wait and then follow the on screen directions.\n\n```bash\nmake down-staging\n```\n\nYou are now ready to bring things up with the production certificates\n\n```bash\nmake\n```\n\n## Docker Services\n\nOther docker services are included in the ./services-available directory.\nThe configuration files include links to the web page for the services which has \nthe available documentation.\n\n\u003e Note : This also includes cautions and notices for some of the different services, so be sure to look at them.\n\nTo list them:\n```\nmake list-services\n```\n\nThey can be enabled by running the following commands:\n\n```\nmake enable-service uptime-kuma\nmake restart\n```\n\u003e Note: this creates a symlink file in ./services-enabled to the service.yml file in ./services-available\n\nand disabled with the following:\n```\nmake disable-service uptime-kuma\nmake restart\n```\n\nTo create a new service:\n```\nmake create-service name-of-service\n```\n\nThis will create a file in /services-available that is built using the service.template\n\n\n\n## Docker Overrides\n\nSeveral docker overrides are included that allow extending the functionallity of existing services to add features like NFS mounted media directories and Intel Quicksync or Nvidia GPU support to the Plex and Jellyfin containers.\n\nTo list avaliable overrides:\n```\nmake list-overrides\n```\n\nTo enable an override:\n```\nmake enable-override plex-nfs\nmake restart\n```\n\nTo disable an override:\n```\nmake disable-override plex-nfs\nmake restart\n```\n\u003e Note: this creates a symlink file in ./overrides-enabled to the override.yml file in ./overrides-available\n\u003e In addition users can place there own custom docker compose files into ./overrides-enabled and they will be included on normal start up \n\u003e as well as included in the backup file created when running make create-backup\n\u003e for more info on docker compose overrides see: https://docs.docker.com/compose/extends/#adding-and-overriding-configuration\n\n## Docker Game servers\n\nDocker based Game servers are included in the ./services-available/games directory.\nThe configuration files include links to the web page for the services which has \nthe available documentation.\n\nTo list available games:\n```\nmake list-games\n```\n\nTo enable a game:\n```\nmake enable-game factorio\nmake restart\n```\n\nTo disable a game:\n```\nmake disable-game factorio\nmake restart\n```\n\n## External Services\nExternal services can also be proxied through Traefik to list the available configurations:\n\n```\nmake list-external\n```\n\nThey can be enabled by running the following commands:\n\n```\nmake enable-external proxmox\nmake restart\n```\n\nAnd disabled with the following:\n```\nmake disable-external proxmox\nmake restart\n```\n## Backing up Configuration\n\n### Create backup file\n```\nmake create-backup\n```\nThis will create a traefik-config-backup.tar.gz in the project directory\n\n### Copy backup file to another machine\n```\nscp ./backups/traefik-config-backup.tar.gz \u003cuser\u003e@\u003cother_host\u003e:/apps/onramp/backups/\n```\n\n### Restore backup file on the other machine\n```\nmake restore-backup\n```\n\n## Other make commands\n\nThen you can run any of the following:\n\n```\nmake          # does a docker compose up -d\nmake up       # does a docker compose up (this will show you the log output of the containers, but will not stay running if you hit ctrl-c or log out)\nmake down     # does a docker compose down\nmake restart  # does a docker compose down followed by an up -d\nmake logs     # does a docker compose logs -f\nmake update   # does a docker compose down, pull (to get the latest docker images) and up -d\n\n# You can run multiple commands at once like this\nmake; make logs\n```\n## Environment Variables\n\nMany parts of the available services, overrides and games can be customized using variables set in your .env file\nIf you open an available file and view it you will likely see many variables such as ${UNIFI_DOCKER_TAG:-latest-ubuntu}\n\nUNIFI_DOCKER_TAG is the variable name \nlatest-ubuntu is the default value\n\nYou can override this value by placing the following line in your .env file\n```\nUNIFI_DOCKER_TAG=latest-ubuntu-beta\n```\nThis will enable pulling the latest-ubuntu-beta version of the unifi container instead of the default stable version\n\nPlease see https://docs.docker.com/compose/environment-variables/ for more information about environment variable in docker compose\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftraefikturkey%2Fonramp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftraefikturkey%2Fonramp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftraefikturkey%2Fonramp/lists"}