{"action":"created","issue":{"url":"https://api.github.com/repos/n1nj4sec/pupy/issues/650","repository_url":"https://api.github.com/repos/n1nj4sec/pupy","labels_url":"https://api.github.com/repos/n1nj4sec/pupy/issues/650/labels{/name}","comments_url":"https://api.github.com/repos/n1nj4sec/pupy/issues/650/comments","events_url":"https://api.github.com/repos/n1nj4sec/pupy/issues/650/events","html_url":"https://github.com/n1nj4sec/pupy/issues/650","id":353320465,"node_id":"MDU6SXNzdWUzNTMzMjA0NjU=","number":650,"title":"Pupy docker architecture","user":{"login":"Strazzom","id":36013285,"node_id":"MDQ6VXNlcjM2MDEzMjg1","avatar_url":"https://avatars3.githubusercontent.com/u/36013285?v=4","gravatar_id":"","url":"https://api.github.com/users/Strazzom","html_url":"https://github.com/Strazzom","followers_url":"https://api.github.com/users/Strazzom/followers","following_url":"https://api.github.com/users/Strazzom/following{/other_user}","gists_url":"https://api.github.com/users/Strazzom/gists{/gist_id}","starred_url":"https://api.github.com/users/Strazzom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Strazzom/subscriptions","organizations_url":"https://api.github.com/users/Strazzom/orgs","repos_url":"https://api.github.com/users/Strazzom/repos","events_url":"https://api.github.com/users/Strazzom/events{/privacy}","received_events_url":"https://api.github.com/users/Strazzom/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":28,"created_at":"2018-08-23T10:29:44Z","updated_at":"2018-09-25T11:40:48Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"This is not an issue, it is a reference for the correct way to implement things for the docker install of pupy.\r\n\r\nIn #643, I brought up the issue of using SSH to access the docker container. This is inefficient and runs contrary to Docker's design philosophy of \"one app per container\". I propose removing all references to access via SSH, including `pupyenv.sh`.\r\n\r\nThere are some other general guidelines that I will outline below. Assuming I can eventually get docker to build without crashing (#645), I will implement these myself.\r\n\r\nDocker should be set up via Docker Compose by default for all supported systems. The Debian 9 installation option should be supported, but not recommended. The Docker Compose installation should be transparent to the end user as well; someone with no prior docker experience should be able to use it without trouble.\r\n\r\nThe installation procedure should go as follows:\r\n\r\n1. Git clone the repo.\r\n2. Execute the installer script from an install of either Debian Stable or Kali Rolling\r\n3. Once the install has finished, a wrapper script can be used to run `docker compose up`, i.e. via a hypothetical `pupy_start.sh`.\r\n\r\nThe technical workings of the installation should be as follows:\r\n\r\n(Note: All of this will be automated by the installer script. The end user will not need to do any of this.)\r\n\r\n1. Docker should be installed via the get.docker.com script on D9, or via the method described [here](https://medium.com/@airman604/installing-docker-in-kali-linux-2017-1-fbaa4d1447fe) for Kali. I tested the latter last month.\r\n\r\n2. Docker Compose should be installed via [this method](https://docs.docker.com/compose/install/#install-compose).\r\n\r\n3. The pupy server should be launched from the docker-compose.yml file, with all relevant directories in the container mounted as local folders.\r\n     - /opt/pupy/output:./output\r\n     - /opt/pupy/conf:./conf"},"comment":{"url":"https://api.github.com/repos/n1nj4sec/pupy/issues/comments/424309417","html_url":"https://github.com/n1nj4sec/pupy/issues/650#issuecomment-424309417","issue_url":"https://api.github.com/repos/n1nj4sec/pupy/issues/650","id":424309417,"node_id":"MDEyOklzc3VlQ29tbWVudDQyNDMwOTQxNw==","user":{"login":"alxchk","id":329535,"node_id":"MDQ6VXNlcjMyOTUzNQ==","avatar_url":"https://avatars0.githubusercontent.com/u/329535?v=4","gravatar_id":"","url":"https://api.github.com/users/alxchk","html_url":"https://github.com/alxchk","followers_url":"https://api.github.com/users/alxchk/followers","following_url":"https://api.github.com/users/alxchk/following{/other_user}","gists_url":"https://api.github.com/users/alxchk/gists{/gist_id}","starred_url":"https://api.github.com/users/alxchk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alxchk/subscriptions","organizations_url":"https://api.github.com/users/alxchk/orgs","repos_url":"https://api.github.com/users/alxchk/repos","events_url":"https://api.github.com/users/alxchk/events{/privacy}","received_events_url":"https://api.github.com/users/alxchk/received_events","type":"User","site_admin":false},"created_at":"2018-09-25T11:40:48Z","updated_at":"2018-09-25T11:40:48Z","author_association":"COLLABORATOR","body":"> They already can control dockerd, that is part of the installation instructions, (usermod -aG docker user).\r\n\r\nThe user who access the container via SSH and user who maintains the system may/should be different in this case. User who has access to docker can/may escalate privileges.\r\n\r\n> You have a point. Even if I add it though, I still think the compose method should be the standard way to deploy.\r\n\r\nWe can move Dockerfiles to some \"recipes\" folder and add scripts to select/use any from that set.\r\n\r\n"}}
{"actor":{"display_login":"alxchk"}}