68 lines
1.4 KiB
Go
68 lines
1.4 KiB
Go
package portaineree
|
|
|
|
import (
|
|
"ocl/portainer-devtool/configs"
|
|
"ocl/portainer-devtool/tasks/common"
|
|
"ocl/portainer-devtool/utils"
|
|
)
|
|
|
|
type SwarmDeploySubTask struct {
|
|
common.GeneralTask
|
|
}
|
|
|
|
func NewSwarmDeploySubTask(cfg *configs.Config) *SwarmDeploySubTask {
|
|
return &SwarmDeploySubTask{
|
|
GeneralTask: *common.NewGeneralTask(cfg),
|
|
}
|
|
}
|
|
|
|
func (task *SwarmDeploySubTask) Execute() error {
|
|
utils.SuccessPrint(`
|
|
version: '3.2'
|
|
|
|
services:
|
|
agent:
|
|
image: portainer/agent:latest
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- /var/lib/docker/volumes:/var/lib/docker/volumes
|
|
networks:
|
|
- agent_network
|
|
deploy:
|
|
mode: global
|
|
placement:
|
|
constraints: [node.platform.os == linux]
|
|
|
|
portainer:
|
|
image: portainerci/portainer-ee:4803
|
|
command: -H tcp://tasks.agent:9001 --tlsskipverify --log-level ERROR
|
|
ports:
|
|
- "9443:9443"
|
|
- "9000:9000"
|
|
- "8000:8000"
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- /home/oscar/volume/portainer-ee-data-1:/data
|
|
networks:
|
|
- agent_network
|
|
deploy:
|
|
mode: replicated
|
|
replicas: 1
|
|
placement:
|
|
constraints: [node.role == manager]
|
|
|
|
networks:
|
|
agent_network:
|
|
driver: overlay
|
|
attachable: true
|
|
--------------------------
|
|
docker stack deploy -c docker-compose.yaml portainer
|
|
`)
|
|
|
|
return nil
|
|
}
|
|
|
|
func (task *SwarmDeploySubTask) String() string {
|
|
return "Build Docker Image"
|
|
}
|