mirror of
https://github.com/9technologygroup/patchmon.net.git
synced 2025-10-23 07:42:05 +00:00
95 lines
3.1 KiB
SQL
95 lines
3.1 KiB
SQL
-- CreateTable
|
|
CREATE TABLE "docker_images" (
|
|
"id" TEXT NOT NULL,
|
|
"repository" TEXT NOT NULL,
|
|
"tag" TEXT NOT NULL DEFAULT 'latest',
|
|
"image_id" TEXT NOT NULL,
|
|
"digest" TEXT,
|
|
"size_bytes" BIGINT,
|
|
"source" TEXT NOT NULL DEFAULT 'docker-hub',
|
|
"created_at" TIMESTAMP(3) NOT NULL,
|
|
"last_pulled" TIMESTAMP(3),
|
|
"last_checked" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updated_at" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "docker_images_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "docker_containers" (
|
|
"id" TEXT NOT NULL,
|
|
"host_id" TEXT NOT NULL,
|
|
"container_id" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"image_id" TEXT,
|
|
"image_name" TEXT NOT NULL,
|
|
"image_tag" TEXT NOT NULL DEFAULT 'latest',
|
|
"status" TEXT NOT NULL,
|
|
"state" TEXT,
|
|
"ports" JSONB,
|
|
"created_at" TIMESTAMP(3) NOT NULL,
|
|
"started_at" TIMESTAMP(3),
|
|
"updated_at" TIMESTAMP(3) NOT NULL,
|
|
"last_checked" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "docker_containers_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "docker_image_updates" (
|
|
"id" TEXT NOT NULL,
|
|
"image_id" TEXT NOT NULL,
|
|
"current_tag" TEXT NOT NULL,
|
|
"available_tag" TEXT NOT NULL,
|
|
"is_security_update" BOOLEAN NOT NULL DEFAULT false,
|
|
"severity" TEXT,
|
|
"changelog_url" TEXT,
|
|
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updated_at" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "docker_image_updates_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_images_repository_idx" ON "docker_images"("repository");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_images_source_idx" ON "docker_images"("source");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_images_repository_tag_idx" ON "docker_images"("repository", "tag");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "docker_images_repository_tag_image_id_key" ON "docker_images"("repository", "tag", "image_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_containers_host_id_idx" ON "docker_containers"("host_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_containers_image_id_idx" ON "docker_containers"("image_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_containers_status_idx" ON "docker_containers"("status");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_containers_name_idx" ON "docker_containers"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "docker_containers_host_id_container_id_key" ON "docker_containers"("host_id", "container_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_image_updates_image_id_idx" ON "docker_image_updates"("image_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "docker_image_updates_is_security_update_idx" ON "docker_image_updates"("is_security_update");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "docker_image_updates_image_id_available_tag_key" ON "docker_image_updates"("image_id", "available_tag");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "docker_containers" ADD CONSTRAINT "docker_containers_image_id_fkey" FOREIGN KEY ("image_id") REFERENCES "docker_images"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "docker_image_updates" ADD CONSTRAINT "docker_image_updates_image_id_fkey" FOREIGN KEY ("image_id") REFERENCES "docker_images"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|