{"id":13416322,"url":"https://github.com/jenssegers/captain","last_synced_at":"2025-07-25T13:40:09.489Z","repository":{"id":48255454,"uuid":"112781729","full_name":"jenssegers/captain","owner":"jenssegers","description":"⚓️ Easily start and stop docker compose projects","archived":false,"fork":false,"pushed_at":"2022-12-08T07:39:21.000Z","size":2018,"stargazers_count":244,"open_issues_count":7,"forks_count":11,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-09T23:15:54.691Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jenssegers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-01T20:04:33.000Z","updated_at":"2025-03-23T13:01:57.000Z","dependencies_parsed_at":"2023-01-25T09:01:16.615Z","dependency_job_id":null,"html_url":"https://github.com/jenssegers/captain","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenssegers%2Fcaptain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenssegers%2Fcaptain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenssegers%2Fcaptain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenssegers%2Fcaptain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jenssegers","download_url":"https://codeload.github.com/jenssegers/captain/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248125591,"owners_count":21051770,"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-07-30T21:00:57.073Z","updated_at":"2025-04-09T23:16:26.645Z","avatar_url":"https://github.com/jenssegers.png","language":"Go","readme":"# Captain\n\n[![Build Status](https://travis-ci.org/jenssegers/captain.svg?branch=master)](https://travis-ci.org/jenssegers/captain)\n\nEasily start and stop docker compose projects with captain, arrrrr.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://jenssegers.com/static/media/captain.png\" width=\"250\"\u003e\n\u003c/p\u003e\n\n## Installation\n\nBinaries can be manually downloaded from GitHub releases: https://github.com/jenssegers/captain/releases\n\n#### OSX\n\n```\ncurl -L https://github.com/jenssegers/captain/releases/download/0.3.3/captain-osx \u003e /usr/local/bin/captain \u0026\u0026 chmod +x /usr/local/bin/captain\n```\n\n#### Linux\n\n```\ncurl -L https://github.com/jenssegers/captain/releases/download/0.3.3/captain-linux \u003e /usr/local/bin/captain \u0026\u0026 chmod +x /usr/local/bin/captain\n```\n\n#### Windows (untested)\n\nDownload `captain.exe` via https://github.com/jenssegers/captain/releases/download/0.3.3/captain.exe\n\n## Usage\n\nCaptain searches for docker-compose projects in your `$HOME` folder and allows you to start and stop those projects by matching the project's directory name.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://jenssegers.com/static/media/captain.gif?v2\"\u003e\n\u003c/p\u003e\n\n### Starting a project\n\nIf I have a folder called `my-secret-project` that contains a `docker-compose.yml` file, I can start that project using:\n\n```\ncaptain start my-secret-project\n```\n\nCaptain will also do partial matching of the project name, so that you can also use:\n\n```\ncaptain start secret\n```\n\nCaptain is smart, and does fuzzy matching:\n\n```\ncaptain start scrt\n```\n\n### Stopping a project\n\nStopping a project works similarly:\n\n```\ncaptain stop secret\n```\n\n### Restarting a project\n\nRestart a project using:\n\n```\ncaptain restart my-secret-project\n```\n\n### Viewing project logs\n\nView logs of a project using:\n\n```\ncaptain logs my-secret-project\n```\n\n### Listing projects\n\nYou can see all managable projects using:\n\n```\ncaptain list\n```\n\n### Stopping all containers\n\nTo quickly stop all running docker containers, use:\n\n```\ncaptain abandon\n```\n\n### Executing command in a service\n\nExecuting command in a running service container\n\n```\ncaptain exec \u003cproject\u003e \u003cservice\u003e \u003ccommand\u003e\ncaptain exec my-secret-project web bash\n```\n\nExecuting command as a new service container\n\n```\ncaptain run \u003cproject\u003e \u003cservice\u003e \u003ccommand\u003e\ncaptain run my-secret-project cli bash\n```\n\n## Tweak the running\n\nYou can tweak some behaviour through some environmental variables:\n\n* CAPTAIN_ROOT: the starting directory from where the docker-compose are searched (default: home dir of the user)\n* CAPTAIN_DEPTH: the number of subdirectory where to search the docker-compose.yml files (default: 5)\n","funding_links":[],"categories":["Container Operations","Go"],"sub_categories":["User Interface"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjenssegers%2Fcaptain","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjenssegers%2Fcaptain","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjenssegers%2Fcaptain/lists"}