Skip to content

Latest commit

 

History

History
116 lines (116 loc) · 7.75 KB

CHANGELOG.md

File metadata and controls

116 lines (116 loc) · 7.75 KB
  • 2017-09-08:
    • Create unifi55 branch allowing for v5.6.X stable candidates/stable and v5.5.X move to LTS
    • Move master/sc v5.5.23 to unifi55/sc
    • Update master/sc VERSION to 5.6.16
    • Update Docker Hub settings to build from new unifi55 branch
    • Move docker-compose.yml to examples subfolder
    • Create docker-compose-EXTERNALDB.yml in examples subfolder
    • Switch container back to initially running as root/UID=0
      • Allows startup to insure permissions for directories and data are correct at each run
      • Can be overridden at startup via Docker --user command (IE: --user unifi)
    • Dockerfile changes:
      • Remove "USER unifi", handling process setuid/setgid with "gosu" instead of relying on Docker
      • Add ENV GOSU_VERSION variable
      • Add gosu download and setup in RUN
      • Add set +x to RUN to provide some minimal verbosity transparency into build steps
      • Move "&&" in RUN from end of commands to start of next line, format is cleaner
      • Change curl UniFi download to output to specific file in /tmp
      • Remove unused ENV JVM_MAX_THREAD_STACK_SIZE
      • Change ENTRYPOINT to point to "docker-entrypoint.sh"
      • Add CMD "unifi" as default action for entrypoint, makes it simpler to override container startup for maintenance, etc.
    • Move scripts and files to root subfolders matching finished container paths
    • Rename unifi-init to docker-entrypoint.sh, move to /usr/local/bin/
    • docker-entrypoint.sh changes:
      • Support Dockerfile ENTRYPOINT CMD passthrough
      • Remove JVM_MAX_THREAD_STACK_SIZE
      • Clean up other JVM ENV options processing
      • Add logic to check for script running as UID=0
        • Allows to adjust file/folder permissions, then setuid/setgid for final Java process to 999
        • Further supports commands to be passed through and run as root or other specified user
    • Rework README.md
  • 2017-09-01:
    • Update sc VERSION to 5.5.23
    • Update testing VERSION to 5.6.16
    • Update Dockerfile to reduce size and default run as non-root user to reduce attack vector.
      • Drop jsvc, don't need an init/service manager in a container
      • Switch to correct MongoDB repository, mongod version in completed image is now 2.6.12 (was 2.4.10)
      • Use mongodb-org-server package to further reduce compressed image space (~-50MB!)
      • Create mongodb and unifi users/groups with known UID/GID
      • Specifically create all needed /usr/lib/unifi subdirectories
      • Recursively change ownership of /usr/lib/unifi to unifi:unifi (999:999)
      • Remove unneeded/unused environment variables
      • Instead of "ADD", "COPY" multiple files to /usr/lib/unifi from "./files"
      • Add USER setting to default to run as 'unifi' user
    • Update unifi-init script to 0.3.2
      • Moved to files/bin/ subfolder
      • Remove unneeded/unused environment variables
      • Add system.properties setup functionality to insure UniFi container mode is on
      • Simplify SSL setup if keystore not present, default now built via java keytool.
      • Drop JSVC, term_handler, wait, etc., process term/zombie reaping now all correctly handled by Docker --init or java process
      • Don't background java process, unifi.logStdout=true in system.properties outputs to "docker logs containername"
      • Formatting adjustments, cleanup
    • Add files/system.properties.default, contains default settings for UniFi "container" mode
    • Update Makefile to use OTHER variable for additional Docker launch options

  • 2017-08-26:
    • Update sc VERSION to v5.5.22
    • Update testing VERSION to v5.6.15
    • Fix missing curl removal output redirect to /dev/null in Dockerfile

  • 2017-08-23:
    • Change README.md to add direct link to GitHub docker-compose.yml file
    • Change README.md to adjust formatting, replace tabs with spaces

  • 2017-08-21:
    • Update stable and unifi54 to use unifi-init script for startup/shutdown handling + SSL
    • Change README.md to reflect full SSL support across tags
    • Change README.md to reflect recommended --init flag for run to avoid possible signal handling issues
    • Change README.md to highlight host/Docker volume paths that need to be set/changed/removed.
    • Change docker-compose.yml to highlight host/Docker volume paths that need to be set/changed/removed
    • Update subfolders Makefile to use --init flag when 'make start' is used

  • 2017-08-16:
    • Changed UNIFI_VERSION to VERSION throughout
    • Where possible switched from 2 spaces to 4 spaces for indent, readability
    • Found extra used space to clean up in /var during build
    • Add clean process to Makefiles
    • Additional changes, cleanup and improvements to unifi-init script

  • 2017-08-15:
    • All UniFi versions remain unchanged.
    • Switch to curl for unifi_sysvinit_all.deb file retrieval. Not downloading whole directories, don't need wget functionality
    • Redirect apt-get/dpkg STDOUT noise during build to /dev/null. Makes finding errors during build much easier
    • Move UniFi version info into self-contained file UNIFI_VERSION. Makes Dockerfile totally tag/version independent
    • Updated Docker Hub hooks/build script to account for change. Loads UNIFI_VERSION file into a build arg
    • Switch to Makefiles for local builds. Automates injecting build args including UNIFI_VERSION
    • Update unifi54 branch to use same tools, build structure, labels, UNIFI_VERSION, etc.
    • Update uninfi54-sc to use unifi-init instead of supervisord
    • (doc) Move Changes from README.md to CHANGELOG.md. Added Markdown link in README.md to GitHub CHANGELOG.md blob
    • (doc) README.md other small updates

  • 2017-08-13:
    • All UniFi versions remain unchanged
    • Cleanup syntax, etc., collapse whitepace in unifi-init
    • Disable log tail in unifi-init. Need to find a better way to handle. For now app/db logs on container volume are sufficient
    • Further README.md updates

  • 2017-08-12:
    • All UniFi versions remain unchanged
    • Add build hook script and labels to Dockerfile
    • Switch base to debain:jessie-slim image to reduce overall size
    • Change unstable, testing, and sc tags to use bash init-script ENTRYPOINT instead of supervisord. Simplification and size reduction
    • Copy majority of function from UniFi packaged init-script. Change to JSVC for process launch
    • Add support for Java/JSVC environment variable adjustements at container start via --env command line flags
    • Add SSL Java keystore update functionality
    • Automated SSL cert import for LetsEncrypt, etc. if full cert chain and private key are present in PEM format
    • See "SSL custom certificate configuration support (LetsEncrypt, etc.)" further along in README.md
    • Note: Init-script changes will be moved to latest tag and the unifi54 branch after a brief period to insure stability
    • Please report any bugs and/or issues on GitHub: https://github.com/goofball222/unifi

  • 2017-08-09: testing tag updated to UniFi 5.6.14

  • 2017-08-08: sc tag updated to UniFi 5.5.21

  • 2017-07-31: latest tag updated to UniFi 5.5.20, tagged release-5.5.20

  • 2017-07-29: lts and lts-sc tags changed to unifi54 and unifi54-sc