{"id":15129804,"url":"https://github.com/tavallaie/devdock","last_synced_at":"2025-10-23T06:30:24.178Z","repository":{"id":242147632,"uuid":"808811378","full_name":"tavallaie/devdock","owner":"tavallaie","description":"DevDock is a Python library and CLI tool for managing development containers. It supports Docker images and Docker Compose configurations, allowing for easy container creation, volume management, and service orchestration.","archived":false,"fork":false,"pushed_at":"2024-06-01T21:20:57.000Z","size":35,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-06T08:29:52.247Z","etag":null,"topics":["cli","devcontainer","docker","docker-compose","docker-container","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","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/tavallaie.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-31T21:50:52.000Z","updated_at":"2025-02-01T19:01:57.000Z","dependencies_parsed_at":"2024-05-31T23:03:50.393Z","dependency_job_id":null,"html_url":"https://github.com/tavallaie/devdock","commit_stats":null,"previous_names":["tavallaie/devdock"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tavallaie%2Fdevdock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tavallaie%2Fdevdock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tavallaie%2Fdevdock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tavallaie%2Fdevdock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tavallaie","download_url":"https://codeload.github.com/tavallaie/devdock/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237784878,"owners_count":19365949,"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":["cli","devcontainer","docker","docker-compose","docker-container","python3"],"created_at":"2024-09-26T02:20:32.582Z","updated_at":"2025-10-23T06:30:23.850Z","avatar_url":"https://github.com/tavallaie.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DevDock\n\nDevDock is a Python library and CLI tool for managing development containers. It supports Docker images and Docker Compose configurations, allowing for easy container creation, volume management, and service orchestration.\n\n## Features\n- Create and manage Docker containers with multiple volume mappings.\n- Create and manage Docker Compose configurations with service dependencies.\n- Activate specific services along with their dependencies.\n- Run commands and open shells inside specific services.\n\n## Installation\n\nInstall DevDock using pip:\n\n```bash\npip install devdock\n```\n\n## Usage\n\n### Create a Container from an Image\n\n```bash\ndevdock mkdevcontainer --image python:3.9 --name my-python-container --volumes /host/path1:/container/path1,/host/path2:/container/path2\n```\n\n### Run Services from a Docker Compose File with Volume Mappings\n\n```bash\ndevdock mkdevcontainer -f docker-compose.yaml --name my-compose --volume-mappings web:/host/path1:/var/www,web:/host/path2:/var/log/nginx,redis:/host/redis1:/data,db:/host/db1:/var/lib/postgresql/data\n```\n\n### Activate a Configuration\n\n```bash\ndevdock workon my-compose\n```\n\n### Activate Specific Services in a Compose Configuration\n\n```bash\ndevdock workon my-compose --services web\n```\n\n### Remove a Configuration\n\n```bash\ndevdock rmdev my-compose\n```\n\n### Stop a Container\n\n```bash\ndevdock stop my-python-container\n```\n\n### Remove a Container\n\n```bash\ndevdock remove my-python-container\n```\n\n### Run a Command Inside a Specific Service\n\n```bash\ndevdock run my-compose --service web \"echo Hello, World!\"\n```\n\n### Enter Shell Inside a Specific Service\n\n```bash\ndevdock shell my-compose --service web\n```\n\n## Example Docker Compose File\n\nHere's a sample `docker-compose.yaml` file for reference:\n\n```yaml\nversion: '3.8'\n\nservices:\n  web:\n    image: nginx:latest\n    depends_on:\n      - redis\n    volumes:\n      - web_data:/var/www\n      - web_logs:/var/log/nginx\n\n  redis:\n    image: redis:latest\n    depends_on:\n      - db\n    volumes:\n      - redis_data:/data\n\n  db:\n    image: postgres:latest\n    volumes:\n      - db_data:/var/lib/postgresql/data\n\nvolumes:\n  web_data:\n  web_logs:\n  redis_data:\n  db_data:\n```\n\n## Contributing\n\nContributions are welcome! Please follow these steps to contribute:\n\n1. Fork the repository.\n2. Create a new branch for your feature or bugfix.\n3. Write your code and tests.\n4. Run the tests to make sure everything is working.\n5. Submit a pull request with a clear description of your changes.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.\n\n## Contact\n\nIf you have any questions or need further assistance, please feel free to reach out to the project maintainer:\n\n**Ali Tavallaie**\n- Email: a.tavallaie@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftavallaie%2Fdevdock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftavallaie%2Fdevdock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftavallaie%2Fdevdock/lists"}