https://github.com/oanderoficial/myapp-service
Implantando aplicativo criado com Dockerfile. Atividade 2 - Treinamento Trilha Orquestração de Containers
https://github.com/oanderoficial/myapp-service
cluster docker k8s kubernetes
Last synced: 7 months ago
JSON representation
Implantando aplicativo criado com Dockerfile. Atividade 2 - Treinamento Trilha Orquestração de Containers
- Host: GitHub
- URL: https://github.com/oanderoficial/myapp-service
- Owner: oanderoficial
- License: mit
- Created: 2024-06-10T14:16:24.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-11T15:50:01.000Z (over 1 year ago)
- Last Synced: 2025-01-31T16:22:23.949Z (9 months ago)
- Topics: cluster, docker, k8s, kubernetes
- Language: Dockerfile
- Homepage:
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# myapp-service
Atividade 2 - Treinamento Trilha Orquestração de Containers
link: https://academy.o2b.com.br/courses/trilha-orquestracao-de-conteiners-t-systemsImplantando aplicativo criado com Dockerfile.
Objetivos:
- Criar um Deployment para a aplicação que foi criada no treinamento de Docker chamada myk8sapp.
- Expor a aplicação através de um Service.# Passos:
1 Crie um Deployment:
- Crie um arquivo YAML chamado myapp-deployment.yaml.
- Defina um Deployment para a aplicação chamada “myapp”.
- Use uma imagem Docker que você criou anteriormente.
- Configure o número de réplicas para 2.
- Defina um rótulo adequado para o Deployment.2 Crie um Service:
- Crie um arquivo YAML chamado myapp-service.yaml.
- Defina um Service chamado “myapp-service”.
- Exponha a porta 80 do Deployment.
- Use um seletor adequado para direcionar o tráfego para as réplicas corretas.3 Implante a Aplicação:
- Aplique os arquivos YAML na ordem: Deployment e Service.
- Verifique se a aplicação está em execução corretamente.# Implantação:
Passo 1: Download da aplicação HTML CSS e JS
- GitHub:
```bash
git clone https://github.com/oanderoficial/infrabank.git
cd /infrabank
```
Passo 2: Crie a imagem Docker- Crie um Dockerfile no mesmo diretório:
```Dockerfile
FROM nginx:alpine# Autor
LABEL author="Anderson B Silva "COPY . /usr/share/nginx/html
```- Construa a imagem Docker:
```bash
docker build -t myk8sapp:latest .
```
- Faça o upload da imagem para um registro de contêiner, como Docker Hub:
```bash
docker tag myk8sapp:latest yourusername/myk8sapp:latest
docker push yourusername/myk8sapp:latest
```Passo 3: Criando o Deployment
- Crie um arquivo chamado myapp-deployment.yaml
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp
labels:
app: myapp
spec:
replicas: 2
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: myk8sapp
image: yourusername/myk8sapp:latest
ports:
- containerPort: 80
```Passo 4: Criando o Service
- Crie um arquivo chamado myapp-service.yaml
```yaml
apiVersion: v1
kind: Service
metadata:
name: myapp-service
spec:
selector:
app: myapp
ports:
- protocol: TCP
port: 80
targetPort: 80
```Passo 5: Implante a Aplicação
- Aplique o Deployment:
```bash
kubectl apply -f myapp-deployment.yaml
```
- Aplique o Service:
```bash
kubectl apply -f myapp-service.yaml
```
- Verifique se a aplicação está em execução corretamente:
```bash
kubectl get deployments
kubectl get pods
kubectl get services
```
Start com o Minikube
Se você estiver usando Minikube, você pode expor o serviço com o comando minikube service:
```bash
minikube service myapp-service
```
Bind de portas```
kubectl port-forward svc/myapp-service 8080:80 --address='0.0.0.0'
```
# Saída

DockerHub container de exemplo:
```bash
docker pull oandersonbsilva/nginx:latest
```- Link: https://hub.docker.com/repository/docker/oandersonbsilva/nginx/general