{"id":16541714,"url":"https://github.com/damianmoore/punk-deploy","last_synced_at":"2026-05-06T03:34:46.969Z","repository":{"id":146520478,"uuid":"127029552","full_name":"damianmoore/punk-deploy","owner":"damianmoore","description":"A lightweight tool for building, deploying, backing-up and moving server environments based on Docker Compose and Docker Machine","archived":false,"fork":false,"pushed_at":"2019-04-24T17:10:25.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-23T01:20:43.638Z","etag":null,"topics":["deployment","deployment-automation","deployment-pipeline","deployment-system","devops-tools","docker","docker-compose","docker-image","docker-machine"],"latest_commit_sha":null,"homepage":"","language":"Python","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/damianmoore.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":"2018-03-27T18:29:29.000Z","updated_at":"2019-04-24T17:10:27.000Z","dependencies_parsed_at":"2023-07-12T11:30:55.071Z","dependency_job_id":null,"html_url":"https://github.com/damianmoore/punk-deploy","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/damianmoore/punk-deploy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damianmoore%2Fpunk-deploy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damianmoore%2Fpunk-deploy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damianmoore%2Fpunk-deploy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damianmoore%2Fpunk-deploy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/damianmoore","download_url":"https://codeload.github.com/damianmoore/punk-deploy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damianmoore%2Fpunk-deploy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32677930,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T02:33:58.958Z","status":"ssl_error","status_checked_at":"2026-05-06T02:33:39.611Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["deployment","deployment-automation","deployment-pipeline","deployment-system","devops-tools","docker","docker-compose","docker-image","docker-machine"],"created_at":"2024-10-11T18:55:43.036Z","updated_at":"2026-05-06T03:34:46.944Z","avatar_url":"https://github.com/damianmoore.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Punk Deploy\n\n## Are you feeling lucky…?\n\nThis is a light-weight tool for building, deploying, backing-up and moving\nserver environments based on **Docker Compose**. It also integrates with\n**Docker Machine** to create, initialize and migrate server nodes across most\ncloud providers.\n\n\n## Prerequisites\n\n* You will need a master server running that will store the volume backups. It\n  must have SSH server setup so you can access it with just your public key.\n  Also it must have it’s own SSH keypair for logging into the new node machines.\n* You will need access to a container registry where you can push your Docker\n  images. This can be provided by Docker Hub, another cloud provider, or you\n  can run it yourself on the master server using\n  [this docker image](https://hub.docker.com/r/_/registry/).\n* An account with a cloud provider supported by Docker Machine (currently\n  Digital Ocean and Scaleway are supported out-of-the box but it should be\n  simple to add support for others)\n* A `docker-compose.yml` file that will define what services you will run. You\n  can use the example one we provide if you don’t have one yet.\n\n\n## Getting started\n\nClone the project and `cd` into it.\n\n    git clone git@github.com:damianmoore/punk-deploy.git\n    cd punk-deploy/\n\nCopy the example settings file and modify it to suit your needs. You will need\nto fill in your access credentials for the cloud provider you wish to use if you\nwant to try out the example.\n\n    cp settings.py.example settings.py\n\nThere’s an example Docker Compose file you can copy if you don’t have your\nown yet.\n\n    cp docker-compose.yml.example docker-compose.yml\n\nIt is recommended you use `pipenv` to create the virtual environment, install\nthe dependencies and run.\n\n    pipenv install\n    pipenv shell\n    ./run.py\n\nIf you want to use the example Docker Compose file you copied earlier, go\nthrough the following steps in the CLI menu to create a new machine and deploy a\nsite.\n\n* Create new machine\n* Initialize machine\n* Initialize/recreate docker containers\n\nIf you followed the steps above you should have a Django site running that you\ncan access in your browser. You can find the IP address for the new machine by\nrunning `./run.py` again and selecting *View machines*.\n\nYou can SSH into your new machine with the `docker-machine` command.\n\n    docker-machine ssh MACHINE_NAME\n\nYou can link the current terminal to the remote Docker instance so you can use\nthe `docker` and `docker-compose` commands like you would locally.\n\n    eval $(docker-machine env MACHINE_NAME)\n    docker ps\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamianmoore%2Fpunk-deploy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdamianmoore%2Fpunk-deploy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamianmoore%2Fpunk-deploy/lists"}