123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- package model
- import (
- "database/sql/driver"
- "encoding/json"
- )
- type TcpPorts struct {
- Desc string `json:"desc"`
- ContainerPort int `json:"container_port"`
- }
- type UdpPorts struct {
- Desc string `json:"desc"`
- ContainerPort int `json:"container_port"`
- }
- /*******************使用gorm支持json************************************/
- type PortMap struct {
- ContainerPort string `json:"container"`
- CommendPort string `json:"host"`
- Protocol string `json:"protocol"`
- Desc string `json:"desc"`
- Type int `json:"type"`
- }
- type PortArray []PortMap
- // Value 实现方法
- func (p PortArray) Value() (driver.Value, error) {
- return json.Marshal(p)
- }
- // Scan 实现方法
- func (p *PortArray) Scan(input interface{}) error {
- return json.Unmarshal(input.([]byte), p)
- }
- /************************************************************************/
- /*******************使用gorm支持json************************************/
- type Env struct {
- Name string `json:"container"`
- Value string `json:"host"`
- Desc string `json:"desc"`
- Type int `json:"type"`
- }
- type JSON json.RawMessage
- type EnvArray []Env
- // Value 实现方法
- func (p EnvArray) Value() (driver.Value, error) {
- return json.Marshal(p)
- //return .MarshalJSON()
- }
- // Scan 实现方法
- func (p *EnvArray) Scan(input interface{}) error {
- return json.Unmarshal(input.([]byte), p)
- }
- /************************************************************************/
- /*******************使用gorm支持json************************************/
- type PathMap struct {
- ContainerPath string `json:"container"`
- Path string `json:"host"`
- Type int `json:"type"`
- Desc string `json:"desc"`
- }
- type PathArray []PathMap
- // Value 实现方法
- func (p PathArray) Value() (driver.Value, error) {
- return json.Marshal(p)
- }
- // Scan 实现方法
- func (p *PathArray) Scan(input interface{}) error {
- return json.Unmarshal(input.([]byte), p)
- }
- /************************************************************************/
- //type PostData struct {
- // Envs EnvArrey `json:"envs,omitempty"`
- // Udp PortArrey `json:"udp_ports"`
- // Tcp PortArrey `json:"tcp_ports"`
- // Volumes PathArrey `json:"volumes"`
- // Devices PathArrey `json:"devices"`
- // Port string `json:"port,omitempty"`
- // PortMap string `json:"port_map"`
- // CpuShares int64 `json:"cpu_shares,omitempty"`
- // Memory int64 `json:"memory,omitempty"`
- // Restart string `json:"restart,omitempty"`
- // EnableUPNP bool `json:"enable_upnp"`
- // Label string `json:"label"`
- // Position bool `json:"position"`
- //}
- type CustomizationPostData struct {
- CustomId string `json:"custom_id"`
- Origin string `json:"origin"`
- NetworkModel string `json:"network_model"`
- Index string `json:"index"`
- Icon string `json:"icon"`
- Image string `json:"image"`
- Envs EnvArray `json:"envs"`
- Ports PortArray `json:"ports"`
- Volumes PathArray `json:"volumes"`
- Devices PathArray `json:"devices"`
- //Port string `json:"port,omitempty"`
- PortMap string `json:"port_map"`
- CpuShares int64 `json:"cpu_shares"`
- Memory int64 `json:"memory"`
- Restart string `json:"restart"`
- EnableUPNP bool `json:"enable_upnp"`
- Label string `json:"label"`
- Description string `json:"description"`
- Position bool `json:"position"`
- HostName string `json:"host_name"`
- Privileged bool `json:"privileged"`
- CapAdd []string `json:"cap_add"`
- Cmd []string `json:"cmd"`
- }
|