diff --git a/readme-vars.yml b/readme-vars.yml index e610ede..b9296dd 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -7,69 +7,108 @@ project_logo: "https://raw.githubusercontent.com/netbox-community/netbox/develop project_blurb: | [{{ project_name|capitalize }}]({{ project_url }}) is an IP address management (IPAM) and data center infrastructure management (DCIM) tool. Initially conceived by the network engineering team at DigitalOcean, NetBox was developed specifically to address the needs of network and infrastructure engineers. It is intended to function as a domain-specific source of truth for network operations. project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_name }}" - # supported architectures available_architectures: - - { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"} - - { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"} - + - {arch: "{{ arch_x86_64 }}", tag: "amd64-latest"} + - {arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"} # container parameters param_container_name: "{{ project_name }}" param_usage_include_vols: true param_volumes: - - { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Persistent config files" } + - {vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Persistent config files"} param_usage_include_env: true param_env_vars: - - { env_var: "SUPERUSER_EMAIL", env_value: "", desc: "Email address for `admin` account" } - - { env_var: "SUPERUSER_PASSWORD", env_value: "", desc: "Password for `admin` account" } - - { env_var: "ALLOWED_HOST", env_value: "", desc: "The hostname you will use to access the app (i.e., netbox.example.com)" } - - { env_var: "DB_NAME", env_value: "", desc: "Database name (default: netbox)" } - - { env_var: "DB_USER", env_value: "", desc: "Database user" } - - { env_var: "DB_PASSWORD", env_value: "", desc: "Database password" } - - { env_var: "DB_HOST", env_value: "", desc: "Database host (default: postgres)" } - - { env_var: "DB_PORT", env_value: "", desc: "Database port (default: 5432)" } - - { env_var: "REDIS_HOST", env_value: "", desc: "Redis host (default: redis)" } - - { env_var: "REDIS_PORT", env_value: "", desc: "Redis port number (default: 6379)" } - - { env_var: "REDIS_PASSWORD", env_value: "", desc: "Redis password (default: none)" } - - { env_var: "REDIS_DB_TASK", env_value: "", desc: "Redis database ID for tasks (default: 0)" } - - { env_var: "REDIS_DB_CACHE", env_value: "", desc: "Redis database ID for caching (default: 1)" } - + - {env_var: "SUPERUSER_EMAIL", env_value: "", desc: "Email address for `admin` account"} + - {env_var: "SUPERUSER_PASSWORD", env_value: "", desc: "Password for `admin` account"} + - {env_var: "ALLOWED_HOST", env_value: "", desc: "The hostname you will use to access the app (i.e., netbox.example.com)"} + - {env_var: "DB_NAME", env_value: "", desc: "Database name (default: netbox)"} + - {env_var: "DB_USER", env_value: "", desc: "Database user"} + - {env_var: "DB_PASSWORD", env_value: "", desc: "Database password"} + - {env_var: "DB_HOST", env_value: "", desc: "Database host (default: postgres)"} + - {env_var: "DB_PORT", env_value: "", desc: "Database port (default: 5432)"} + - {env_var: "REDIS_HOST", env_value: "", desc: "Redis host (default: redis)"} + - {env_var: "REDIS_PORT", env_value: "", desc: "Redis port number (default: 6379)"} + - {env_var: "REDIS_PASSWORD", env_value: "", desc: "Redis password (default: none)"} + - {env_var: "REDIS_DB_TASK", env_value: "", desc: "Redis database ID for tasks (default: 0)"} + - {env_var: "REDIS_DB_CACHE", env_value: "", desc: "Redis database ID for caching (default: 1)"} opt_param_usage_include_env: true opt_param_env_vars: - - { env_var: "BASE_PATH", env_value: "", desc: "The path you will use to access the app (i.e., /netbox, optional, default: none)" } - - { env_var: "REMOTE_AUTH_ENABLED", env_value: "", desc: "Enable remote authentication (optional, default: False)" } - - { env_var: "REMOTE_AUTH_BACKEND", env_value: "", desc: "Python path to the custom Django authentication backend to use for external user authentication (optional, default: netbox.authentication.RemoteUserBackend)" } - - { env_var: "REMOTE_AUTH_HEADER", env_value: "", desc: "Name of the HTTP header which informs NetBox of the currently authenticated user. (optional, default: HTTP_REMOTE_USER)" } - - { env_var: "REMOTE_AUTH_AUTO_CREATE_USER", env_value: "", desc: "If true, NetBox will automatically create local accounts for users authenticated via a remote service (optional, default: False)" } - - { env_var: "REMOTE_AUTH_DEFAULT_GROUPS", env_value: "", desc: "The list of groups to assign a new user account when created using remote authentication (optional, default: [])" } - - { env_var: "REMOTE_AUTH_DEFAULT_PERMISSIONS", env_value: "", desc: "A mapping of permissions to assign a new user account when created using remote authentication (optional, default: {})" } - + - {env_var: "BASE_PATH", env_value: "", desc: "The path you will use to access the app (i.e., /netbox, optional, default: none)"} + - {env_var: "REMOTE_AUTH_ENABLED", env_value: "", desc: "Enable remote authentication (optional, default: False)"} + - {env_var: "REMOTE_AUTH_BACKEND", env_value: "", desc: "Python path to the custom Django authentication backend to use for external user authentication (optional, default: netbox.authentication.RemoteUserBackend)"} + - {env_var: "REMOTE_AUTH_HEADER", env_value: "", desc: "Name of the HTTP header which informs NetBox of the currently authenticated user. (optional, default: HTTP_REMOTE_USER)"} + - {env_var: "REMOTE_AUTH_AUTO_CREATE_USER", env_value: "", desc: "If true, NetBox will automatically create local accounts for users authenticated via a remote service (optional, default: False)"} + - {env_var: "REMOTE_AUTH_DEFAULT_GROUPS", env_value: "", desc: "The list of groups to assign a new user account when created using remote authentication (optional, default: [])"} + - {env_var: "REMOTE_AUTH_DEFAULT_PERMISSIONS", env_value: "", desc: "A mapping of permissions to assign a new user account when created using remote authentication (optional, default: {})"} param_usage_include_ports: true param_ports: - - { external_port: "8000", internal_port: "8000", port_desc: "will map the container's port 8000 to port 8000 on the host" } - + - {external_port: "8000", internal_port: "8000", port_desc: "will map the container's port 8000 to port 8000 on the host"} # application setup block app_setup_block_enabled: true app_setup_block: | Netbox requires a postgres database and a redis instance. Access the WebUI at :8000. For more information, check out [NetBox](https://github.com/netbox-community/netbox). - +# init diagram +init_diagram: | + "netbox:latest": { + docker-mods + base { + fix-attr +\nlegacy cont-init + } + docker-mods -> base + legacy-services + custom services + init-services -> legacy-services + init-services -> custom services + custom services -> legacy-services + legacy-services -> ci-service-check + init-migrations -> init-adduser + init-os-end -> init-config + init-config -> init-config-end + init-netbox-config -> init-config-end + init-os-end -> init-crontab-config + init-mods-end -> init-custom-files + base -> init-envfile + base -> init-migrations + base -> init-mods + init-config-end -> init-mods + init-mods -> init-mods-end + init-mods-package-install -> init-mods-end + init-mods -> init-mods-package-install + init-config -> init-netbox-config + base -> init-os-end + init-adduser -> init-os-end + init-envfile -> init-os-end + init-migrations -> init-os-end + init-custom-files -> init-services + init-mods-end -> init-services + init-services -> svc-cron + svc-cron -> legacy-services + svc-netbox-prepare -> svc-netbox + svc-netbox -> legacy-services + init-services -> svc-netbox-prepare + svc-netbox-prepare -> legacy-services + } + Base Images: { + "baseimage-alpine:3.20" + } + "netbox:latest" <- Base Images # changelog changelogs: - - { date: "26.08.24:", desc: "Restructure init to allow for plugins as mods."} - - { date: "16.07.24:", desc: "Add required packages for LDAP support."} - - { date: "01.06.24:", desc: "Rebase to Alpine 3.20."} - - { date: "23.12.23:", desc: "Rebase to Alpine 3.19."} - - { date: "11.06.23:", desc: "Rebase to Alpine 3.18, deprecate armhf." } - - { date: "14.05.23:", desc: "Build local docs on first run." } - - { date: "05.03.23:", desc: "Rebase to Alpine 3.17." } - - { date: "02.11.22:", desc: "Rebase to Alpine 3.16, migrate to s6v3." } - - { date: "01.08.22:", desc: "Remove py3-pillow, add tiff to fix deps." } - - { date: "26.07.22:", desc: "Add py3-pillow package back on arm to fix build issue." } - - { date: "10.12.21:", desc: "Remove py3-pillow package to fix dependency issue with 3.2.0." } - - { date: "10.12.21:", desc: "Rebase to Alpine 3.15." } - - { date: "26.04.21:", desc: "Added Redis database environment variables." } - - { date: "03.02.21:", desc: "Added remote authentication environment variables." } - - { date: "02.01.21:", desc: "Added BASE_PATH environment variable." } - - { date: "23.08.20:", desc: "Initial Release." } + - {date: "26.08.24:", desc: "Restructure init to allow for plugins as mods."} + - {date: "16.07.24:", desc: "Add required packages for LDAP support."} + - {date: "01.06.24:", desc: "Rebase to Alpine 3.20."} + - {date: "23.12.23:", desc: "Rebase to Alpine 3.19."} + - {date: "11.06.23:", desc: "Rebase to Alpine 3.18, deprecate armhf."} + - {date: "14.05.23:", desc: "Build local docs on first run."} + - {date: "05.03.23:", desc: "Rebase to Alpine 3.17."} + - {date: "02.11.22:", desc: "Rebase to Alpine 3.16, migrate to s6v3."} + - {date: "01.08.22:", desc: "Remove py3-pillow, add tiff to fix deps."} + - {date: "26.07.22:", desc: "Add py3-pillow package back on arm to fix build issue."} + - {date: "10.12.21:", desc: "Remove py3-pillow package to fix dependency issue with 3.2.0."} + - {date: "10.12.21:", desc: "Rebase to Alpine 3.15."} + - {date: "26.04.21:", desc: "Added Redis database environment variables."} + - {date: "03.02.21:", desc: "Added remote authentication environment variables."} + - {date: "02.01.21:", desc: "Added BASE_PATH environment variable."} + - {date: "23.08.20:", desc: "Initial Release."}