# d2cd
> **Note:** This project is currently under active development.
<p align="center">
<img src="https://i.ibb.co/8b7SMTH/d2cd1.png" width="400"/>
</p>
**D**ocker **C**ompose **C**ontinuous **D**elivery (`d2cd`) is a GitOps agent designed to maintain the state of your Docker Compose projects on your server by continuously applying changes from a Git repository.
## Install
Docker Compose is the recomended way
```bash
# download docker-compose.yml
$ wget https://raw.githubusercontent.com/veerendra2/d2cd/main/docker-compose.yml
# configure `config.yml` and run
$ docker compose up -d
```
From source
> **Note:** This tool is currently in beta stage, and daemonization is not yet implemented.
```
$ git clone git@github.com:veerendra2/d2cd.git
$ cd d2cd
$ pip3 install .
```
## Configuration
Below is a sample `config.yml` file to help you get started:
```yaml
---
sync_interval_seconds: 600
repos:
- name: d2cd-test
url: git@github.com:veerendra2/d2cd-test-repo.git
branch: main
auth:
ssh_key_location: "~/.ssh/id_rsa"
docker_compose_paths:
- python/docker-compose.yml
```
You can also use `username` and `password`(`token`) for authentication
```yaml
sync_interval_seconds: 600
repos:
- name: d2cd-test
url: git@github.com:veerendra2/d2cd-test-repo.git
branch: main
auth:
username: "USERNAME"
password: "PASSWORD"
docker_compose_paths:
- python/docker-compose.yml
```
Raw data
{
"_id": null,
"home_page": "https://github.com/veerendra2/d2cd",
"name": "d2cd",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "gitops, cicd, docker-compose, continuous delivery",
"author": "veerendra2",
"author_email": "veerendra2@github.com",
"download_url": "https://files.pythonhosted.org/packages/15/04/6a7fdb3bd670635766fb085e9884d6c398673e70e0754da7f02a4e314271/d2cd-0.0.3b0.tar.gz",
"platform": null,
"description": "# d2cd\n> **Note:** This project is currently under active development.\n\n<p align=\"center\">\n <img src=\"https://i.ibb.co/8b7SMTH/d2cd1.png\" width=\"400\"/>\n</p>\n\n**D**ocker **C**ompose **C**ontinuous **D**elivery (`d2cd`) is a GitOps agent designed to maintain the state of your Docker Compose projects on your server by continuously applying changes from a Git repository.\n\n## Install\nDocker Compose is the recomended way\n```bash\n# download docker-compose.yml\n$ wget https://raw.githubusercontent.com/veerendra2/d2cd/main/docker-compose.yml\n\n# configure `config.yml` and run\n$ docker compose up -d\n```\nFrom source\n> **Note:** This tool is currently in beta stage, and daemonization is not yet implemented.\n```\n$ git clone git@github.com:veerendra2/d2cd.git\n$ cd d2cd\n$ pip3 install .\n```\n\n## Configuration\nBelow is a sample `config.yml` file to help you get started:\n\n```yaml\n---\nsync_interval_seconds: 600\nrepos:\n - name: d2cd-test\n url: git@github.com:veerendra2/d2cd-test-repo.git\n branch: main\n auth:\n ssh_key_location: \"~/.ssh/id_rsa\"\n docker_compose_paths:\n - python/docker-compose.yml\n```\nYou can also use `username` and `password`(`token`) for authentication\n\n```yaml\nsync_interval_seconds: 600\nrepos:\n - name: d2cd-test\n url: git@github.com:veerendra2/d2cd-test-repo.git\n branch: main\n auth:\n username: \"USERNAME\"\n password: \"PASSWORD\"\n docker_compose_paths:\n - python/docker-compose.yml\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Docker Compose Continuous Delivery",
"version": "0.0.3b0",
"project_urls": {
"Changelog": "https://github.com/veerendra2/d2cd/blob/master/CHANGELOG.md",
"Documentation": "https://d2cd.readthedocs.io/en/latest/",
"Download": "https://github.com/veerendra2/d2cd/archive/0.0.3-beta.tar.gz",
"Homepage": "https://github.com/veerendra2/d2cd"
},
"split_keywords": [
"gitops",
" cicd",
" docker-compose",
" continuous delivery"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2f27748d74fb3bb3c97d763c501dc97dd3775a8b5348bd16730f607970d018cb",
"md5": "f4b4861b47b222586f4bfb5ddf0c7241",
"sha256": "c8253f6a772610be51d3c62773af1eca30684f5b8583c06478ad75a53dc71356"
},
"downloads": -1,
"filename": "d2cd-0.0.3b0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f4b4861b47b222586f4bfb5ddf0c7241",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 7995,
"upload_time": "2024-05-25T19:46:12",
"upload_time_iso_8601": "2024-05-25T19:46:12.099886Z",
"url": "https://files.pythonhosted.org/packages/2f/27/748d74fb3bb3c97d763c501dc97dd3775a8b5348bd16730f607970d018cb/d2cd-0.0.3b0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "15046a7fdb3bd670635766fb085e9884d6c398673e70e0754da7f02a4e314271",
"md5": "40fd2de8a68becf79293e80e53ed0d20",
"sha256": "e886b7a16f3a11228b4d52227159abca5c23a28304d6560e7e6698c67beef1c1"
},
"downloads": -1,
"filename": "d2cd-0.0.3b0.tar.gz",
"has_sig": false,
"md5_digest": "40fd2de8a68becf79293e80e53ed0d20",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 8448,
"upload_time": "2024-05-25T19:46:13",
"upload_time_iso_8601": "2024-05-25T19:46:13.585887Z",
"url": "https://files.pythonhosted.org/packages/15/04/6a7fdb3bd670635766fb085e9884d6c398673e70e0754da7f02a4e314271/d2cd-0.0.3b0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-25 19:46:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "veerendra2",
"github_project": "d2cd",
"github_not_found": true,
"lcname": "d2cd"
}