Skip to content

Commit

Permalink
Exemplos de Scale
Browse files Browse the repository at this point in the history
  • Loading branch information
msfidelis committed Apr 22, 2017
1 parent 395f6a2 commit b20d2b7
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 10 deletions.
60 changes: 56 additions & 4 deletions README.md
Expand Up @@ -3,30 +3,82 @@
## Build Simples da API

```
$ docker build . -t example/api
$ docker build . -t example/api
```

## Build da API no Developer Mode com o Compose v2

```
$ docker-compose up -d
$ docker-compose up -d
```

## Deploy da API no Swarm Mode - Compose v3

```
$ docker stack deploy -c docker-compose-prodswarm.yml app
$ docker stack deploy -c docker-compose-prodswarm.yml app
```

### Verificando a distribuição dos containers

```
$ docker stack ps app
```
```
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
lgvwqegtwm8g app_api.1 msfidelis/example-api:latest master Running Running 39 minutes ago
ulwheogj2wdt app_api.2 msfidelis/example-api:latest minion01 Running Running 38 minutes ago
99sqb1y97ozy app_api.3 msfidelis/example-api:latest minion01 Running Running 38 minutes ago
xom0nytf3v81 app_api.4 msfidelis/example-api:latest minion02 Running Running 38 minutes ago
```

```
# docker-machine ip master
$ docker-machine ip master
```

Acesse várias vezes:
```
http://ip-do-cluster/hostname
```

### Escalando a API

Verificando os services disponíveis

```
$ docker stack services app
```
```
ID NAME MODE REPLICAS IMAGE
4nzk39qsqb6s app_api replicated 4/4 msfidelis/example-api:latest
docker@master:~$ docker stack services app
```

```
$ docker service scale app_api=10
app_api scaled to 10
```

Podemos olhar novamente agora e...

```
$ docker stack services app
```

```
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
lgvwqegtwm8g app_api.1 msfidelis/example-api:latest master Running Running 44 minutes ago
ulwheogj2wdt app_api.2 msfidelis/example-api:latest minion01 Running Running 44 minutes ago
99sqb1y97ozy app_api.3 msfidelis/example-api:latest minion01 Running Running 44 minutes ago
xom0nytf3v81 app_api.4 msfidelis/example-api:latest minion02 Running Running 44 minutes ago
7p8prtbnwf1r app_api.5 msfidelis/example-api:latest master Running Running 2 minutes ago
gpk1kl35aq20 app_api.6 msfidelis/example-api:latest minion02 Running Running about a minute ago
rzzasl40k5z7 app_api.7 msfidelis/example-api:latest master Running Running 2 minutes ago
cffulgwncuz7 app_api.8 msfidelis/example-api:latest master Running Running 2 minutes ago
t2nvx0i86mz5 app_api.9 msfidelis/example-api:latest minion01 Running Running 2 minutes ago
40n0sxtzeba2 app_api.10 msfidelis/example-api:latest minion02 Running Running about a minute ago
```


## Atenção

Esse projeto foi criado para demonstrar exemplos de deploy e scaling utilizando Docker.
Expand Down
2 changes: 1 addition & 1 deletion docker-compose-prodswarm.yml
@@ -1,6 +1,6 @@
version: '3'
services:
app:
api:
image: msfidelis/example-api
ports:
- "80:80"
Expand Down
9 changes: 4 additions & 5 deletions docker-compose.yml
@@ -1,9 +1,8 @@
version: '2'
services:
app:
image: msfidelis/example-api
#build: .
#volumes:
# - ./app/:/app
api:
build: .
volumes:
- ./app/:/app
ports:
- "80:80"

0 comments on commit b20d2b7

Please sign in to comment.