Update to use Docker Hub registry
- Change from Quay.io to Docker Hub (andersonid/openshift-resource-governance) - Update GitHub Actions to use DOCKERHUB_USERNAME and DOCKERHUB_TOKEN - Update all scripts and documentation to use Docker Hub - Add DOCKERHUB-SETUP.md with detailed setup instructions - Update Makefile, deploy scripts, and templates - Simplify registry references (no quay.io prefix needed)
This commit is contained in:
9
.github/workflows/openshift-deploy.yml
vendored
9
.github/workflows/openshift-deploy.yml
vendored
@@ -9,7 +9,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE_NAME: resource-governance
|
IMAGE_NAME: resource-governance
|
||||||
REGISTRY: quay.io/andersonid
|
REGISTRY: andersonid
|
||||||
NAMESPACE: resource-governance
|
NAMESPACE: resource-governance
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
@@ -37,12 +37,11 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: Login to Quay.io
|
- name: Login to Docker Hub
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
registry: quay.io
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
username: ${{ secrets.QUAY_USERNAME }}
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
password: ${{ secrets.QUAY_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Extract metadata
|
- name: Extract metadata
|
||||||
id: meta
|
id: meta
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ Este documento explica como fazer deploy da OpenShift Resource Governance Tool n
|
|||||||
- Cluster OpenShift 4.x
|
- Cluster OpenShift 4.x
|
||||||
- OpenShift CLI (oc) instalado e configurado
|
- OpenShift CLI (oc) instalado e configurado
|
||||||
- Acesso ao cluster com permissões para criar recursos
|
- Acesso ao cluster com permissões para criar recursos
|
||||||
- Container Registry (Quay.io, Docker Hub, etc.)
|
- Container Registry (Docker Hub, Quay.io, etc.)
|
||||||
|
|
||||||
## 🎯 Opções de Deploy
|
## 🎯 Opções de Deploy
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ cd openshift-resource-governance
|
|||||||
oc process -f openshift-git-deploy.yaml \
|
oc process -f openshift-git-deploy.yaml \
|
||||||
-p GITHUB_REPO="https://github.com/andersonid/openshift-resource-governance.git" \
|
-p GITHUB_REPO="https://github.com/andersonid/openshift-resource-governance.git" \
|
||||||
-p IMAGE_TAG="latest" \
|
-p IMAGE_TAG="latest" \
|
||||||
-p REGISTRY="quay.io/seu-usuario" \
|
-p REGISTRY="andersonid" \
|
||||||
-p NAMESPACE="resource-governance" | oc apply -f -
|
-p NAMESPACE="resource-governance" | oc apply -f -
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ oc apply -f k8s/rbac.yaml
|
|||||||
oc apply -f k8s/configmap.yaml
|
oc apply -f k8s/configmap.yaml
|
||||||
|
|
||||||
# 4. Atualizar imagem no DaemonSet
|
# 4. Atualizar imagem no DaemonSet
|
||||||
oc set image daemonset/resource-governance resource-governance=quay.io/seu-usuario/resource-governance:latest -n resource-governance
|
oc set image daemonset/resource-governance resource-governance=andersonid/resource-governance:latest -n resource-governance
|
||||||
|
|
||||||
# 5. Aplicar recursos
|
# 5. Aplicar recursos
|
||||||
oc apply -f k8s/daemonset.yaml
|
oc apply -f k8s/daemonset.yaml
|
||||||
@@ -146,7 +146,7 @@ oc describe clusterrole resource-governance-role
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Atualizar para nova tag
|
# Atualizar para nova tag
|
||||||
oc set image daemonset/resource-governance resource-governance=quay.io/seu-usuario/resource-governance:v1.1.0 -n resource-governance
|
oc set image daemonset/resource-governance resource-governance=andersonid/resource-governance:v1.1.0 -n resource-governance
|
||||||
|
|
||||||
# Aguardar rollout
|
# Aguardar rollout
|
||||||
oc rollout status daemonset/resource-governance -n resource-governance
|
oc rollout status daemonset/resource-governance -n resource-governance
|
||||||
|
|||||||
127
DOCKERHUB-SETUP.md
Normal file
127
DOCKERHUB-SETUP.md
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
# 🐳 Configuração do Docker Hub
|
||||||
|
|
||||||
|
## 📋 Secrets Necessários no GitHub
|
||||||
|
|
||||||
|
Para o GitHub Actions funcionar com Docker Hub, configure estes secrets:
|
||||||
|
|
||||||
|
### 1. **DOCKERHUB_USERNAME**
|
||||||
|
- **Nome**: `DOCKERHUB_USERNAME`
|
||||||
|
- **Valor**: `andersonid`
|
||||||
|
|
||||||
|
### 2. **DOCKERHUB_TOKEN**
|
||||||
|
- **Nome**: `DOCKERHUB_TOKEN`
|
||||||
|
- **Valor**: Seu token de acesso do Docker Hub
|
||||||
|
|
||||||
|
## 🔑 Como Obter o Token do Docker Hub
|
||||||
|
|
||||||
|
### 1. **Acesse o Docker Hub**
|
||||||
|
- Vá para: https://hub.docker.com
|
||||||
|
- Faça login com sua conta
|
||||||
|
|
||||||
|
### 2. **Criar Access Token**
|
||||||
|
- Clique no seu avatar (canto superior direito)
|
||||||
|
- Vá em **Account Settings**
|
||||||
|
- Clique em **Security** → **New Access Token**
|
||||||
|
- Dê um nome: `openshift-resource-governance`
|
||||||
|
- Selecione **Read, Write, Delete** permissions
|
||||||
|
- Clique em **Generate**
|
||||||
|
- **Copie o token** (você só verá uma vez!)
|
||||||
|
|
||||||
|
### 3. **Configurar no GitHub**
|
||||||
|
- Vá para: https://github.com/andersonid/openshift-resource-governance/settings/secrets/actions
|
||||||
|
- Clique em **New repository secret**
|
||||||
|
- Adicione os dois secrets acima
|
||||||
|
|
||||||
|
## 🚀 Deploy Automático
|
||||||
|
|
||||||
|
Após configurar os secrets, o deploy será automático:
|
||||||
|
|
||||||
|
1. **Push para main** → GitHub Actions executa
|
||||||
|
2. **Build da imagem** → `andersonid/openshift-resource-governance:latest`
|
||||||
|
3. **Push para Docker Hub** → Imagem disponível publicamente
|
||||||
|
4. **Deploy no OpenShift** → Aplicação atualizada
|
||||||
|
|
||||||
|
## 🔧 Deploy Manual (Alternativo)
|
||||||
|
|
||||||
|
Se preferir deploy manual:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Build local
|
||||||
|
./scripts/build.sh
|
||||||
|
|
||||||
|
# 2. Login no Docker Hub
|
||||||
|
docker login
|
||||||
|
|
||||||
|
# 3. Push da imagem
|
||||||
|
docker push andersonid/openshift-resource-governance:latest
|
||||||
|
|
||||||
|
# 4. Deploy no OpenShift
|
||||||
|
./openshift-deploy.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📊 Verificar Deploy
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Ver imagem no Docker Hub
|
||||||
|
# https://hub.docker.com/r/andersonid/openshift-resource-governance
|
||||||
|
|
||||||
|
# Ver status no OpenShift
|
||||||
|
oc get all -n resource-governance
|
||||||
|
|
||||||
|
# Ver logs
|
||||||
|
oc logs -f daemonset/resource-governance -n resource-governance
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🐛 Troubleshooting
|
||||||
|
|
||||||
|
### Erro de Login Docker Hub
|
||||||
|
```bash
|
||||||
|
# Verificar se está logado
|
||||||
|
docker login
|
||||||
|
|
||||||
|
# Testar push manual
|
||||||
|
docker push andersonid/openshift-resource-governance:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
### Erro de Permissão GitHub Actions
|
||||||
|
- Verifique se os secrets estão configurados corretamente
|
||||||
|
- Verifique se o token tem permissões de Read, Write, Delete
|
||||||
|
- Verifique se o usuário tem acesso ao repositório Docker Hub
|
||||||
|
|
||||||
|
### Imagem não encontrada no OpenShift
|
||||||
|
```bash
|
||||||
|
# Verificar se a imagem existe
|
||||||
|
docker pull andersonid/openshift-resource-governance:latest
|
||||||
|
|
||||||
|
# Verificar logs do pod
|
||||||
|
oc describe pod <pod-name> -n resource-governance
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📝 Notas Importantes
|
||||||
|
|
||||||
|
- **Imagem pública**: A imagem será pública no Docker Hub
|
||||||
|
- **Tags automáticas**: GitHub Actions cria tags baseadas no commit
|
||||||
|
- **Cache**: Docker Hub mantém cache das imagens
|
||||||
|
- **Limites**: Docker Hub tem limites de pull/push (verifique seu plano)
|
||||||
|
|
||||||
|
## 🔄 Atualizações
|
||||||
|
|
||||||
|
Para atualizar a aplicação:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Fazer mudanças no código
|
||||||
|
git add .
|
||||||
|
git commit -m "Update application"
|
||||||
|
git push origin main
|
||||||
|
|
||||||
|
# 2. GitHub Actions fará o resto automaticamente!
|
||||||
|
# - Build da nova imagem
|
||||||
|
# - Push para Docker Hub
|
||||||
|
# - Deploy no OpenShift
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📞 Suporte
|
||||||
|
|
||||||
|
- **Docker Hub**: https://hub.docker.com/r/andersonid/openshift-resource-governance
|
||||||
|
- **GitHub**: https://github.com/andersonid/openshift-resource-governance
|
||||||
|
- **Issues**: https://github.com/andersonid/openshift-resource-governance/issues
|
||||||
2
Makefile
2
Makefile
@@ -3,7 +3,7 @@
|
|||||||
# Configurações
|
# Configurações
|
||||||
IMAGE_NAME = resource-governance
|
IMAGE_NAME = resource-governance
|
||||||
TAG = latest
|
TAG = latest
|
||||||
REGISTRY = quay.io/openshift
|
REGISTRY = andersonid
|
||||||
FULL_IMAGE_NAME = $(REGISTRY)/$(IMAGE_NAME):$(TAG)
|
FULL_IMAGE_NAME = $(REGISTRY)/$(IMAGE_NAME):$(TAG)
|
||||||
NAMESPACE = resource-governance
|
NAMESPACE = resource-governance
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ Uma ferramenta de governança de recursos para clusters OpenShift que vai além
|
|||||||
./scripts/build.sh v1.0.0
|
./scripts/build.sh v1.0.0
|
||||||
|
|
||||||
# Build para registry específico
|
# Build para registry específico
|
||||||
./scripts/build.sh latest quay.io/seu-usuario
|
./scripts/build.sh latest seu-usuario
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Deploy no OpenShift
|
### 2. Deploy no OpenShift
|
||||||
@@ -46,7 +46,7 @@ Uma ferramenta de governança de recursos para clusters OpenShift que vai além
|
|||||||
./scripts/deploy.sh v1.0.0
|
./scripts/deploy.sh v1.0.0
|
||||||
|
|
||||||
# Deploy para registry específico
|
# Deploy para registry específico
|
||||||
./scripts/deploy.sh latest quay.io/seu-usuario
|
./scripts/deploy.sh latest seu-usuario
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Acesso à Aplicação
|
### 3. Acesso à Aplicação
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ NC='\033[0m' # No Color
|
|||||||
# Configurações
|
# Configurações
|
||||||
REPO_URL="https://github.com/andersonid/openshift-resource-governance.git"
|
REPO_URL="https://github.com/andersonid/openshift-resource-governance.git"
|
||||||
IMAGE_NAME="resource-governance"
|
IMAGE_NAME="resource-governance"
|
||||||
REGISTRY="quay.io/andersonid"
|
REGISTRY="andersonid"
|
||||||
TAG="${1:-latest}"
|
TAG="${1:-latest}"
|
||||||
NAMESPACE="resource-governance"
|
NAMESPACE="resource-governance"
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ parameters:
|
|||||||
- name: REGISTRY
|
- name: REGISTRY
|
||||||
displayName: "Container Registry"
|
displayName: "Container Registry"
|
||||||
description: "Registry da imagem Docker"
|
description: "Registry da imagem Docker"
|
||||||
value: "quay.io/andersonid"
|
value: "andersonid"
|
||||||
- name: NAMESPACE
|
- name: NAMESPACE
|
||||||
displayName: "Namespace"
|
displayName: "Namespace"
|
||||||
description: "Namespace para deploy"
|
description: "Namespace para deploy"
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ NC='\033[0m' # No Color
|
|||||||
# Configurações
|
# Configurações
|
||||||
IMAGE_NAME="resource-governance"
|
IMAGE_NAME="resource-governance"
|
||||||
TAG="${1:-latest}"
|
TAG="${1:-latest}"
|
||||||
REGISTRY="${2:-quay.io/openshift}"
|
REGISTRY="${2:-andersonid}"
|
||||||
FULL_IMAGE_NAME="${REGISTRY}/${IMAGE_NAME}:${TAG}"
|
FULL_IMAGE_NAME="${REGISTRY}/${IMAGE_NAME}:${TAG}"
|
||||||
|
|
||||||
echo -e "${BLUE}🚀 Building OpenShift Resource Governance Tool${NC}"
|
echo -e "${BLUE}🚀 Building OpenShift Resource Governance Tool${NC}"
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ NC='\033[0m' # No Color
|
|||||||
NAMESPACE="resource-governance"
|
NAMESPACE="resource-governance"
|
||||||
IMAGE_NAME="resource-governance"
|
IMAGE_NAME="resource-governance"
|
||||||
TAG="${1:-latest}"
|
TAG="${1:-latest}"
|
||||||
REGISTRY="${2:-quay.io/openshift}"
|
REGISTRY="${2:-andersonid}"
|
||||||
FULL_IMAGE_NAME="${REGISTRY}/${IMAGE_NAME}:${TAG}"
|
FULL_IMAGE_NAME="${REGISTRY}/${IMAGE_NAME}:${TAG}"
|
||||||
|
|
||||||
echo -e "${BLUE}🚀 Deploying OpenShift Resource Governance Tool${NC}"
|
echo -e "${BLUE}🚀 Deploying OpenShift Resource Governance Tool${NC}"
|
||||||
|
|||||||
Reference in New Issue
Block a user