i have the same problem. 
i use docker compose to build odoo.
services:
# ODOO
  odoo:
    container_name: odoo
    image: odoo:latest
    depends_on:
      - db
    ports:
      - "xxxx:xxxx"
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./config:/etc/odoo
      - ./addons:/mnt/extra-addons
      - ./custom_addons:/mnt/custom-addons
    environment:
      - PASSWORD_FILE=/run/secrets/postgresql_password
    secrets:
      - postgresql_password
  db:
    container_name: odoo_db
    image: postgres:15
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_PASSWORD_FILE=/run/secrets/postgresql_password
      - POSTGRES_USER=odoo
      - PGDATA=/var/lib/postgresql/data/pgdata
    volumes:
      - odoo-db-data:/var/lib/postgresql/data/pgdata
    secrets:
      - postgresql_password
# Segreti
secrets:
  postgresql_password:
    file: odoo_pg_pass
volumes:
  odoo-web-data:
  odoo-db-data:
the file odoo.conf:
[options]
addons_path = /mnt/extra-addons,/mnt/custom-addons
data_dir = /var/lib/odoo
; admin_passwd = admin
; csv_internal_sep = ,
; db_maxconn = 64
; db_name = False
; db_template = template1
; dbfilter = .*
; debug_mode = False
; email_from = False
; limit_memory_hard = 2684354560
; limit_memory_soft = 2147483648
; limit_request = 8192
; limit_time_cpu = 60
; limit_time_real = 120
; list_db = True
; log_db = False
; log_handler = [':INFO']
; log_level = info
; logfile = None
; longpolling_port = 8072
; max_cron_threads = 2
; osv_memory_age_limit = 1.0
; osv_memory_count_limit = False
; smtp_password = False
; smtp_port = 25
; smtp_server = localhost
; smtp_ssl = False
; smtp_user = False
; workers = 0
; xmlrpc = True
; xmlrpc_interface = 
; xmlrpc_port = 8069
; xmlrpcs = True
; xmlrpcs_interface = 
; xmlrpcs_port = 8071
|-- addons
|-- config
|   `-- odoo.conf
|-- custom_addons
|     |-- accounting_pdf_reports
|     |-- om_account_accountant
|     |-- om_account_asset
|     |-- om_account_budget
|     |-- om_account_daily_reports
|     |-- om_account_followup
|     |-- om_fiscal_year
|     `-- om_recurring_payments
|-- docker-compose.yml
`-- odoo_pg_pass
every time i make a change i restart odoo and odoo_db containers and click the button to update the app list.