{"id":20495617,"url":"https://github.com/tambeta/ddeploy","last_synced_at":"2025-03-05T18:25:04.428Z","repository":{"id":182839026,"uuid":"161641196","full_name":"tambeta/ddeploy","owner":"tambeta","description":"Simple Docker deployment tool","archived":false,"fork":false,"pushed_at":"2019-03-18T16:36:40.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-16T06:13:56.355Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tambeta.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}},"created_at":"2018-12-13T13:11:49.000Z","updated_at":"2019-03-18T16:36:42.000Z","dependencies_parsed_at":"2023-07-21T18:33:09.203Z","dependency_job_id":null,"html_url":"https://github.com/tambeta/ddeploy","commit_stats":null,"previous_names":["tambeta/ddeploy"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tambeta%2Fddeploy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tambeta%2Fddeploy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tambeta%2Fddeploy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tambeta%2Fddeploy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tambeta","download_url":"https://codeload.github.com/tambeta/ddeploy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242077798,"owners_count":20068434,"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":[],"created_at":"2024-11-15T17:46:37.154Z","updated_at":"2025-03-05T18:25:04.403Z","avatar_url":"https://github.com/tambeta.png","language":"Shell","readme":"# ddeploy\n\nA tool for deploying an application from a Git repository to a remote host using\n[Docker Compose](https://docs.docker.com/compose/), according to a configuration\nprovided in a `docker-compose.yml` file.  Run `ddeploy` in a directory\ncontaining the configuration file to make the magic happen.\n[yq](https://github.com/kislyuk/yq/) is the only dependency besides standard\nGNU tools.\n\n## Configuration\n\n`ddeploy` configuration mostly happens via `docker-compose.yml` containing a\nspecial [extension\nfield](https://docs.docker.com/compose/compose-file/#extension-fields)\n`x-ddeploy-conf` (in addition to standard sections such as `services`).\nConfiguration subkeys:\n\n* `deploy_host` - *String* Deploy target host name.\n* `deploy_workdir` - *String* A directory for deployment infrastructure files,\n  will be created if nonexistent. This may be a transient directory.\n* `services` - *Mapping* Service IDs linked to a mapping, containing the\n  following keys:\n  * `deploy_dir` - *String* Service directory on the deploy host. This is\n    expected to be present and be a Git working directory. On deploy, the\n    configured ref will be fetched and checked out. Generally this directory is\n    also expected to be mounted onto the container, but this is up to standard\n    Docker Compose configuration.\n  * `ref` - *String* The Git ref to be fetched and checked out on deploy. Making\n    this configurable on the command line is TODO.\n\n  The values in `services` will also be made available for later use via the\n  [env file](https://docs.docker.com/compose/env-file/). Variable names are\n  constructed by prefixing the configuration key with the service ID. E.g. the\n  key\n\n  ```\n  services:\n    webapp:\n      deploy_dir: \"/opt/docker/webapp\"\n  ```\n\n  will become available as `${webapp_deploy_dir}`.\n\nSee `docker-compose.example.yml` for an example.\n\n## Command-line options:\n\n* `-f` - Foreground mode: do not pass `--detach` to `docker compose up`.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftambeta%2Fddeploy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftambeta%2Fddeploy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftambeta%2Fddeploy/lists"}