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.

90 lines
2.1 KiB

  1. # Shadowsocks Dockerized
  2. ## About this image
  3. This image is built to ease the deployment of the Shadowsocks server daemon with Docker.
  4. For Shadowsocks clients, you want to visit http://shadowsocks.org/en/download/clients.html
  5. ### What is Shadowsocks
  6. A secure socks5 proxy designed to protect your Internet traffic.
  7. See http://shadowsocks.org/
  8. ### What is Docker
  9. An open platform for distributed applications for developers and sysadmins.
  10. See https://www.docker.com/
  11. ## How to use this image
  12. ### Start the daemon for the first time
  13. ```bash
  14. $ docker run --name shadowsocks-app --detach --publish 58338:8338 shadowsocks/shadowsocks-libev -k "5ecret!"
  15. ```
  16. To publish UDP port for DNS tunnelling, run
  17. ```bash
  18. $ docker run --name shadowsocks-app --detach --publish 58338:8338 --publish 58338:8338/udp shadowsocks/shadowsocks-libev -k "5ecret!"
  19. ```
  20. To see all supported arguments, run
  21. ```bash
  22. $ docker run --rm shadowsocks/shadowsocks-libev --help
  23. ```
  24. To try the bleeding edge version of Shadowsocks, run with an `unstable` tag
  25. ```bash
  26. $ docker run --name shadowsocks-app --detach --publish 58338:8338 shadowsocks/shadowsocks-libev:unstable -k "5ecret!"
  27. ```
  28. ### Stop the daemon
  29. ```bash
  30. $ docker stop shadowsocks-app
  31. ```
  32. ### Start a stopped daemon
  33. ```bash
  34. $ docker start shadowsocks-app
  35. ```
  36. ### Upgrade
  37. Simply run a `docker pull` to upgrade the image.
  38. ```bash
  39. $ docker pull shadowsocks/shadowsocks-libev
  40. ```
  41. ### Use in CoreOS
  42. COMING SOON
  43. ### Use with `fig`
  44. COMING SOON
  45. ## Limitations
  46. ### JSON Configuration File
  47. This image doesn't support the JSON configuration at the moment. But I do plan to add the support in the future. So please stay tuned.
  48. ### Specifying Hostname & Port
  49. Docker containers don't have the power to specify on what hostname or port of the host should the service listen to. These have to be specified using the `--publish` argument of `docker run`.
  50. See [Docker run reference](https://docs.docker.com/reference/run/#expose-incoming-ports) for more details.
  51. ## References
  52. * [Shadowsocks - Servers](http://shadowsocks.org/en/download/servers.html)
  53. * [shadowsocks-libev](https://github.com/shadowsocks/shadowsocks-libev/blob/master/README.md)