Skip to content

Incorrect path to manage.py prevents superuser creation #3

@trly

Description

@trly

linuxserver.io


Expected Behavior

A superuser should be created with the username 'admin' and password/e-mail specified by SUPERUSER_PASSWORD/SUPERUSER_EMAIL

User.objects.create_superuser(username, email, password);

Current Behavior

The path to netbox's manage.py script appears to be incorrect and prevents the successful completion of /etc/cont-init.d/50-config

cat << EOF | s6-setuidgid abc python3 /app/healthchecks/manage.py shell

python3: can't open file '/app/healthchecks/manage.py': [Errno 2] No such file or directory

Steps to Reproduce

  1. Deploy container with SUPERUSER_PASSWORD and SUPERUSER_EMAIL set
  2. Attempt to login as 'admin' with the SUPERUSER_PASSWORD value
  3. If SUPERUSER_PASSWORD and SUPERUSER_EMAIL are not set, the above error message is not generated on startup.

Environment

OS: Debian Buster (10.6)
CPU architecture: x86_64
How docker service was installed: from the official docker repo

Command used to create docker container (run/create/compose/screenshot)

version: '2'
services:
  app:
    container_name: netbox
    image: linuxserver/netbox:version-v2.9.8
    environment:
    - SUPERUSER_EMAIL={{ netbox_superuser_email }}
    - SUPERUSER_PASSWORD={{ netbox_superuser_password }}
    - ALLOWED_HOST={{ netbox_allowed_host }}
    - DB_NAME={{ netbox_db_name }}
    - DB_USER={{ netbox_db_user }}
    - DB_PASSWORD={{ netbox_db_password }}
    - DB_HOST={{ netbox_db_host }}
    - DB_PORT={{ netbox_db_port }}
    - REDIS_HOST={{ netbox_redis_host }}
    - TZ={{ netbox_tz }}
    ports:
    - "8000:8000"
    volumes:
    - config:/config
    restart: unless-stopped
  redis:
    container_name: redis
    image: redis
volumes:
  config:

