mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-07 13:56:01 +01:00
58 lines
2.2 KiB
Python
Executable File
58 lines
2.2 KiB
Python
Executable File
# -*- coding: utf-8 -*-
|
|
|
|
|
|
from django.db import models
|
|
from loginSystem.models import Administrator
|
|
from websiteFunctions.website import Websites
|
|
|
|
# Create your models here.
|
|
class Containers(models.Model):
|
|
name = models.CharField(max_length=50,unique=True)
|
|
cid = models.CharField(max_length=64, default='')
|
|
admin = models.ForeignKey(Administrator, on_delete=models.CASCADE)
|
|
image = models.CharField(max_length=50, default='unknown')
|
|
tag = models.CharField(max_length=50, default='unknown')
|
|
memory = models.IntegerField(default=0)
|
|
ports = models.TextField(default="{}")
|
|
volumes = models.TextField(default="{}")
|
|
env = models.TextField(default="{}")
|
|
startOnReboot = models.IntegerField(default=0)
|
|
|
|
# Takes
|
|
# ComposePath, MySQLPath, MySQLRootPass, MySQLDBName, MySQLDBNUser, MySQLPassword, CPUsMySQL, MemoryMySQL,
|
|
# port, SitePath, CPUsSite, MemorySite, SiteName
|
|
# finalURL, blogTitle, adminUser, adminPassword, adminEmail
|
|
|
|
### Site Type 0=wp, further tbd later
|
|
|
|
class DockerSites(models.Model):
|
|
admin = models.ForeignKey(Websites, on_delete=models.CASCADE)
|
|
ComposePath = models.TextField()
|
|
SitePath = models.TextField()
|
|
MySQLPath = models.TextField()
|
|
state = models.IntegerField(default=1)
|
|
SiteType = models.IntegerField(default=0) ## WP, Joomla etc
|
|
MySQLDBName = models.CharField(max_length=100)
|
|
MySQLDBNUser = models.CharField(max_length=100)
|
|
CPUsMySQL = models.CharField(max_length=100)
|
|
MemoryMySQL = models.CharField(max_length=100)
|
|
port = models.CharField(max_length=100)
|
|
CPUsSite = models.CharField(max_length=100)
|
|
MemorySite = models.CharField(max_length=100)
|
|
SiteName = models.TextField()
|
|
finalURL = models.TextField()
|
|
blogTitle = models.TextField()
|
|
adminUser = models.CharField(max_length=100)
|
|
adminEmail = models.CharField(max_length=100)
|
|
|
|
class DockerPackages(models.Model):
|
|
CPUs = models.IntegerField()
|
|
Ram = models.IntegerField()
|
|
Bandwidth = models.TextField()
|
|
DiskSpace = models.TextField()
|
|
config = models.TextField()
|
|
|
|
|
|
class PackageAssignment(models.Model):
|
|
user = models.ForeignKey(Administrator, on_delete=models.CASCADE)
|
|
package = models.ForeignKey(DockerPackages, on_delete=models.CASCADE) |