chadek.nocodb

Ansible Role: NoCodeDB

Ansible role for installing and configuring NoCodeDB, a no-code database management platform.

Requirements

Eventually setup an ansible vault to store vault_nocodb_db_password if you plan to use postgres or mariadb-backend

Role Variables

Available variables are listed below, along with their default values (located in defaults/main.yml):

Variable Default Value Description
nocodb_dir.root /opt/nocodb Location of nocodb root directory
nocodb_dir.data /opt/nocodb/data Location of nocodb data directory
nocodb_dir.conf /opt/nocodb/conf Location of nocodb configuration directory
nocodb_dir.bin /opt/nocodb/bin Location of nocodb binary directory
nocodb_user.name nocodb System user name use to run nocodb service
nocodb_user.group nocodb System user group use to run nocodb service
nocodb_config see defaults/main.yml Dictionnary to declare nocodb environnement variable according to nocodb documentation
nocodb_backend sqlite The database backend to use. Possible value sqlite, mariadb, pg (postgres sql)
nocodb_db.name `` Name of the database to use
nocodb_db.user `` Name of the user to access the database
nocodb_db.port `` Port number to access db backend (not needed for sqlite)
nocodb_db_url `` Url to access db backend (not needed for sqlite)
vault_nocodb_db_password `` Password to access db backend /!\ you MUST store this variable into an ansible vault
postgresql_databases see vars/main.yml Use for postgresql role dependency, custom this variable if using postgres backend
postgresql_users see vars/main.yml Use for postgresql role dependency, custom this variable if using postgres backend
postgresql_unix_socket_directories see vars/main.yml Use for postgresql role dependency, custom this variable if using postgres backend

Dependencies

role: geerlingguy.redis role: geerlingguy.postgresql

Example Playbook

- hosts: servers
  vars:
    postgresql_global_config_options:
      - option: data_directory
        value: '/var/lib/postgresql/15/main'
      - option: log_directory
        value: '/var/log/postgresql/'
    nocodb_config: 
      NC_PUBLIC_URL: "http://nocodb.example.com"
      PORT: 8080
      NC_DISABLE_TELE: true
      NC_REDIS_URL: "redis://127.0.0.1:6379"
      NC_SMTP_FROM: [email protected]
      NC_SMTP_HOST: mail.example.com
      NC_SMTP_PORT: 465
      NC_SMTP_USERNAME: [email protected]
      NC_SMTP_PASSWORD: "somepassword"
      NC_SMTP_SECURE: true



    nocodb_backend: "pg"
    nocodb_db: {
      name: "nocodb",
      user: "nocodb",
      port: 5432
    }
    nocodb_db_url: "pg://localhost:{{ nocodb_db.port }}?user={{ nocodb_db.user }}&password={{ vault_nocodb_db_password }}&d={{ nocodb_db.name }}"

  roles:
    - chadek.nocodb

License

MIT

Author Information

This role was created by chadek.

About

ansible role to install nocodb for linux

Install
ansible-galaxy install chadek.nocodb
GitHub repository
License
gpl-3.0
Downloads
20
Owner