Docker logs

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 01-envfile: executing...
[cont-init.d] 01-envfile: exited 0.
[cont-init.d] 10-adduser: executing...
usermod: no changes

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    911
User gid:    911
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 50-config: executing...
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')
Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, dcim, extras, ipam, secrets, sessions, taggit, tenancy, users, virtualization
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying auth.0012_alter_user_first_name_max_length... OK
  Applying tenancy.0001_initial... OK
  Applying tenancy.0002_tenant_group_optional... OK
  Applying tenancy.0003_unicode_literals... OK
  Applying taggit.0001_initial... OK
  Applying taggit.0002_auto_20150616_2121... OK
  Applying tenancy.0004_tags... OK
  Applying tenancy.0005_change_logging... OK
  Applying dcim.0001_initial... OK
  Applying ipam.0001_initial... OK
  Applying dcim.0002_auto_20160622_1821... OK
  Applying extras.0001_initial... OK
  Applying extras.0002_custom_fields... OK
  Applying extras.0003_exporttemplate_add_description... OK
  Applying extras.0004_topologymap_change_comma_to_semicolon... OK
  Applying extras.0005_useraction_add_bulk_create... OK
  Applying extras.0006_add_imageattachments... OK
  Applying extras.0007_unicode_literals... OK
  Applying extras.0008_reports... OK
  Applying extras.0009_topologymap_type... OK
  Applying extras.0010_customfield_filter_logic... OK
  Applying extras.0011_django2... OK
  Applying extras.0012_webhooks... OK
  Applying extras.0013_objectchange... OK
  Applying ipam.0002_vrf_add_enforce_unique... OK
  Applying dcim.0003_auto_20160628_1721... OK
  Applying dcim.0004_auto_20160701_2049... OK
  Applying dcim.0005_auto_20160706_1722... OK
  Applying dcim.0006_add_device_primary_ip4_ip6... OK
  Applying dcim.0007_device_copy_primary_ip... OK
  Applying dcim.0008_device_remove_primary_ip... OK
  Applying dcim.0009_site_32bit_asn_support... OK
  Applying dcim.0010_devicebay_installed_device_set_null... OK
  Applying ipam.0003_ipam_add_vlangroups... OK
  Applying ipam.0004_ipam_vlangroup_uniqueness... OK
  Applying ipam.0005_auto_20160725_1842... OK
  Applying ipam.0006_vrf_vlan_add_tenant... OK
  Applying ipam.0007_prefix_ipaddress_add_tenant... OK
  Applying ipam.0008_prefix_change_order... OK
  Applying ipam.0009_ipaddress_add_status... OK
  Applying ipam.0010_ipaddress_help_texts... OK
  Applying ipam.0011_rir_add_is_private... OK
  Applying dcim.0011_devicetype_part_number... OK
  Applying dcim.0012_site_rack_device_add_tenant... OK
  Applying dcim.0013_add_interface_form_factors... OK
  Applying dcim.0014_rack_add_type_width... OK
  Applying dcim.0015_rack_add_u_height_validator... OK
  Applying dcim.0016_module_add_manufacturer... OK
  Applying dcim.0017_rack_add_role... OK
  Applying dcim.0018_device_add_asset_tag... OK
  Applying dcim.0019_new_iface_form_factors... OK
  Applying dcim.0020_rack_desc_units... OK
  Applying dcim.0021_add_ff_flexstack... OK
  Applying dcim.0022_color_names_to_rgb... OK
  Applying ipam.0012_services... OK
  Applying ipam.0013_prefix_add_is_pool... OK
  Applying ipam.0014_ipaddress_status_add_deprecated... OK
  Applying ipam.0015_global_vlans... OK
  Applying ipam.0016_unicode_literals... OK
  Applying ipam.0017_ipaddress_roles... OK
  Applying ipam.0018_remove_service_uniqueness_constraint... OK
  Applying dcim.0023_devicetype_comments... OK
  Applying dcim.0024_site_add_contact_fields... OK
  Applying dcim.0025_devicetype_add_interface_ordering... OK
  Applying dcim.0026_add_rack_reservations... OK
  Applying dcim.0027_device_add_site... OK
  Applying dcim.0028_device_copy_rack_to_site... OK
  Applying dcim.0029_allow_rackless_devices... OK
  Applying dcim.0030_interface_add_lag... OK
  Applying dcim.0031_regions... OK
  Applying dcim.0032_device_increase_name_length... OK
  Applying dcim.0033_rackreservation_rack_editable... OK
  Applying dcim.0034_rename_module_to_inventoryitem... OK
  Applying dcim.0035_device_expand_status_choices... OK
  Applying dcim.0036_add_ff_juniper_vcp... OK
  Applying dcim.0037_unicode_literals... OK
  Applying dcim.0038_wireless_interfaces... OK
  Applying dcim.0039_interface_add_enabled_mtu... OK
  Applying dcim.0040_inventoryitem_add_asset_tag_description... OK
  Applying dcim.0041_napalm_integration... OK
  Applying dcim.0042_interface_ff_10ge_cx4... OK
  Applying dcim.0043_device_component_name_lengths... OK
  Applying virtualization.0001_virtualization... OK
  Applying ipam.0019_virtualization... OK
  Applying ipam.0020_ipaddress_add_role_carp... OK
  Applying dcim.0044_virtualization... OK
  Applying dcim.0045_devicerole_vm_role... OK
  Applying dcim.0046_rack_lengthen_facility_id... OK
  Applying dcim.0047_more_100ge_form_factors... OK
  Applying dcim.0048_rack_serial... OK
  Applying dcim.0049_rackreservation_change_user... OK
  Applying dcim.0050_interface_vlan_tagging... OK
  Applying dcim.0051_rackreservation_tenant... OK
  Applying dcim.0052_virtual_chassis... OK
  Applying dcim.0053_platform_manufacturer... OK
  Applying dcim.0054_site_status_timezone_description... OK
  Applying dcim.0055_virtualchassis_ordering... OK
  Applying dcim.0056_django2... OK
  Applying dcim.0057_tags... OK
  Applying dcim.0058_relax_rack_naming_constraints... OK
  Applying dcim.0059_site_latitude_longitude... OK
  Applying dcim.0060_change_logging... OK
  Applying dcim.0061_platform_napalm_args... OK
  Applying extras.0014_configcontexts... OK
  Applying extras.0015_remove_useraction... OK
  Applying extras.0016_exporttemplate_add_cable... OK
  Applying extras.0017_exporttemplate_mime_type_length... OK
  Applying extras.0018_exporttemplate_add_jinja2... OK
  Applying extras.0019_tag_taggeditem... OK
  Applying dcim.0062_interface_mtu... OK
  Applying dcim.0063_device_local_context_data... OK
  Applying dcim.0064_remove_platform_rpc_client... OK
  Applying dcim.0065_front_rear_ports... OK
  Applying circuits.0001_initial... OK
  Applying circuits.0002_auto_20160622_1821... OK
  Applying circuits.0003_provider_32bit_asn_support... OK
  Applying circuits.0004_circuit_add_tenant... OK
  Applying circuits.0005_circuit_add_upstream_speed... OK
  Applying circuits.0006_terminations... OK
  Applying dcim.0066_cables...
    Adding console connections... 0 cables created
    Adding power connections... 0 cables created
    Adding interface connections... 0 cables created
 OK
  Applying circuits.0007_circuit_add_description... OK
  Applying circuits.0008_circuittermination_interface_protect_on_delete... OK
  Applying circuits.0009_unicode_literals... OK
  Applying circuits.0010_circuit_status... OK
  Applying circuits.0011_tags... OK
  Applying circuits.0012_change_logging... OK
  Applying circuits.0013_cables...
    Adding circuit terminations... 0 cables created
 OK
  Applying circuits.0014_circuittermination_description... OK
  Applying circuits.0015_custom_tag_models... OK
  Applying circuits.0016_3569_circuit_fields... OK
  Applying circuits.0017_circuittype_description... OK
  Applying circuits.0018_standardize_description... OK
  Applying circuits.0019_nullbooleanfield_to_booleanfield... OK
  Applying virtualization.0002_virtualmachine_add_status... OK
  Applying virtualization.0003_cluster_add_site... OK
  Applying virtualization.0004_virtualmachine_add_role... OK
  Applying virtualization.0005_django2... OK
  Applying virtualization.0006_tags... OK
  Applying virtualization.0007_change_logging... OK
  Applying virtualization.0008_virtualmachine_local_context_data... OK
  Applying virtualization.0009_custom_tag_models... OK
  Applying virtualization.0010_cluster_add_tenant... OK
  Applying virtualization.0011_3569_virtualmachine_fields... OK
  Applying tenancy.0006_custom_tag_models... OK
  Applying virtualization.0012_vm_name_nonunique... OK
  Applying virtualization.0013_deterministic_ordering... OK
  Applying virtualization.0014_standardize_description... OK
  Applying ipam.0021_vrf_ordering... OK
  Applying ipam.0022_tags... OK
  Applying ipam.0023_change_logging... OK
  Applying ipam.0024_vrf_allow_null_rd... OK
  Applying ipam.0025_custom_tag_models... OK
  Applying ipam.0026_prefix_ordering_vrf_nulls_first... OK
  Applying ipam.0027_ipaddress_add_dns_name... OK
  Applying ipam.0028_3569_prefix_fields... OK
  Applying ipam.0029_3569_ipaddress_fields... OK
  Applying ipam.0030_3569_vlan_fields... OK
  Applying ipam.0031_3569_service_fields... OK
  Applying ipam.0032_role_description... OK
  Applying ipam.0033_deterministic_ordering... OK
  Applying ipam.0034_fix_ipaddress_status_dhcp... OK
  Applying ipam.0035_drop_ip_family... OK
  Applying ipam.0036_standardize_description... OK
  Applying secrets.0001_initial... OK
  Applying secrets.0002_userkey_add_session_key... OK
  Applying secrets.0003_unicode_literals... OK
  Applying secrets.0004_tags... OK
  Applying secrets.0005_change_logging... OK
  Applying secrets.0006_custom_tag_models... OK
  Applying dcim.0067_device_type_remove_qualifiers... OK
  Applying dcim.0068_rack_new_fields... OK
  Applying dcim.0069_deprecate_nullablecharfield... OK
  Applying dcim.0070_custom_tag_models... OK
  Applying extras.0020_tag_data... OK
  Applying extras.0021_add_color_comments_changelog_to_tag... OK
  Applying extras.0022_custom_links... OK
  Applying extras.0023_fix_tag_sequences... OK
  Applying extras.0024_scripts... OK
  Applying extras.0025_objectchange_time_index... OK
  Applying extras.0026_webhook_ca_file_path... OK
  Applying extras.0027_webhook_additional_headers... OK
  Applying extras.0028_remove_topology_maps... OK
  Applying extras.0029_3569_customfield_fields... OK
  Applying extras.0030_3569_objectchange_fields... OK
  Applying extras.0031_3569_exporttemplate_fields... OK
  Applying extras.0032_3569_webhook_fields... OK
  Applying extras.0033_graph_type_template_language... OK
  Applying extras.0034_configcontext_tags... OK
  Applying extras.0035_deterministic_ordering... OK
  Applying extras.0036_contenttype_filters_to_q_objects... OK
  Applying extras.0037_configcontexts_clusters... OK
  Applying extras.0038_webhook_template_support... OK
  Applying extras.0039_update_features_content_types... OK
  Applying extras.0040_standardize_description... OK
  Applying extras.0041_tag_description... OK
  Applying extras.0042_customfield_manager... OK
  Applying virtualization.0015_vminterface... OK
  Applying ipam.0037_ipaddress_assignment... OK
  Applying dcim.0071_device_components_add_description... OK
  Applying dcim.0072_powerfeeds... OK
  Applying dcim.0073_interface_form_factor_to_type... OK
  Applying dcim.0074_increase_field_length_platform_name_slug... OK
  Applying dcim.0075_cable_devices...
