forked from coop-cloud/portainer
Graduate new portainer config to new style
This commit is contained in:
parent
69f5636b5b
commit
71cbc2d87b
|
@ -0,0 +1,36 @@
|
|||
---
|
||||
kind: pipeline
|
||||
name: sanity check
|
||||
steps:
|
||||
- name: docker-compose up & down
|
||||
image: docker/compose:1.25.5
|
||||
commands:
|
||||
- docker-compose up -d
|
||||
- sleep 10
|
||||
- docker-compose ps
|
||||
- docker-compose down
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
name: deploy to swarm.autonomic.zone
|
||||
steps:
|
||||
- name: deployment
|
||||
image: decentral1se/drone-stack:19.03.8-override-compose
|
||||
settings:
|
||||
compose: docker-compose.yml
|
||||
host: tcp://swarm.autonomic.zone:2376
|
||||
override_compose: docker-compose.production.yml
|
||||
stack_name: portainer
|
||||
tlsverify: true
|
||||
environment:
|
||||
PLUGIN_CACERT:
|
||||
from_secret: docker_cacert
|
||||
PLUGIN_CERT:
|
||||
from_secret: docker_cert
|
||||
PLUGIN_KEY:
|
||||
from_secret: docker_key
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
depends_on:
|
||||
- sanity check
|
19
Makefile
19
Makefile
|
@ -1,19 +0,0 @@
|
|||
STACK := portainer
|
||||
COMPOSE_FILE := docker-compose.yml
|
||||
NETWORK := proxy
|
||||
|
||||
default: deploy
|
||||
|
||||
deploy:
|
||||
@docker stack deploy -c $(COMPOSE_FILE) $(STACK)
|
||||
|
||||
down:
|
||||
@docker stack rm $(STACK)
|
||||
|
||||
network:
|
||||
@docker network create --driver=overlay $(NETWORK)
|
||||
|
||||
logs:
|
||||
@docker service logs -f $(STACK)_$(STACK)
|
||||
|
||||
.PHONY: deploy
|
20
README.md
20
README.md
|
@ -1,3 +1,23 @@
|
|||
# portainer
|
||||
|
||||
> https://portainer.readthedocs.io
|
||||
|
||||
> https://portainer.swarm.autonomic.zone
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
$ git clone https://git.autonomic.zone/autonomic-cooperative/portainer && cd portainer
|
||||
$ python3 -m venv .venv && source .venv/bin/activate
|
||||
$ pip install -U pip setuptools docker-compose
|
||||
$ docker-compose up
|
||||
```
|
||||
|
||||
Portainer dashboard
|
||||
|
||||
> http://localhost:9000
|
||||
|
||||
## Production
|
||||
|
||||
1. Our [drone.autonomic.zone](https://drone.autonomic.zone/autonomic-cooperative/portainer/) configuration automatically deploys.
|
||||
1. For a manual deploy guide, see [this documentation](https://git.autonomic.zone/autonomic-cooperative/organising/wiki/working-with-docker-swarm).
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
portainer:
|
||||
volumes:
|
||||
- "/var/run/docker.sock:/var/run/docker.sock"
|
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
agent:
|
||||
image: portainer/agent
|
||||
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.role == manager
|
||||
|
||||
portainer:
|
||||
command: "-H tcp://tasks.agent:9001 --tlsskipverify"
|
||||
volumes:
|
||||
- "portainer_data:/data"
|
||||
networks:
|
||||
- agent_network
|
||||
- proxy
|
||||
deploy:
|
||||
mode: replicated
|
||||
replicas: 1
|
||||
update_config:
|
||||
failure_action: rollback
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.services.portainer.loadbalancer.server.port=9000"
|
||||
- "traefik.http.routers.portainer.rule=Host(`portainer.swarm.autonomic.zone`)"
|
||||
- "traefik.http.routers.portainer.entrypoints=web-secure"
|
||||
- "traefik.http.routers.portainer.tls.certresolver=staging"
|
||||
|
||||
networks:
|
||||
agent_network:
|
||||
driver: overlay
|
||||
attachable: true
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
portainer_data:
|
|
@ -1,52 +1,9 @@
|
|||
---
|
||||
version: "3.3"
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
agent:
|
||||
image: portainer/agent
|
||||
restart: always
|
||||
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: portainer/portainer
|
||||
restart: "always"
|
||||
command: -H tcp://tasks.agent:9001 --tlsskipverify
|
||||
ports:
|
||||
- "9000:9000"
|
||||
- "8000:8000"
|
||||
volumes:
|
||||
- portainer_data:/data
|
||||
networks:
|
||||
- agent_network
|
||||
- proxy
|
||||
deploy:
|
||||
mode: replicated
|
||||
replicas: 1
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.services.portainer.loadbalancer.server.port=9000"
|
||||
- "traefik.http.routers.portainer.rule=Host(`portainer.swarm.autonomic.zone`)"
|
||||
- "traefik.http.routers.portainer.entrypoints=web-secure"
|
||||
- "traefik.http.routers.portainer.tls.certresolver=staging"
|
||||
|
||||
networks:
|
||||
agent_network:
|
||||
driver: overlay
|
||||
attachable: true
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
portainer_data:
|
||||
|
|
Loading…
Reference in New Issue