Estou com problemas com a limitação de taxa em imagens do DockerHub e instâncias de contêiner do Azure. Nossa empresa oferece uma assinatura paga do Docker que deve ajudar, mas não tenho senha, apenas SSO.
Como posso configurar isso no Terraform? image_registry_credentials
Só vejo server, username and password
campos, nada sobre o uso de token, etc.
Dei uma olhada na documentação, mas não encontrei nenhuma referência. Encontrei uma solução para o AKS aqui, mas ela não parece se aplicar.
Meu bloco de terraformação:
resource "azurerm_container_group" "clamav" {
depends_on = [ azurerm_virtual_network.vnet1 ]
name = "ci-${var.project}-${var.env}-${var.location}-001"
location = var.location
resource_group_name = var.rg
os_type = "Linux"
ip_address_type = "Private"
// avoid docker ratelimiting issues with paid subscription credentials
image_registry_credential {
server = "index.docker.io"
username = "myusername"
password = "what here??"
}
// official clamav image, listens at tcp 3310 inside container group, resolvable at localhost or "clamav"
container {
memory = "3" // source: https://docs.clamav.net/manual/Installing/Docker.html
cpu = "1"
name = "clamav"
image = "clamav/clamav:1.4.2" // avoid "latest" or "stable" to lock down a supported version
}
// sidecar: rest api that accepts multipart file requests at :3000/api/v1/scan, and scans them with clamav
container {
memory = "1"
cpu = "1"
name = "clamav-restapi"
image = "benzino77/clamav-rest-api:1.5.5"
ports {
port = 3000
protocol = "TCP"
}
environment_variables = {
"APP_PORT" : "3000"
"APP_FORM_KEY" : "FILES"
"APP_MAX_FILE_SIZE" : "10485760" // 10MB
"CLAMD_IP" : "localhost"
"CLAMD_PORT" : "3310"
}
}
subnet_ids = [azurerm_subnet.containers.id]
tags = local.tags
}
Continuação da discussão da consulta no
image_registry_credential
bloco geral Instâncias de Contêiner do Azure.Mas não é o caso aqui porque quando o SSO do Docker Hub é aplicado, você deve gerar um Token de Acesso Pessoal (PAT) e usá-lo em
password
campo.Consulte: https://docs.docker.com/security/for-developers/access-tokens/
Para fazer isso, siga os passos mencionados abaixo
Acesse Docker Hub → Configurações da conta → Segurança → Novo token de acesso → copie o token.
Consulte:
https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/unauthorized-docker-create-access-token-dockerhub-incorrect-username-password