Updating cable device terminations...
 OK
  Applying dcim.0076_console_port_types... OK
  Applying dcim.0077_power_types... OK
  Applying dcim.0078_3569_site_fields... OK
  Applying dcim.0079_3569_rack_fields... OK
  Applying dcim.0080_3569_devicetype_fields... OK
  Applying dcim.0081_3569_device_fields... OK
  Applying dcim.0082_3569_interface_fields... OK
  Applying virtualization.0016_replicate_interfaces...
    Replicating 0 VM interfaces...
    Replicating assigned objects...
/app/netbox/netbox/utilities/api.py:116: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if obj is '':
/app/netbox/netbox/utilities/api.py:124: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if data is '':
 OK
  Applying dcim.0082_3569_port_fields... OK
  Applying dcim.0083_3569_cable_fields... OK
  Applying dcim.0084_3569_powerfeed_fields... OK
  Applying dcim.0085_3569_poweroutlet_fields... OK
  Applying dcim.0086_device_name_nonunique... OK
  Applying dcim.0087_role_descriptions... OK
  Applying dcim.0088_powerfeed_available_power... OK
  Applying dcim.0089_deterministic_ordering... OK
  Applying dcim.0090_cable_termination_models... OK
  Applying dcim.0091_interface_type_other... OK
  Applying dcim.0092_fix_rack_outer_unit... OK
  Applying dcim.0093_device_component_ordering... OK
  Applying dcim.0094_device_component_template_ordering... OK
  Applying dcim.0095_primary_model_ordering... OK
  Applying dcim.0096_interface_ordering... OK
  Applying dcim.0097_interfacetemplate_type_other... OK
  Applying dcim.0098_devicetype_images... OK
  Applying dcim.0099_powerfeed_negative_voltage... OK
  Applying dcim.0100_mptt_remove_indexes... OK
  Applying dcim.0101_nested_rackgroups... OK
  Applying dcim.0102_nested_rackgroups_rebuild... OK
  Applying dcim.0103_standardize_description... OK
  Applying dcim.0104_correct_infiniband_types... OK
  Applying dcim.0105_interface_name_collation... OK
  Applying dcim.0106_role_default_color... OK
  Applying dcim.0107_component_labels... OK
  Applying dcim.0108_add_tags... OK
  Applying dcim.0109_interface_remove_vm... OK
  Applying dcim.0110_virtualchassis_name... OK
  Applying dcim.0111_component_template_description... OK
  Applying dcim.0112_standardize_components... OK
  Applying dcim.0113_nullbooleanfield_to_booleanfield... OK
  Applying dcim.0114_update_jsonfield... OK
  Applying dcim.0115_rackreservation_order... OK
  Applying dcim.0116_rearport_max_positions... OK
  Applying extras.0043_report... OK
  Applying extras.0044_jobresult... OK
  Applying extras.0045_configcontext_changelog... OK
  Applying extras.0046_update_jsonfield... OK
  Applying extras.0047_tag_ordering... OK
  Applying users.0001_api_tokens... OK
  Applying users.0002_unicode_literals... OK
  Applying users.0003_token_permissions... OK
  Applying users.0004_standardize_description... OK
  Applying users.0005_userconfig... OK
  Applying users.0006_create_userconfigs... OK
  Applying users.0007_proxy_group_user... OK
  Applying users.0008_objectpermission... OK
  Applying users.0009_replicate_permissions... OK
  Applying secrets.0007_secretrole_description... OK
  Applying secrets.0008_standardize_description... OK
  Applying secrets.0009_secretrole_drop_users_groups... OK
  Applying sessions.0001_initial... OK
  Applying taggit.0003_taggeditem_add_unique_index... OK
  Applying tenancy.0007_nested_tenantgroups... OK
  Applying tenancy.0008_nested_tenantgroups_rebuild... OK
  Applying tenancy.0009_standardize_description... OK
  Applying users.0010_update_jsonfield... OK
  Applying virtualization.0017_update_jsonfield... OK
