{"id":27991772,"url":"https://github.com/mon-ius/docker-yarn-dev","last_synced_at":"2025-05-08T17:54:21.861Z","repository":{"id":265703889,"uuid":"896499496","full_name":"Mon-ius/Docker-Yarn-Dev","owner":"Mon-ius","description":"Modern develop environment, just in box!","archived":false,"fork":false,"pushed_at":"2025-03-19T16:06:22.000Z","size":66,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-08T17:54:18.279Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","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/Mon-ius.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-11-30T14:26:11.000Z","updated_at":"2025-03-19T16:06:25.000Z","dependencies_parsed_at":"2025-02-08T13:35:03.108Z","dependency_job_id":"e90856fc-73b7-44ca-a577-a9df65f1564a","html_url":"https://github.com/Mon-ius/Docker-Yarn-Dev","commit_stats":null,"previous_names":["mon-ius/docker-yarn-dev"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mon-ius%2FDocker-Yarn-Dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mon-ius%2FDocker-Yarn-Dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mon-ius%2FDocker-Yarn-Dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mon-ius%2FDocker-Yarn-Dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mon-ius","download_url":"https://codeload.github.com/Mon-ius/Docker-Yarn-Dev/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253124242,"owners_count":21857611,"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":"2025-05-08T17:54:21.311Z","updated_at":"2025-05-08T17:54:21.842Z","avatar_url":"https://github.com/Mon-ius.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker-Yarn-Dev\n\n[![CI Status](https://github.com/Mon-ius/Docker-Yarn-Dev/workflows/build/badge.svg)](https://github.com/Mon-ius/Docker-Yarn-Dev/actions?query=workflow:build)\n[![Docker Pulls](https://flat.badgen.net/docker/pulls/monius/docker-yarn-dev?icon=docker)](https://hub.docker.com/r/monius/docker-yarn-dev)\n[![Code Size](https://img.shields.io/github/languages/code-size/Mon-ius/Docker-Yarn-Dev)](https://github.com/Mon-ius/Docker-Yarn-Dev)\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n\n\u003e Modern develop environment, with Yarn.\n\nMulti-platform: `linux/amd64`, `linux/arm64`, `linux/arm`, `linux/s390x` and `linux/riscv64`;\n\n\u003e [!IMPORTANT]  \n\u003e For permission related issue to use `docker` instead of `sudo docker`\n\n```sh\nsudo chmod 666 /var/run/docker.sock\nsudo groupadd docker\nsudo usermod -aG docker $USER\n```\n\n\u003e [!TIP]\n\u003e - To use customized `port`, set `-e X_PORT=$X_PORT`\n\u003e - To use Encryption with `user` and `passwd`, set `X_SERVER=$X_SERVER` and `-e X_AUTH=$X_AUTH`\n\u003e - To attach it from host, use `docker exec -it yarn_dev /bin/bash`\n\n| **DockerHub** | **GHCR** |\n|---------------|---------------|\n| docker run --restart=always -itd \\ \u003cbr\u003e --name yarn_dev \\ \u003cbr\u003e --cap-add NET_ADMIN \\ \u003cbr\u003e -e X_SERVER=$X_SERVER -e X_AUTH=$X_AUTH \\ \u003cbr\u003e -e X_PORT=443 \\ \u003cbr\u003e monius/docker-yarn-dev | docker run --restart=always -itd \\ \u003cbr\u003e --name yarn_dev \\ \u003cbr\u003e --cap-add NET_ADMIN \\ \u003cbr\u003e -e X_SERVER=$X_SERVER -e X_AUTH=$X_AUTH \\ \u003cbr\u003e -e X_PORT=443 \\ \u003cbr\u003e ghcr.io/mon-ius/docker-yarn-dev |\n\n---\n\n```sh\ndocker run --restart=always -itd \\\n    --name yarn_dev_ssh \\\n    -v ~/.ssh/id_ed25519:/root/.ssh/id_ed25519 \\\n    -e D_SERVER=$D_SERVER -e D_PORT=$D_PORT \\\n    -e D_USER=$D_USER -e D_PUB_KEY=$D_PUB_KEY \\\n    ghcr.io/mon-ius/docker-yarn-dev:ssh\n```\n\n---\n\n```sh\ndocker run --restart=always -itd \\\n    --name yarn_dev_pro \\\n    --cap-add NET_ADMIN \\\n    -v ~/.ssh/id_ed25519:/root/.ssh/id_ed25519 \\\n    -e D_SERVER=$D_SERVER -e D_PORT=$D_PORT \\\n    -e D_USER=$D_USER -e D_PUB_KEY=$D_PUB_KEY \\\n    -e X_SERVER=$X_SERVER -e X_AUTH=$X_AUTH \\\n    -e X_PORT=443 \\\n    ghcr.io/mon-ius/docker-yarn-dev:pro\n```\n\n\u003e [!NOTE]\n\u003e - To stop the environment, use `docker stop yarn_dev`\n\u003e - To force remove it, use `docker rm -f yarn_dev`\n\u003e - To delete the image, use `docker rmi -f monius/docker-yarn-dev`\n\n```sh\ndocker rm -f yarn_dev \u0026\u0026 docker rmi -f monius/docker-yarn-dev\n```\n\n\u003e [!WARNING]  \n\u003e - To proxy all packages from both LAN net and container itself.\n\n```sh\nip rule add fwmark 0x1 lookup 100\nip route add local default dev lo table 100\n\niptables -t mangle -N DEV\niptables -t mangle -A DEV -m mark --mark 0xff -j RETURN\niptables -t mangle -A DEV -d 0.0.0.0/8 -j RETURN\niptables -t mangle -A DEV -d 10.0.0.0/8 -j RETURN\niptables -t mangle -A DEV -d 127.0.0.0/8 -j RETURN\niptables -t mangle -A DEV -d 169.254.0.0/16 -j RETURN\niptables -t mangle -A DEV -d 172.16.0.0/12 -j RETURN\niptables -t mangle -A DEV -d 192.168.0.0/16 -j RETURN\niptables -t mangle -A DEV -d 224.0.0.0/4 -j RETURN\niptables -t mangle -A DEV -d 240.0.0.0/4 -j RETURN\niptables -t mangle -A DEV -p tcp --dport 22 -j RETURN\niptables -t mangle -A DEV -p tcp --sport 22 -j RETURN\niptables -t mangle -A DEV -p tcp -j TPROXY --on-port 60091 --on-ip 127.0.0.1 --tproxy-mark 0x1\niptables -t mangle -A DEV -p udp -j TPROXY --on-port 60091 --on-ip 127.0.0.1 --tproxy-mark 0x1 \niptables -t mangle -A PREROUTING -j DEV\n\niptables -t mangle -N DEV_MASK\niptables -t mangle -A DEV_MASK -m mark --mark 0xff -j RETURN\niptables -t mangle -A DEV_MASK -d 0.0.0.0/8 -j RETURN\niptables -t mangle -A DEV_MASK -d 10.0.0.0/8 -j RETURN\niptables -t mangle -A DEV_MASK -d 127.0.0.0/8 -j RETURN\niptables -t mangle -A DEV_MASK -d 169.254.0.0/16 -j RETURN\niptables -t mangle -A DEV_MASK -d 172.16.0.0/12 -j RETURN\niptables -t mangle -A DEV_MASK -d 192.168.0.0/16 -j RETURN\niptables -t mangle -A DEV_MASK -d 224.0.0.0/4 -j RETURN\niptables -t mangle -A DEV_MASK -d 240.0.0.0/4 -j RETURN\niptables -t mangle -A DEV_MASK -p tcp --dport 22 -j RETURN\niptables -t mangle -A DEV_MASK -p tcp --sport 22 -j RETURN\niptables -t mangle -A DEV_MASK -p tcp -j MARK --set-mark 0x1\niptables -t mangle -A DEV_MASK -p udp -j MARK --set-mark 0x1\niptables -t mangle -A OUTPUT -j DEV_MASK\n```\n\n\u003e [!CAUTION]\n\u003e - To prune all docker containers and images\n\n```sh\ndocker rm -f $(docker ps -a -q) \u0026\u0026 docker rmi -f $(docker images -a -q)\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmon-ius%2Fdocker-yarn-dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmon-ius%2Fdocker-yarn-dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmon-ius%2Fdocker-yarn-dev/lists"}