mirror of
https://github.com/jc21/nginx-proxy-manager.git
synced 2024-08-30 18:22:48 +00:00
247 lines
8.0 KiB
SQL
247 lines
8.0 KiB
SQL
-- migrate:up
|
|
|
|
CREATE TABLE IF NOT EXISTS `jwt_keys`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`public_key` TEXT NOT NULL,
|
|
`private_key` TEXT NOT NULL
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `user`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`name` TEXT NOT NULL,
|
|
`nickname` TEXT NOT NULL,
|
|
`email` TEXT NOT NULL,
|
|
`is_system` INTEGER NOT NULL DEFAULT 0,
|
|
`is_disabled` INTEGER NOT NULL DEFAULT 0
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `capability`
|
|
(
|
|
`name` TEXT PRIMARY KEY,
|
|
UNIQUE (`name`)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `user_has_capability`
|
|
(
|
|
`user_id` INTEGER NOT NULL,
|
|
`capability_name` TEXT NOT NULL,
|
|
UNIQUE (`user_id`, `capability_name`),
|
|
FOREIGN KEY (`capability_name`) REFERENCES `capability` (`name`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `auth`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`type` TEXT NOT NULL,
|
|
`secret` TEXT NOT NULL,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
|
|
UNIQUE (`user_id`, `type`)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `setting`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`name` TEXT NOT NULL,
|
|
`description` TEXT NOT NULL DEFAULT "",
|
|
`value` TEXT NOT NULL,
|
|
UNIQUE (`name`)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `audit_log`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`object_type` TEXT NOT NULL,
|
|
`object_id` INTEGER NOT NULL,
|
|
`action` TEXT NOT NULL,
|
|
`meta` TEXT NOT NULL,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `certificate_authority`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`name` TEXT NOT NULL,
|
|
`acmesh_server` TEXT NOT NULL DEFAULT "",
|
|
`ca_bundle` TEXT NOT NULL DEFAULT "",
|
|
`is_wildcard_supported` INTEGER NOT NULL DEFAULT 0, -- specific to each CA, acme v1 doesn't usually have wildcards
|
|
`max_domains` INTEGER NOT NULL DEFAULT 5, -- per request
|
|
`is_readonly` INTEGER NOT NULL DEFAULT 0
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `dns_provider`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`name` TEXT NOT NULL,
|
|
`acmesh_name` TEXT NOT NULL,
|
|
`dns_sleep` INTEGER NOT NULL DEFAULT 0,
|
|
`meta` TEXT NOT NULL,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `certificate`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`type` TEXT NOT NULL, -- custom,dns,http
|
|
`certificate_authority_id` INTEGER, -- 0 for a custom cert
|
|
`dns_provider_id` INTEGER, -- 0, for a http or custom cert
|
|
`name` TEXT NOT NULL,
|
|
`domain_names` TEXT NOT NULL,
|
|
`expires_on` INTEGER NOT NULL DEFAULT 0,
|
|
`status` TEXT NOT NULL, -- ready,requesting,failed,provided
|
|
`error_message` TEXT NOT NULL DEFAULT "",
|
|
`meta` TEXT NOT NULL,
|
|
`is_ecc` INTEGER NOT NULL DEFAULT 0,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`certificate_authority_id`) REFERENCES `certificate_authority` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`dns_provider_id`) REFERENCES `dns_provider` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `stream`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`listen_interface` TEXT NOT NULL,
|
|
`incoming_port` INTEGER NOT NULL,
|
|
`tcp_forwarding` INTEGER NOT NULL DEFAULT 0,
|
|
`udp_forwarding` INTEGER NOT NULL DEFAULT 0,
|
|
`advanced_config` TEXT NOT NULL,
|
|
`is_disabled` INTEGER NOT NULL DEFAULT 0,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `nginx_template`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`name` TEXT NOT NULL,
|
|
`type` TEXT NOT NULL,
|
|
`template` TEXT NOT NULL,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `upstream`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`name` TEXT NOT NULL,
|
|
`nginx_template_id` INTEGER NOT NULL,
|
|
`ip_hash` INTEGER NOT NULL DEFAULT 0,
|
|
`ntlm` INTEGER NOT NULL DEFAULT 0,
|
|
`keepalive` INTEGER NOT NULL DEFAULT 0,
|
|
`keepalive_requests` INTEGER NOT NULL DEFAULT 0,
|
|
`keepalive_time` TEXT NOT NULL DEFAULT "",
|
|
`keepalive_timeout` TEXT NOT NULL DEFAULT "",
|
|
`advanced_config` TEXT NOT NULL,
|
|
`status` TEXT NOT NULL DEFAULT "",
|
|
`error_message` TEXT NOT NULL DEFAULT "",
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`nginx_template_id`) REFERENCES `nginx_template` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `upstream_server`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`upstream_id` INTEGER NOT NULL,
|
|
`server` TEXT NOT NULL,
|
|
`weight` INTEGER NOT NULL DEFAULT 0,
|
|
`max_conns` INTEGER NOT NULL DEFAULT 0,
|
|
`max_fails` INTEGER NOT NULL DEFAULT 0,
|
|
`fail_timeout` INTEGER NOT NULL DEFAULT 0,
|
|
`is_backup` INTEGER NOT NULL DEFAULT 0,
|
|
FOREIGN KEY (`upstream_id`) REFERENCES `upstream` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `access_list`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`name` TEXT NOT NULL,
|
|
`meta` TEXT NOT NULL,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `host`
|
|
(
|
|
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
`created_at` INTEGER NOT NULL DEFAULT 0,
|
|
`updated_at` INTEGER NOT NULL DEFAULT 0,
|
|
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
|
`user_id` INTEGER NOT NULL,
|
|
`type` TEXT NOT NULL,
|
|
`nginx_template_id` INTEGER NOT NULL,
|
|
`listen_interface` TEXT NOT NULL DEFAULT "",
|
|
`domain_names` TEXT NOT NULL,
|
|
`upstream_id` INTEGER,
|
|
`proxy_scheme` TEXT NOT NULL DEFAULT "",
|
|
`proxy_host` TEXT NOT NULL DEFAULT "",
|
|
`proxy_port` INTEGER NOT NULL DEFAULT 0,
|
|
`certificate_id` INTEGER,
|
|
`access_list_id` INTEGER,
|
|
`ssl_forced` INTEGER NOT NULL DEFAULT 0,
|
|
`caching_enabled` INTEGER NOT NULL DEFAULT 0,
|
|
`block_exploits` INTEGER NOT NULL DEFAULT 0,
|
|
`allow_websocket_upgrade` INTEGER NOT NULL DEFAULT 0,
|
|
`http2_support` INTEGER NOT NULL DEFAULT 0,
|
|
`hsts_enabled` INTEGER NOT NULL DEFAULT 0,
|
|
`hsts_subdomains` INTEGER NOT NULL DEFAULT 0,
|
|
`paths` TEXT NOT NULL DEFAULT "",
|
|
`advanced_config` TEXT NOT NULL DEFAULT "",
|
|
`status` TEXT NOT NULL DEFAULT "",
|
|
`error_message` TEXT NOT NULL DEFAULT "",
|
|
`is_disabled` INTEGER NOT NULL DEFAULT 0,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`nginx_template_id`) REFERENCES `nginx_template` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`upstream_id`) REFERENCES `upstream` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`certificate_id`) REFERENCES `certificate` (`id`) ON DELETE CASCADE,
|
|
FOREIGN KEY (`access_list_id`) REFERENCES `access_list` (`id`) ON DELETE CASCADE
|
|
);
|
|
|
|
-- migrate:down
|
|
|
|
-- Not allowed to go down from initial
|