python3: can't open file '/app/healthchecks/manage.py': [Errno 2] No such file or directory
[cont-init.d] 50-config: exited 2.
[cont-init.d] 99-custom-files: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[uWSGI] getting INI configuration from uwsgi.ini
[services.d] done.
[uwsgi-static] added mapping for /static => static
*** Starting uWSGI 2.0.18 (64bit) on [Fri Nov  6 08:23:40 2020] ***
compiled with version: 9.3.0 on 17 April 2020 16:07:02
os: Linux-4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18)
nodename: 6ddf5f561e1d
machine: x86_64
clock source: unix
pcre jit disabled
detected number of CPU cores: 2
current working directory: /app/netbox/netbox
detected binary path: /usr/sbin/uwsgi
your memory page size is 4096 bytes
detected max file descriptor number: 1048576
building mime-types dictionary from file /etc/mime.types...1293 entry found
lock engine: pthread robust mutexes
thunder lock: disabled (you can enable it with --thunder-lock)
uwsgi socket 0 bound to TCP address :8000 fd 3
Python version: 3.8.5 (default, Jul 20 2020, 23:11:29)  [GCC 9.3.0]
Python main interpreter initialized at 0x55f61adeeaa0
python threads support enabled
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
mapped 145840 bytes (142 KB) for 1 cores
*** Operational MODE: single process ***
running "exec:/usr/bin/python3 ./manage.py collectstatic --noinput" (pre app)...
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')

979 static files copied to '/app/netbox/netbox/static'.
running "exec:/usr/bin/python3 ./manage.py remove_stale_contenttypes --no-input" (pre app)...
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')
running "exec:/usr/bin/python3 ./manage.py clearsessions" (pre app)...
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')
running "exec:/usr/bin/python3 ./manage.py invalidate all" (pre app)...
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')
./netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')
WSGI app 0 (mountpoint='') ready in 2 seconds on interpreter 0x55f61adeeaa0 pid: 260 (default app)
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI master process (pid: 260)
spawned uWSGI worker 1 (pid: 289, cores: 1)
[uwsgi-daemons] spawning "/usr/bin/python3 ./manage.py rqworker" (uid: 911 gid: 911)
/app/netbox/netbox/netbox/settings.py:230: UserWarning: DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.
  warnings.warn('DEFAULT_TIMEOUT is no longer supported under REDIS configuration. Set RQ_DEFAULT_TIMEOUT instead.')

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions