tree: 559c30612cdf7b02b7c68b54baca6561efee6c0e [path history] [tgz]
  1. config/
  2. dist/
  3. downloads/
  4. patches/
  5. scripts/
  6. .dockerignore
  7. .env
  8. .gitignore
  9. docker-compose.ranger-base.yml
  10. docker-compose.ranger-build.yml
  11. docker-compose.ranger-hadoop.yml
  12. docker-compose.ranger-hbase.yml
  13. docker-compose.ranger-hive.yml
  14. docker-compose.ranger-kafka.yml
  15. docker-compose.ranger-knox.yml
  16. docker-compose.ranger-mysql.yml
  17. docker-compose.ranger-postgres.yml
  18. docker-compose.ranger-tagsync.yml
  19. docker-compose.ranger-usersync.yml
  20. docker-compose.ranger.yml
  21. Dockerfile.ranger
  22. Dockerfile.ranger-base
  23. Dockerfile.ranger-build
  24. Dockerfile.ranger-hadoop
  25. Dockerfile.ranger-hbase
  26. Dockerfile.ranger-hive
  27. Dockerfile.ranger-kafka
  28. Dockerfile.ranger-knox
  29. Dockerfile.ranger-mysql
  30. Dockerfile.ranger-postgres
  31. Dockerfile.ranger-solr
  32. Dockerfile.ranger-tagsync
  33. Dockerfile.ranger-usersync
  34. Dockerfile.ranger-zk
  35. download-archives.sh
  36. README.md
dev-support/ranger-docker/README.md

Overview

Docker files in this folder create docker images and run them to build Apache Ranger, deploy Apache Ranger and dependent services in containers.

Usage

  1. Ensure that you have recent version of Docker installed from docker.io (as of this writing: Engine 20.10.5, Compose 1.28.5). Make sure to configure docker with at least 6gb of memory.

  2. Set this folder as your working directory.

  3. Update environment variables in .env file, if necessary

  4. Execute following command to download necessary archives to setup Ranger/HDFS/Hive/HBase/Kafka/Knox services: ./download-archives.sh

  5. Build and deploy Apache Ranger in containers using docker-compose

    5.1. Execute following command to build Apache Ranger:

     docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger-build.yml up
    

    Time taken to complete the build might vary (upto an hour), depending on status of ${HOME}/.m2 directory cache.

    5.2. Execute following command to start Ranger, Ranger enabled HDFS/YARN/HBase/Hive/Kafka/Knox and dependent services (Solr, DB) in containers:

     export RANGER_DB_TYPE=postgres
     docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger.yml -f docker-compose.ranger-${RANGER_DB_TYPE}.yml -f docker-compose.ranger-usersync.yml -f docker-compose.ranger-tagsync.yml -f docker-compose.ranger-hadoop.yml -f docker-compose.ranger-hbase.yml -f docker-compose.ranger-kafka.yml -f docker-compose.ranger-hive.yml -f docker-compose.ranger-knox.yml up -d
    
    • valid values for RANGER_DB_TYPE: mysql or postgres

    5.3. To rebuild specific images and start containers with the new image, use following command:

     docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger.yml -f docker-compose.ranger-usersync.yml -f docker-compose.ranger-tagsync.yml -f docker-compose.ranger-hadoop.yml -f docker-compose.ranger-hbase.yml -f docker-compose.ranger-kafka.yml -f docker-compose.ranger-hive.yml -f docker-compose.ranger-knox.yml up -d --no-deps --force-recreate --build <service-1> <service-2>
    
  6. Ranger Admin can be accessed at http://localhost:6080 (admin/rangerR0cks!)