{"id":30556239,"url":"https://github.com/antoinebou12/another-install-script","last_synced_at":"2025-08-28T06:37:03.784Z","repository":{"id":137759991,"uuid":"233106552","full_name":"antoinebou12/another-install-script","owner":"antoinebou12","description":"Script to install multiple docker container and system configuration with a extensible, easy, simple menu","archived":false,"fork":false,"pushed_at":"2025-08-07T00:05:24.000Z","size":1351,"stargazers_count":3,"open_issues_count":15,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-07T02:19:21.988Z","etag":null,"topics":["ansible","bash","docker","docker-compose","docker-container","install-script","linux","list","selfhosted","servers","ubuntu","vps-setup"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/antoinebou12.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-01-10T18:23:25.000Z","updated_at":"2025-02-22T14:37:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"fcddca38-3eb2-4248-b4b2-75b412ca880d","html_url":"https://github.com/antoinebou12/another-install-script","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/antoinebou12/another-install-script","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoinebou12%2Fanother-install-script","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoinebou12%2Fanother-install-script/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoinebou12%2Fanother-install-script/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoinebou12%2Fanother-install-script/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antoinebou12","download_url":"https://codeload.github.com/antoinebou12/another-install-script/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoinebou12%2Fanother-install-script/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272454021,"owners_count":24937505,"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","status":"online","status_checked_at":"2025-08-28T02:00:10.768Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["ansible","bash","docker","docker-compose","docker-container","install-script","linux","list","selfhosted","servers","ubuntu","vps-setup"],"created_at":"2025-08-28T06:37:02.794Z","updated_at":"2025-08-28T06:37:03.765Z","avatar_url":"https://github.com/antoinebou12.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Another Install Script\n\n#### Spiritual successor\n\n[DasherControl](https://github.com/antoinebou13/DasherControl)\n\n![GitHub top language](https://img.shields.io/github/languages/top/antoinebou13/another-install-script)\n[![Build Status](https://travis-ci.com/antoinebou13/another-install-script.svg?token=MUq69udyyqAR24bsXgRq\u0026branch=master)](https://travis-ci.com/antoinebou13/another-install-script)\n![GitHub commit activity](https://img.shields.io/github/commit-activity/m/antoinebou13/another-install-script)\n[![Codecov](https://codecov.io/gh/antoinebou13/another-install-script/branch/master/graph/badge.svg?token=FcTtxpEGhF)](https://codecov.io/gh/antoinebou13/another-install-script)\n![GitHub repo size](https://img.shields.io/github/repo-size/antoinebou13/another-install-script)\n![GitHub](https://img.shields.io/github/license/antoinebou13/another-install-script)\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fantoinebou13%2Fanother-install-script.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fantoinebou13%2Fanother-install-script?ref=badge_shield)\n\nAnother Install Script is a W.I.P project/script aimed at simplifying the installation of multiple docker containers through an easy-to-use menu, primarily designed for personal servers. \n\n![Another install Script](docs/images/another-install-script.png)\n\n## The story behind the project\n\nThe desire to facilitate the installation of a variety of services/servers through Docker. The goal is to provide a simple, extensible, and customizable script to add numerous self-hosted services/servers that are easy to install with a simple CLI menu.\n\nI started working on the project because I just bought a VPS to host my TeamSpeak and Minecraft server.\nAfter navigating [r/selfhosting](https://www.reddit.com/r/selfhosted), I saw the multiple of several services/servers that can be simply installed with docker. Also, I found multiple repos that tries to do the same thing with their favorite container [IOStack](https://github.com/gcgarner/IOTstack) and [sovereign](https://github.com/sovereign/sovereign) and [MediaServerDockerCompose](https://github.com/vaeyo/MediaServer-DockerComposeFiles). I am trying to do with this project is to make a simple, extensible and customizable script to add a lot of selfhosted services/servers to easy to install with a simple cli menu. The project is a super easy install script for beginner/intermediate linux power user that want to test quickly interesting docker containers of server/service. The project is a highly configurable install script with a container orchestrator and general manager for multiple docker.\n\n## How to install\n\nCurrently, the script has been tested only on Ubuntu 18.04. You can install it by:\n\n```bash\ngit clone https://github.com/antoinebou13/another-install-script.git\ncd another-install-script\nsudo bash setup.sh\n```\n\n### Uninstall\n\n```bash\ncd another-install-script\nsudo bash uninstall.sh\n```\n\n## List of the services/server\n\nAround 80 containers/servers can be installed with this script.\nGo check the list below ⬇.\n\n\n\u003cdetails\u003e\n\u003csummary\u003eCheck the Google Sheet for the complete list.\u003c/summary\u003e\n\u003cbr\u003e\nGo to the \u003ca href=\"https://drive.google.com/file/d/1s2Il9qeJdZj-NYnzfveIW-HfnRhwkce-/view?usp=sharing\"\u003eGoogle Sheet\u003c/a\u003e\n\u003c/details\u003e\n\n### Notes\n\nSome services/servers cannot be installed at the same time. Also more configuration needed for certain services/servers\n\n## List of other installed program that you can chose to install \nThis script also offers optional installation of several other programs including git, python3, docker, docker-compose, snapd, curl, vim, and more.\n\n- build-essential\n- git\n- python3\n- python3-pip\n- wireless-tools\n- wpasupplicant\n- default-jre\n- jq\n- net-tools\n- firefox\n- lxde\n- [vim](https://www.vim.org/)\n- [snapd](https://snapcraft.io/)\n- [nmap](https://nmap.org/)\n- [wget](https://www.gnu.org/software/wget/)\n- [curl](https://github.com/curl/curl)\n- [mlocate](https://wiki.archlinux.org/index.php/Mlocate)\n- [cmake](https://cmake.org/)\n- [docker](https://www.docker.com/)\n- [docker-compose](https://docs.docker.com/compose/)\n- [dry](https://github.com/moncho/dry)\n- [ctop](https://github.com/bcicen/ctop)\n- [emojify](https://github.com/mrowa44/emojify)\n- [dokku](https://github.com/dokku/dokku)\n- [lynk](https://lynk.sh/docs)\n\n## Project Structure\n\nA simple project overview to with the explaination of each important file\n\n```bash\n+-- docs\n|   +-- vendor\n|       +-- ...\n|   +-- docs.md\n|   +-- generate_docs.md\n|   +-- ...\n+-- containers\n|   +-- $container_name\n|   |   |   +-- docker-compose.yml\n|   |   |   +-- $container_name.sh\n|   |   |   +-- ...\n+-- src\n|   +-- backup.sh\n|   +-- config.sh\n|   +-- containers.sh\n|   +-- docker.sh\n|   +-- firewall.sh\n|   +-- install.sh\n|   +-- menu.sh\n|   +-- other.sh\n|   +-- router.sh\n|   +-- utils.sh\n+-- config.yml\n+-- setup.sh\n+-- uninstall.sh\n```\n\n| Path                            |                           Explanation                            |\n| ------------------------------- | :--------------------------------------------------------------: |\n| docs                            | The directory for the documentation for the code and the project |\n| docs/vendor                     |         The vendor program to generate the documentation         |\n| src                             |              The path for the code for the project               |\n| containers/$container_name      |  The path for docker container with a script and docker-compose  |\n\n## How to run coverage and tests\n\n[Manuel Testing](docs/TESTING.md)\n\nFor running the [bats](https://github.com/bats-core/bats-core) tests\n\n```bash\ncd tests\nbash test.sh\n```\n\nFor running and generate with [kcov](https://github.com/SimonKagstrom/kcov)\n\n```bash\ncd tests\nbash coverage.sh\n```\n\n## How to generate the documentation\n\nFor running and generate the documentation with [shdoc](https://github.com/reconquest/shdoc)\n\n```bash\ngit submodule update --init --recursive\ngit pull --recurse-submodules\ngit submodule update --remote\ncd docs/generator\nchmod +x generate_docs.sh\nbash generate_docs.sh ../docs.md\n```\n\n## Documentation\n\nGo to [Documentation](docs/docs.md)\n\n## Code of Conduct\n\nGo to [Code of Conduct](.github/CODE_OF_CONDUCT.md)\n\n## Contributing\n\nAll pull request and suggestion is highly appreciated and encourage\n\n![Please Contribute for Bernie](docs/images/contribution.png)\n\nGo to [Contributing](.github/CONTRIBUTING.md)\n\n## Changelog\n\nGo to [Changelog](docs/CHANGELOG.md)\n\n## License\n\nGo to [License](.github/LICENSE)\n\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fantoinebou13%2Fanother-install-script.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fantoinebou13%2Fanother-install-script?ref=badge_large)\n\n## Roadmap\n\n- [ ] Auto vm creation for ci and personnal use\n- [ ] Add traefik reverse proxy with subdomain for each docker container\n- [ ] Easier config file or adding yml file to individual folder\n- [ ] More docker containers\n- [ ] Automatic docker compose and containers update\n- [ ] Automatic backups\n- [ ] Automatic testing and better coverage\n- [ ] Automatic Versioning\n- [ ] Better cli menu\n- [ ] Rewrite in python\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoinebou12%2Fanother-install-script","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantoinebou12%2Fanother-install-script","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoinebou12%2Fanother-install-script/lists"}