Metadata for the ArchiveTeam Docker Hub repositories
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
6.2 KiB

  1. {
  2. "user": "archiveteam",
  3. "name": "warrior-dockerfile",
  4. "namespace": "archiveteam",
  5. "repository_type": "image",
  6. "status": 1,
  7. "status_description": "active",
  8. "description": "",
  9. "is_private": false,
  10. "is_automated": true,
  11. "star_count": 18,
  12. "pull_count": 15696063,
  13. "last_updated": "2021-06-22T15:45:07.871997Z",
  14. "date_registered": "2013-11-29T04:56:28Z",
  15. "collaborator_count": 0,
  16. "affiliation": null,
  17. "hub_user": "archiveteam",
  18. "has_starred": false,
  19. "full_description": "## A Dockerfile for the [Archive Team Warrior](https://www.archiveteam.org/index.php?title=ArchiveTeam_Warrior)\n<img alt=\"Warrior logo\" src=\"https://www.archiveteam.org/images/f/f3/Archive_team.png\" height=\"100px\"><img alt=\"Docker logo\" src=\"https://upload.wikimedia.org/wikipedia/commons/7/79/Docker_%28container_engine%29_logo.png\" height=\"100px\">\n\n\nBuild, run, grab the container IP and access the web interface on port 8001.\n\nAvailable as a built image at `atdr.meo.ws/archiveteam/warrior-dockerfile`. To run the Warrior in the background, automatically start it again after machine reboot, and automatically update dependencies updates (via Watchtower), simply just\n\n``` shell-interaction\ndocker run --detach \\\n --name watchtower \\\n --restart=on-failure \\\n --volume /var/run/docker.sock:/var/run/docker.sock \\\n containrrr/watchtower --label-enable --cleanup --interval 3600 && \\\ndocker run --detach \\\n --name archiveteam-warrior \\\n --label=com.centurylinklabs.watchtower.enable=true \\\n --restart=on-failure \\\n --publish 8001:8001 \\\n atdr.meo.ws/archiveteam/warrior-dockerfile\n```\n\nOn Windows (CMD), replace `\\` with `^` like so:\n``` shell-interaction\ndocker run --detach ^\n --name watchtower ^\n --restart=on-failure ^\n --volume /var/run/docker.sock:/var/run/docker.sock ^\n containrrr/watchtower --label-enable --cleanup --interval 3600 && ^\ndocker run --detach ^\n --name archiveteam-warrior ^\n --label=com.centurylinklabs.watchtower.enable=true ^\n --restart=on-failure ^\n --publish 8001:8001 ^\n atdr.meo.ws/archiveteam/warrior-dockerfile\n```\nOn Windows (PowerShell), replace `\\` with `` ` ``.\n\nTo easily access the Warrior's web interface of multiple containers, try binding a different port for each subsequent container by incrementing `--publish` in your `docker run` command for the Warrior like so:\n\n``` shell-interaction\ndocker run --detach \\\n --env DOWNLOADER=\"your name\" \\\n --env SELECTED_PROJECT=\"auto\" \\\n --name archiveteam-warrior \\\n --label=com.centurylinklabs.watchtower.enable=true \\\n --restart=on-failure \\\n --publish 8002:8001 \\\n atdr.meo.ws/archiveteam/warrior-dockerfile\n```\n\n\n### Configuration\n\n\n#### Manual Using the Web Interface\nTo access the web interface get the container IP from `docker inspect` and point your browser to `http://IP:8001`. If you are running this container on a headless machine, be sure to bind the docker container's port to a port on that machine (e.g. `-p 8001:8001`) so that you can access the web interface on your LAN.\n\nYou can stop and resume the Warrior with `docker stop` and `docker start`\n\n\n#### Using Environment Variables\n\nIf you don't mount a `projects/config.json` configuration, you can provide seed settings using\nenvironment variables. Once a `projects/config.json` file exists, environment variables\nwill be ignored. Please note: This is currently not available in the Raspberry PI image.\n\n##### Example:\n\nTo specify environment variables, modify your `docker run` command for the Warrior like so:\n``` shell-interaction\ndocker run --detach \\\n --env DOWNLOADER=\"your name\" \\\n --env SELECTED_PROJECT=\"auto\" \\\n --name archiveteam-warrior \\\n --label=com.centurylinklabs.watchtower.enable=true \\\n --restart=on-failure \\\n --publish 8001:8001 \\\n atdr.meo.ws/archiveteam/warrior-dockerfile\n```\n\n##### Mapping\n\n| ENV | JSON key | Example | Default |\n|----------------------|----------------------|-------------------|---------|\n| DOWNLOADER | downloader | | |\n| HTTP_PASSWORD | http_password | | |\n| HTTP_USERNAME | http_username | | |\n| SELECTED_PROJECT | selected_project | `auto`, `tumblr` | |\n| SHARED_RSYNC_THREADS | shared:rsync_threads | | `20` |\n| WARRIOR_ID | warrior_id | | |\n| CONCURRENT_ITEMS | concurrent_items | | `3` |\n\n## Raspberry Pi\nYou can build the container with the following command:\n``` shell-interaction\ndocker build --rm -t warrior-arm32v5:latest -f Dockerfile.raspberry .\n```\n\nThe image needs a place to store the downloaded data as well as its\nconfiguration. Say you have a location suitable at /var/local/warrior\nuse the command below, otherwise update the data and config.json paths.\n\nFirst, create an empty config.json if it doesn't exist. Otherwise when you\nmount the path with docker it will create it as a directory.\n``` shell-interaction\ntouch /var/local/warrior/config.json\n```\n\nNow start the container.\n``` shell-interaction\ndocker run \\\n\t--volume /var/local/warrior/data:/data/data \\\n\t--volume /var/local/warrior/config.json:/home/warrior/projects/config.json \\\n\t--publish 8001:8001 \\\n\t--restart unless-stopped \\\n\twarrior-arm32v5:latest\n```\n\n## Kubernetes\n\nEdit the environment variable `DOWNLOADER` inside `warrior.yml` and set it to your name. This name will be used on the leaderboards.\n\n``` shell-interaction\nkubectl create namespace archive\nkubectl apply -n archive -f warrior.yml\n```\n\nIf everything works out you should be able to connect to any of your k8s' nodes IP on port 30163 to view.\n\nYou can build the image on other platforms (e.g. Raspberry Pi here for example) by using [`docker buildx`](https://github.com/docker/buildx), e.g.:\n\n``` shell-interaction\ndocker buildx build -t <yourusername>/archive-team-warrior:latest --platform linux/arm/v7 --push .\n```\n\n",
  20. "permissions": {
  21. "read": true,
  22. "write": false,
  23. "admin": false
  24. },
  25. "media_types": [
  26. "application/vnd.docker.container.image.v1+json"
  27. ],
  28. "content_types": [
  29. "image"
  30. ],
  31. "categories": []
  32. }