Neste tutorial, estaremos instalando e demonstrando o uso de Minio no Ubuntu 18.04 servidor LTS. Este VPS tem um IP estático e eu estarei configurando conexões DNS Records e TLS para tornar esse armazenamento de objetos o mais seguro e a produção pronta possível.
Aqui estão os pré -requisitos que você precisaria se quiser acompanhar:
Instalação e configuração diversa
Vamos fazer login em nosso VPS e preparar as coisas para o minio correr corretamente.
Configuração do DNS
Vá para o servidor de nomes onde os registros DNS do seu domínio são mantidos, provavelmente isso é encontrado no site do seu registrador de domínio. Adicione um registro, apontando o FQDN escolhido (por exemplo, minio.exemplo.com) para o seu VPS 'ip_address.
Minio User
Antes de instalarmos o Minio, vamos criar uma nova conta de usuário do UNIX em quem Minio será executado. Não queremos executá -lo como raiz ou como usuário regular que pode ter acesso a sudo ou outros aplicativos executando sob ele. Criamos uma conta do Minio System, chamada Minio-User:
$ sudo userAdd--System minio-usuário-Shell /sbin /nologinDownload de minio
Em seguida, baixamos o minio binário (está escrito em Go que compila em um pequeno binário leve leve).
Pegue o binário
$ curl -o https: // dl.Minio.IO/servidor/minio/release/linux-amd64/minioMova o binário para um local onde os binários geralmente residam:
$ sudo mv minio/usr/local/binFaça o arquivo binário executável e dê um usuário do minio-usuário e agrupe sua propriedade:
$ sudo chmod +x/usr/local/bin/minio/etc. arquivos de configuração, scripts de inicialização e dispositivo de armazenamento
Precisamos de Minio para começar a reinicialização do sistema e ser reconhecido como um serviço de execução pelo sistema operacional. Não fazer isso resultaria em catástrofes como quando o assassino vê esse processo e decide que não é útil o suficiente. Também precisaríamos de um diretório em que os dados reais do nosso armazenamento de objetos sejam salvos:
$ sudo mkdir/usr/local/share/minioCertifique -se de que o Minio tenha controle total sobre esses diretórios:
$ sudo chown minio-user: minio-user/usr/local/share/minioDentro do diretório /etc /padrão, precisamos criar um arquivo minio para especificar variáveis de ambiente como o número da porta em que estaremos ouvindo e o diretório onde os dados devem ser salvos (o volume). Criamos o volume anteriormente que era o diretório/usr/local/share/minio. Portanto, use seu editor de texto favorito para criar um arquivo /etc/padrão/minio e adicione o seguinte conteúdo dentro dele:
Minio_volumes = "/usr/local/share/minio/"Certifique -se de escrever o FDQN designado real do seu VPS em vez do minio de cordas literal.exemplo.com acima. Porta número 9000 é o que eles costumam usar na documentação, mas vamos usar a instalação adequada do TLS, ouvindo na porta 443. Como é um número de porta inferior a 1024, precisamos informar expressamente ao sistema operacional que não há problema em Minio ouvir nessas portas:
$ sudo setcap 'cap_net_bind_service =+ep'/usr/local/bin/minioPor fim, precisamos configurar o minio serviço. Felizmente, o script que o faz está disponível no repositório do Github e o colocaremos no local apropriado:
$ curl -o https: //.GithubUserContent.com/minio/minio-service/master/linux-systemd/Recarregue todas as unidades Systemd e permitir que o Minio inicie a inicialização
$ sudo systemctl daemon -loadPor fim, verifique se o seu firewall permite a comunicação na porta 443.
LetSencrypt TLS Certificados usando o CERTBOT
Precisamos negociar certificados TLS entre nosso servidor Minio e LetSencrypt. CertBot é o cliente que faz isso por nós e também automatiza as renovações de certificados. Vamos primeiro instalar o certbot:
$ sudo apt updateEm seguida, instale os certs, conforme documentado por Minio Docs:
$ sudo certbot certonly -Standalone -d minio.exemplo.COM -STAPLE -OCSP -MAqui você entra no seu FQDN para o servidor Minio após o sinalizador -d e seu endereço de e -mail após -m sinalizador. O endereço de e -mail é importante, pois permite que o LetSencrypt notifique você sobre renovações pendentes.
Seus e -mails agora estarão presentes em/etc/letSencrypt/Live/minio.exemplo.com. Claro, o último nome do diretório dependeria do seu FQDN escolhido. Agora copie os certificados para o diretório Minio /etc /minio e dê permissão para acessá -los.
$ cp/etc/letSencrypt/vive/minio.ranvirslog.com/fullchain.PEM/etc/minio/certs/público.CrtAgora você está pronto para usar o serviço:
$ sudo service minio startSaída:
A saída deste comando conterá a chave de acesso (PAMH22LU3YJIFLU82H2E) e chave secreta (Ikj+qtc0oqdn46r3dlfsjv5bcnm8ueeibypdg8qg) para Minio, como mostrado em letras em negrito acima. Suas chaves seriam diferentes, então não copie as mencionadas aqui.
Usando o minio
Abra seu navegador e visite https: // minio.exemplo.com (Certifique -se de usar o FQDN que você atribuiu) e use a chave de acesso e secreto listada no seu comando de status de serviço para fazer login pela primeira vez.
E você será recebido pela minio interfim.
Aqui você pode usar o sinal de mais no canto inferior esquerdo para fazer upload de arquivos ou criar um novo balde. Eu criei um novo balde chamado mybucket.
Você pode editar sua política de ler e escrever e depois enviar alguns arquivos (por exemplo, imagens) neste balde. Minio criará um URL único para cada objeto em um balde. Você pode definir políticas para leitura e gravação por balde, bem como a data de validade no URL do objeto individual.
Esse é o básico de como você começa com uma loja de objetos. Os próprios objetos idealmente não devem ser modificados apenas lendo ou adicionados aos baldes. Você pode integrar isso ao seu aplicativo seguindo a documentação oficial. Ele suporta uma ampla gama de linguagens de programação que variam de Go, Python, JavaScript para .LÍQUIDO.