{"id":29826927,"url":"https://github.com/dargstack/dargstack","last_synced_at":"2026-03-11T10:12:34.775Z","repository":{"id":40298089,"uuid":"212885902","full_name":"dargstack/dargstack","owner":"dargstack","description":"Deployment automation through Docker Stack.","archived":false,"fork":false,"pushed_at":"2025-07-21T04:27:54.000Z","size":1143,"stargazers_count":3,"open_issues_count":2,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-21T06:21:48.980Z","etag":null,"topics":["devops","docker","documentation","hacktoberfest","script","stack","template"],"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/dargstack.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","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,"zenodo":null},"funding":{"github":["dargmuesli"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-10-04T19:12:43.000Z","updated_at":"2025-07-21T04:27:56.000Z","dependencies_parsed_at":"2025-05-12T07:23:12.177Z","dependency_job_id":"68f721d0-44b8-4c3f-9ad1-e4acb6345e71","html_url":"https://github.com/dargstack/dargstack","commit_stats":null,"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"purl":"pkg:github/dargstack/dargstack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dargstack%2Fdargstack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dargstack%2Fdargstack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dargstack%2Fdargstack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dargstack%2Fdargstack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dargstack","download_url":"https://codeload.github.com/dargstack/dargstack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dargstack%2Fdargstack/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267633732,"owners_count":24118788,"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-07-29T02:00:12.549Z","response_time":2574,"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":["devops","docker","documentation","hacktoberfest","script","stack","template"],"created_at":"2025-07-29T05:35:42.203Z","updated_at":"2026-03-11T10:12:34.715Z","avatar_url":"https://github.com/dargstack.png","language":"Shell","funding_links":["https://github.com/sponsors/dargmuesli"],"categories":[],"sub_categories":[],"readme":"# dargstack\n\nDargstack addresses the challenge of maintaining separate development and production environments within an otherwise well-structured, containerized software development workflow.\nIt prioritizes development configuration, derives production configurations from it, and simplifies deployments!\n\nThis repository contains the dargstack script.\nIf you're looking for guidance on initiating and running a project with dargstack, refer to the [template documentation](./docs/template.md).\nTo bootstrap your project using the dargstack template, visit [dargstack/dargstack_template](https://github.com/dargstack/dargstack_template).\n\nThe following projects showcase dargstack in action:\n\n- [maevsi/stack](https://github.com/maevsi/stack/)\n- [dargmuesli/jonas-thelemann_stack](https://github.com/dargmuesli/jonas-thelemann_stack/)\n- [flipdot/drinks-touch_stack](https://github.com/flipdot/drinks-touch_stack/)\n\nYou can explore a minimal setup example here:\n\n- [dargstack/dargstack-example](https://github.com/dargstack/dargstack-example/)\n- [dargstack/dargstack-example_stack](https://github.com/dargstack/dargstack-example_stack/)\n\n## Table of Contents\n\n1. **[Installation](#installation)**\n2. **[Configuration Options](#configuration-options)**\n\n## Installation\n\nDargstack requires `sudo \u003e= 1.8.21` due to its use of the extended `--preserve-env` list syntax.\nThe minimum supported Debian version is `buster`.\n\nTo set up the script as an executable using Bash, follow these steps:\n\n```bash\nmkdir ~/scripts/ \\\n    \u0026\u0026 wget https://raw.githubusercontent.com/dargstack/dargstack/master/src/dargstack -O ~/scripts/dargstack \\\n    \u0026\u0026 chmod +x ~/scripts/dargstack \\\n    \u0026\u0026 echo 'export PATH=\"$PATH:$HOME/scripts\"' \u003e\u003e ~/.bashrc \\\n    \u0026\u0026 . ~/.bashrc\n```\n\nFeel free to adjust this setup to match your preferences!\n\n### macOS Installation Notes\n\n1. The `getopt` utility on macOS [differs from its Linux counterpart](https://en.wikipedia.org/wiki/Getopt#Extensions) as it does not support long options with two hyphens.\n   To resolve this, install GNU `getopt`:\n\n   ```sh\n   brew install gnu-getopt\n   ```\n\n   Dargstack will automatically detect `getopt` under `/opt/homebrew/opt/gnu-getopt/bin/getopt`.\n\n2. macOS ships with Bash version 3.x, which does not support [globstars](https://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html).\n   To run dargstack, install a newer version of Bash via [Homebrew](https://brew.sh/):\n\n   ```sh\n   brew install bash\n   ```\n\n   You must **always** use the newly installed Bash version to invoke dargstack. To simplify this, consider adding an alias to your [`~/.bashrc`](https://wiki.ubuntuusers.de/alias/):\n\n   ```sh\n   /opt/homebrew/Cellar/bash/5.2.2/bin/bash dargstack\n   # or\n   echo \"alias dargstack='/opt/homebrew/Cellar/bash/5.2.2/bin/bash dargstack'\" \u003e\u003e ~/.bashrc\n   ```\n\n\n## Configuration Options\n\n```\nDargstack template helper script.\n\nusage: dargstack \u003cmodule\u003e \u003coptions\u003e\n\nmodules\n    build [sibling]           Builds the main project or the specified sibling, tagged as dev. Only for development.\n    deploy                    Deploys a Docker project either from a full local development clone of the project or, with the --production parameter provided, by doing a sparse Git checkout containing only the production configuration. In the latter case derive is executed first and the existence of required environment variables is checked before deployment starts.\n    derive                    Derives a ./production/stack.yml from ./development/stack.yml.\n    rgen                      Generate the README.\n    rm                        Removes the stack.\n    self-update               Updates the helper script.\n    validate                  Checks for an up-2-date README.\n\noptions\n    -a, --advertise-addr      The address Docker Swarm advertises.\n    -h, --help                Display this help. Usable with modules: all.\n    -o, --offline             Do not try to update the checkout\n    -p, --production \u003ctag\u003e    Execute in production mode. Version must equal a tag name or latest. Usable with modules: deploy.\n    -u, --url \u003curl\u003e           The URL to clone from. May include the substrings \u003cowner\u003e and \u003cname\u003e that are replaced by their corresponding value that is inferred from the dargstack directory structure. Usable with modules: deploy.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdargstack%2Fdargstack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdargstack%2Fdargstack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdargstack%2Fdargstack/lists"}