Como configurar e implementar modelos de aplicação personalizados na Container Station 3?
Os modelos de aplicação Container Station permitem-lhe implementar contentores pré-configurados no seu ambiente QNAP. Por predefinição, a Container Station disponibiliza uma coleção de modelos verificados pela QNAP, mas pode adicionar modelos de aplicação personalizados adicionais para satisfazer as suas necessidades específicas. Pode alojar estes modelos da aplicação personalizados diretamente no seu dispositivo QNAP ou num servidor de internet externo.
Este tutorial explica dois métodos de alojamento de modelos de aplicação personalizados no seu dispositivo QNAP e a forma como configurar a Container Station para aceder a estes modelos de aplicação personalizados.
- Criação de um ficheiro de modelo de Aplicação personalizado
- Alojamento de um modelo de Aplicação personalizado num Contentor NGINX
- Alojamento de um modelo de Aplicação personalizado com o Servidor de Internet QNAP
- Adicionar um modelo de Aplicação personalizado na Container Station
- Implementação de um modelo de Aplicação personalizado
Criação de um ficheiro de modelo de Aplicação personalizado
O primeiro passo é criar um ficheiro de modelo de aplicação personalizado. Por predefinição, a Container Station fornece uma lista de contentores que são verificados para funcionarem corretamente com o seu dispositivo QNAP. Pode descarregar e modificar os modelos verificados pela QNAP aqui ou criar um novo ficheiro por si próprio.
Pode modificar o ficheiro de modelo em qualquer editor de texto.
Formato do modelo da Aplicação
As definições dos modelos de aplicação são escritas em JSON. Os modelos válidos são constituídos por uma matriz e um ou mais elementos de modelo de contentor. Cada elemento do modelo de contentor é um objeto JSON que inclui quaisquer campos de dados obrigatórios ou opcionais. O formato deve ser semelhante ao do exemplo seguinte:
{
“templates”: [
{
// template1
},
{
// template2
},
...
]
}
Formato do Elemento JSON
tipo
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O tipo de contentor (Docker ou LXD) para este modelo. |
|
Importância |
Obrigatório |
|
Formato |
Íntegro |
|
Valores aceites |
|
título
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O título do modelo. |
|
Importância |
Obrigatório |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
sub_título
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Informação sobre a versão do modelo. |
|
Importância |
Obrigatório |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
descrição
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Uma descrição utilizada para fornecer informações sobre o modelo. |
|
Importância |
Obrigatório |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
logótipo
|
Atributo |
Descrição |
|---|---|
|
Descrição |
A localização de um logótipo para o modelo. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer URL ou caminho válido relativo ao domínio de rede onde o modelo de aplicação personalizado está alojado. |
localização
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O URL do modelo. Pode ser uma página de internet de introdução ao modelo. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer URL válido |
plataforma
|
Atributo |
Descrição |
|---|---|
|
Descrição |
A plataforma suportada. Deve conter um valor válido. |
|
Importância |
Obrigatório |
|
Formato |
Segmento |
|
Valores aceites |
|
|
Exemplo |
|
imagem
|
Atributo |
Descrição |
|---|---|
|
Descrição |
A imagem associada a um modelo. |
|
Importância |
Obrigatório |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer imagem válida |
|
Exemplo |
|
comando
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O comando para executar no contentor Docker. Se não for especificado, o contentor utiliza o comando predefinido especificado no Dockerfile. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
|
Exemplo |
|
ponto de entrada
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O ponto de entrada para iniciar o contentor Docker. Se não for especificado, o contentor utiliza o ponto de entrada predefinido especificado no Dockerfile. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
|
Exemplo |
|
env
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Uma matriz JSON descrevendo as variáveis de ambiente exigidas por um modelo. Cada elemento da matriz deve ser um objeto JSON válido. |
|
Importância |
Opcional |
|
Formato |
Matriz |
|
Valores aceites |
Uma matriz JSON válida |
|
Formato da matriz |
|
|
Exemplo |
|
etiquetas
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Uma matriz JSON descrevendo as etiquetas associadas a um modelo. Cada elemento da matriz deve ser um objeto JSON válido. |
|
Importância |
Opcional |
|
Formato |
Matriz |
|
Valores aceites |
Uma matriz JSON válida |
|
Formato da matriz |
|
|
Exemplo |
|
volumes
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Uma matriz JSON descrevendo os volumes associados a um modelo. Cada elemento da matriz deve ser um objeto JSON válido com uma propriedade de contentor obrigatória. |
|
Importância |
Opcional |
|
Formato |
Matriz |
|
Valores aceites |
Uma matriz JSON válida |
|
Formato da matriz |
|
|
Exemplo |
|
portas
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Uma matriz JSON descrevendo as portas expostas por um modelo. Cada elemento da matriz deve ser um segmento JSON válido especificando o número da porta no contentor, bem como o protocolo. Opcionalmente, isto pode ser pré-fixado com um número de porta e dois pontos (por exemplo 8080:) para definir a porta a mapear no anfitrião. Se a porta do anfitrião não for especificada, o anfitrião do Docker atribui automaticamente uma porta quando o contentor arranca. |
|
Importância |
Opcional |
|
Formato |
Matriz |
|
Valores aceites |
Uma matriz JSON válida |
|
Exemplo |
|
nome do anfitrião
|
Atributo |
Descrição |
|---|---|
|
Descrição |
O nome do anfitrião do contentor. Pode ajudar a identificar facilmente o contentor. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
Qualquer valor de segmento |
|
Exemplo |
|
reinício_política
|
Atributo |
Descrição |
|---|---|
|
Descrição |
A política de reinício associada ao contentor Docker. Se não for especificado, este valor é o predefinido paraunless-stopped. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
|
|
Exemplo |
|
automático_início_política
|
Atributo |
Descrição |
|---|---|
|
Descrição |
A política de início automático associada ao contentor LXD. Se não for especificado, este valor é o predefinido pararetain. |
|
Importância |
Opcional |
|
Formato |
Segmento |
|
Valores aceites |
|
|
Exemplo |
|
interativo
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Controla se o contentor Docker deve iniciar em modo de primeiro plano. Se não for especificado, o valor é predefinido paratrue. |
|
Importância |
Opcional |
|
Formato |
Booleano |
|
Valores aceites |
|
|
Exemplo |
|
tty
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Controla se ao contentor Docker deve ser atribuído um pseudo-TTY. Se não for especificado, é predefinido paratrue. |
|
Importância |
Opcional |
|
Formato |
Booleano |
|
Valores aceites |
|
|
Exemplo |
|
privilegiado
|
Atributo |
Descrição |
|---|---|
|
Descrição |
Controla se o contentor deve iniciar em modo privilegiado. Se não for especificado, é predefinido parafalse. |
|
Importância |
Opcional |
|
Formato |
Booleano |
|
Valores aceites |
|
|
Exemplo |
|
Alojamento de um modelo de Aplicação personalizado num Contentor NGINX
De seguida, deve disponibilizar o modelo de aplicação personalizado para a Container Station. Este tópico explica o processo de alojamento do ficheiro de modelo com um contentor NGINX também em funcionamento na Container Station.
Em alternativa, também pode alojar o ficheiro de modelo de aplicação no Servidor de Internet QNAP. Consulte Alojamento de um modelo de Aplicação personalizado com o Servidor de Internet QNAP.
Depois de atualizar o ficheiro JSON dos modelos de aplicação personalizados, deve reiniciar o contentor NGINX para que as alterações produzirem efeitos no contentor.
O ficheiro de modelo de aplicação torna-se disponível para utilização.
Pode verificar se o ficheiro modelo de aplicação está acessível, introduzindo http://HOST_IP_ADDRESS:PUBLISHED_HOST_PORT/TEMPLATE_FILENAME no navegador de internet. Por exemplo: http://192.168.1.1:30080/my-templates.json.
Alojamento de um modelo de Aplicação personalizado com o Servidor de Internet QNAP
De seguida, deve disponibilizar o modelo de aplicação personalizado para a Container Station. Este tópico explica o processo de alojamento do ficheiro de modelo com o Servidor de Internet QNAP.
Em alternativa, também pode alojar o ficheiro de modelo de aplicação com um contentor NGINX diretamente na Container Station. Consulte Alojamento de um modelo de Aplicação personalizado num Contentor NGINX.
- Ativar o Servidor de Internet QTS.
- Carregar o ficheiro de modelo de Aplicação personalizado.
O ficheiro de modelo de aplicação torna-se disponível para utilização.
Pode verificar se o ficheiro modelo de aplicação está acessível, introduzindo http://HOST_IP_ADDRESS:WEB_SERVER_PORT/TEMPLATE_FILENAME no navegador de internet. Por exemplo: http://192.168.1.1:80/my-templates.json.
Adicionar um modelo de Aplicação personalizado na Container Station
O passo seguinte é adicionar o ficheiro de modelo de aplicação personalizado para a Container Station. Isto torna a lista de aplicações disponíveis na Container Station.
A Container Station guarda o modelo de aplicação personalizado.
Implementação de um modelo de Aplicação personalizado
O passo final é a implementação de um contentor a partir do ficheiro de modelo de aplicação personalizado que adicionou na etapa anterior.
Abre-se o assistente de Implementar Contentor. Consulte Criação de um Contentor Docker.



.



