docker-compose.yml 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. ---
  2. version: "3"
  3. services:
  4. sabredav:
  5. image: php:8.1-alpine3.15
  6. restart: always
  7. volumes:
  8. - ./:/var/www/html/
  9. ports:
  10. - "4040:4040"
  11. command: php -S 0.0.0.0:4040 /var/www/html/src/WebDAV/resources/server.php
  12. webdav:
  13. image: bytemark/webdav
  14. restart: always
  15. ports:
  16. - "4080:80"
  17. environment:
  18. AUTH_TYPE: Digest
  19. USERNAME: alice
  20. PASSWORD: secret1234
  21. sftp:
  22. container_name: sftp
  23. restart: always
  24. image: atmoz/sftp
  25. volumes:
  26. - ./test_files/sftp/users.conf:/etc/sftp/users.conf
  27. - ./test_files/sftp/ssh_host_ed25519_key:/etc/ssh/ssh_host_ed25519_key
  28. - ./test_files/sftp/ssh_host_rsa_key:/etc/ssh/ssh_host_rsa_key
  29. - ./test_files/sftp/id_rsa.pub:/home/bar/.ssh/keys/id_rsa.pub
  30. ports:
  31. - "2222:22"
  32. sftp_eddsa_only:
  33. container_name: sftp_eddsa_only
  34. restart: always
  35. image: atmoz/sftp
  36. volumes:
  37. - ./test_files/sftp/users.conf:/etc/sftp/users.conf
  38. - ./test_files/sftp/sshd_custom_configs.sh:/etc/sftp.d/sshd_custom_configs.sh
  39. - ./test_files/sftp/ssh_host_ed25519_key:/etc/ssh/ssh_host_ed25519_key
  40. ports:
  41. - "2223:22"
  42. ftp:
  43. container_name: ftp
  44. restart: always
  45. image: delfer/alpine-ftp-server
  46. environment:
  47. USERS: 'foo|pass|/home/foo/upload'
  48. ADDRESS: 'localhost'
  49. ports:
  50. - "2121:21"
  51. - "21000-21010:21000-21010"
  52. ftpd:
  53. container_name: ftpd
  54. restart: always
  55. environment:
  56. PUBLICHOST: localhost
  57. FTP_USER_NAME: foo
  58. FTP_USER_PASS: pass
  59. FTP_USER_HOME: /home/foo
  60. image: stilliard/pure-ftpd
  61. ports:
  62. - "2122:21"
  63. - "30000-30009:30000-30009"
  64. command: "/run.sh -l puredb:/etc/pure-ftpd/pureftpd.pdb -E -j -P localhost"
  65. toxiproxy:
  66. container_name: toxiproxy
  67. restart: unless-stopped
  68. image: ghcr.io/shopify/toxiproxy
  69. command: "-host 0.0.0.0 -config /opt/toxiproxy/config.json"
  70. volumes:
  71. - ./test_files/toxiproxy/toxiproxy.json:/opt/toxiproxy/config.json:ro
  72. ports:
  73. - "8474:8474" # HTTP API
  74. - "8222:8222" # SFTP
  75. - "8121:8121" # FTP
  76. - "8122:8122" # FTPD