docker-compose.yml 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. version: '2'
  2. volumes:
  3. plain_data:
  4. encfs_password:
  5. sshd_host_keys:
  6. services:
  7. encfs:
  8. image: fphammerle/reverse-encfs:0.1.1-encfs1.9.5-amd64
  9. volumes:
  10. - plain_data:/plain/data:ro
  11. - encfs_password:/secret
  12. # TODO replace host path with named volume
  13. # [...] the local driver accepts mount options as a comma-separated list in the o parameter.
  14. # https://docs.docker.com/storage/volumes/
  15. #
  16. # update 2019-03-27: adding 'shared' to volumes.*.driver_opts.o did not suffice.
  17. # got inspired by https://github.com/docker/compose/issues/2957#issuecomment-403175803
  18. - /mnt/encrypted:/encrypted:shared
  19. networks: []
  20. devices: [/dev/fuse]
  21. cap_add: [SYS_ADMIN]
  22. security_opt: ['apparmor:unconfined']
  23. rsync_sshd:
  24. image: fphammerle/rsync-sshd:0.1-amd64
  25. environment:
  26. USERS: alice
  27. volumes:
  28. - /mnt/encrypted:/data:slave,ro
  29. - sshd_host_keys:/etc/ssh/host_keys
  30. - ~/.ssh/authorized_keys:/home/alice/.ssh/authorized_keys:ro
  31. ports: ['127.0.0.1:2022:22']
  32. # rsync -av --rsh='ssh -p 2022' alice@localhost:/ encrypted
  33. # https://docs.docker.com/compose/compose-file/compose-file-v2/