{"id":24343644,"url":"https://github.com/phyng/self-status-page","last_synced_at":"2026-04-11T16:07:45.685Z","repository":{"id":52829129,"uuid":"357254912","full_name":"phyng/self-status-page","owner":"phyng","description":"Build a status page with just one command. and only one output file","archived":false,"fork":false,"pushed_at":"2021-04-17T14:44:04.000Z","size":32,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-18T08:49:41.956Z","etag":null,"topics":["docker","self-hosted","status-page"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phyng.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-12T15:58:37.000Z","updated_at":"2021-04-17T14:44:07.000Z","dependencies_parsed_at":"2022-08-23T08:40:36.458Z","dependency_job_id":null,"html_url":"https://github.com/phyng/self-status-page","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/phyng%2Fself-status-page","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyng%2Fself-status-page/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyng%2Fself-status-page/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyng%2Fself-status-page/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phyng","download_url":"https://codeload.github.com/phyng/self-status-page/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243125638,"owners_count":20240276,"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":["docker","self-hosted","status-page"],"created_at":"2025-01-18T08:49:49.101Z","updated_at":"2025-12-24T16:47:50.368Z","avatar_url":"https://github.com/phyng.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# self-status-page\n\nBuild a status page with just one command. and only one output file.\n\n- Demo: [https://self-status-page.phyng.com/](https://self-status-page.phyng.com/)\n- Docker Hub [https://hub.docker.com/r/phyng/self-status-page](https://hub.docker.com/r/phyng/self-status-page)\n- [中文简体文档](https://github.com/phyng/self-status-page/blob/main/README_CN.md)\n\n## Quick start\n\n```bash\ndocker run --rm -ti -p 8081:80 \\\n  -e STATUS_EXAMPLE_NAME=Example \\\n  -e STATUS_EXAMPLE_TYPE=http \\\n  -e STATUS_EXAMPLE_URL=http://www.example.com/ \\\n  phyng/self-status-page:latest\n```\n\nopen [http://localhost:8081/](http://localhost:8081/) and everything is OK.\n\n## Productized deployment\n\nIf you need to use more complex configuration and persistent history, you can create a `data` folder and mount it inside the container.\nAt the same time, it supports to manage the configuration through `data/config.env`, and then start it with the following command\n\n```bash\n# replace /path/to/data to you absolute path\ndocker run -d --restart always \\\n  -p 8081:80 \\\n  --name self-status-page \\\n  -v /path/to/data:/usr/src/app/data \\\n  phyng/self-status-page:latest\n```\n\nYou can refer to the `data/config.env` file.\n\n## Advanced Config\n\nSince the environment variables are flat and the key cannot be repeated, we implement the complex configuration by using unique key for the environment variables. The following configuration file examples follow the following rules\n\n- Use `STATUS_\u003ctaskId\u003e_NAME` to declare a detection task, set the task type by `STATUS_\u003ctaskId\u003e_TYPE`, and set the task attributes for other `STATUS_\u003ctaskId\u003e_*`\n- Use `STATUSGROUP_{groupId}_NAME` to declare a task group, use `STATUSGROUP_{taskId}_TASKS` to set the task ID under the group, ungrouped tasks are classified as `SERVICES` group by default\n\n```bash\n# declare a task with ID EXAMPLE, of type http\nSTATUS_EXAMPLE_NAME=Example\nSTATUS_EXAMPLE_TYPE=http\nSTATUS_EXAMPLE_URL=http://www.example.com/\n\nSTATUS_GITHUB_NAME=Github\nSTATUS_GITHUB_TYPE=http\nSTATUS_GITHUB_URL=https://github.com/\n\n# declare the Search group, including two tasks BING and GOOGLE_DNS\nSTATUSGROUP_SEARCH_NAME=Search\nSTATUSGROUP_SEARCH_TASKS=BING,GOOGLE_DNS\n\n# declare ping task\nSTATUS_GOOGLE_DNS_NAME=Google DNS\nSTATUS_GOOGLE_DNS_TYPE=ping\nSTATUS_GOOGLE_DNS_IP=8.8.8.8\n\nSTATUS_BING_NAME=Bing\nSTATUS_BING_TYPE=http\nSTATUS_BING_URL=https://bing.com/\n```\n\n## Other config\n\n```bash\nSTATUS_CONFIG_TIMEOUT=10\nSTATUS_CONFIG_INTERVAL=30\nSTATUS_CONFIG_TITLE=Self status page\nSTATUS_CONFIG_TITLE_BACKGROUND=#607d8b\n```\n\n## Features\n\n- One command: docker one-click creation\n- One file: generate a `data/index.html` file regularly to facilitate integration and deployment\n- Support for multiple types of detection tasks\n- Support task grouping\n- Support history\n\n## Roadmap\n\n- [x] schedule runner\n  - [x] config parser\n  - [x] log\n  - [x] build\n- [x] docker deployment\n- [x] detection task\n  - [x] http\n  - [x] ping\n  - [x] shell\n- [x] advanced config\n  - [x] title/background\n  - [x] timeout/interval\n- [ ] ui\n  - [x] task group\n  - [ ] history list\n  - [ ] charts\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphyng%2Fself-status-page","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphyng%2Fself-status-page","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphyng%2Fself-status-page/lists"}