Como Instalar o Docker no Ubuntu

Como Instalar o docker no ubuntu

Seguem abaixo os passos para a instalação do Docker na sua máquina Ubuntu
 
Caso necessário, desinstale versões anteriores com o comando:
#sudo apt-get remove docker docker-engine docker.io containerd runc
 
1 – Primeiro, certifique que está com o SO atualizado:
sudo apt-get update
 
2 – Instales os pacotes https para o apt-get:
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
 
3 – Adicione a chave ssl oficial do Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –
 
4 – Adicione o repositório do Docker, versão Stable:
sudo add-apt-repository \
   “deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable”
 
5 – Instalando o Docker:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
 
6 – Após a instalação, teste se está tudo Ok, rodando um “hello world” como primeiro container:
sudo docker run hello-world
 
EXTRA – Ajustando permissões para o usuário(rodar sem “sudo”)
7 – Crie o grupo docke:
sudo groupadd docker
 
8 – Adicione o Usuário atual ao grupo docker:
sudo usermod -aG docker $USER
 
9 – Atualize as permissões, e pronto:
newgrp docker
 
 
Fonte:
https://docs.docker.com/engine/install/ubuntu/

Exemplos de uso da análise de dados nos esportes

Quando se fala em ciência dos dados, big data e análise de dados pode vir a mente a imagem de nerds e computadores com telas pretas e letras verdes. A realidade é que as tecnologias de informação estão presentes nas mais diversas áreas e auxiliam o apoio a tomada de decisão em segmentos como economia, política, defesa, saúde e outros. Para exemplificar a aplicação da ciência de dados, vejamos alguns casos de uso no segmento esportivo.

Baseado em uma história real, o filme Moneyball (2012) apresenta a história de um treinador que com limites de orçamento e um time sem grandes estrelas, por meio da análise das estatísticas dos jogadores da liga, consegue competir com os grandes players do campeonato de beisebol. Acreditando no potencial dos jogadores a partir do que os dados indicavam, o treinador consegue montar um time que marca pontos que batem a média de seus adversários, levando-os a uma série de vitórias consecutivas.

É certo que a probabilidade não vai jogar ao seu favor todas as vezes, por isso que se diz probabilidade. Todavia, sua utilidade se dá como ferramenta de apoio e que maximiza a chance de acerto por meio de escolhas mais prováveis.

Outro esporte que abre espaço para o uso de técnicas modernas de transmissão e processamento de dados é a Fórmula 1. Apenas um carro contém mais de 300 sensores que e em um fim de semana de treino e corrida, gera mais de 500 gigabytes de dados. Com tanto informação, a equipe nos bastidores lida com desafios gigantes na área de análise de dados e estatística. Uma equipe como a Mercedes, por exemplo, conta com mais de 100 engenheiros que trabalham em todo o processo, desde a preparação da coleta de dados à análise dos mesmos para apoiar a tomada de decisão.

Verificar as condições do carro, comparar com o desempenho dos adversários e escolher o momento certo para fazer sua parada e manutenção, são respostas provenientes do uso que se faz dos dados gerados por esses sensores.

Não poderia deixar de citar o futebol. Tanto se fala em Messi e Cristiano Ronaldo não é à toa. Os números que esses jogadores carregam mostram desempenhos de alto nível e vários recordes. Mas os números vão além dos jogadores que estampam as capas.

Um exemplo de grande base de dados de futebol é o fantasy game Cartola FC. Em resumo, é um jogo que você monta um time com os jogadores da série A do campeonato brasileiro e faz pontuação a cada rodada. A pontuação de cada jogador é calculada a partir dos eventos no jogo, como passe certo/errado, desarme, chute, gol, falta e etc.

Com informações detalhadas sobre o desempenho de cada jogador, esse banco de dados tem potencial para que se calcule os resultados mais prováveis entre as partidas a partir de modelos matemáticos. Para quem somente acompanha o futebol no fim de semana, pode não ser tão relevante o que a probabilidade diz sobre o jogo do seu time, afinal o que vale é a emoção de torcer. Por outro lado, para profissionais que investem nesse mercado, essas informações podem ser úteis para os momentos de negociação, precificação de jogadores e montagem dos times.

Os exemplos no segmento esportivo vão muito além. Estimativas apontam que somente 0,5% dos dados gerados no mundo são analisados. Mas já é possível perceber que a ciência de dados não é exclusiva de programadores e suas telas pretas, estando presente em situações cotidianas, como nas empolgantes práticas desportivas.

Se quiser falar mais desse assunto que a gente tanto gosta no labdo.it, não deixa de comentar e mandar uma mensagem pra nós.

Referências
Moneyball – https://en.wikipedia.org/wiki/Moneyball_(film)
F1 – TIBCO Spotfire – https://epocanegocios.globo.com/Tecnologia/noticia/2019/09/por-que-formula-1-se-tornou-uma-hackathon.html
Cartola FC – https://pt.wikipedia.org/wiki/Cartola_FC

O que é Computação em Nuvem?

Com a popularidade da internet e o alcance das soluções digitais, cada vez mais se fala sobre computação em nuvem. Afinal, o que é computação em nuvem e como ela está inserida nesse contexto?

Para falar sobre cloud computing, é preciso percorrer a história recente em momentos marcantes da adoção de novas tecnologias que impactam diretamente no modo de vida cotidiano.

Ao longo da história humana, percebe-se a busca por uma máquina que fosse capaz de automatizar certos cálculos usados para contabilizar valores diversos. Inicialmente, o termo computador era usado para definir o trabalho de uma pessoa que fazia contas e resolvia problemas com números. A partir de uma publicação em 1944 no jornal London Times é que o termo ganhou o significado atual: máquina capaz de substituir o esforço humano em certas atividades.

Todavia, somente em 1981 é que se começa a popularizar o uso dessa poderosa ferramenta por meio dos computadores pessoais. O modelo IBM 5051 PC foi o primeiro computador pessoal comercializado em grande escala. A partir daí, abriam-se as portas para o surgimento de novos programas e sistemas, assim como de novos modelos de computadores.

Sistemas operacionais como Linux, OSX e Windows tornaram ainda mais interessante o uso de ferramentas computacionais no cotidiano. Quando conectados a internet, popularizada nos anos 90, permitiram uma difusão maior de conhecimento e acesso à informação.

O cenário se mostrou positivo e muitas apostas foram feitas no sentido de que essas ferramentas dominariam o futuro das sociedades humanas. O otimismo foi tanto que no ano 2000 aconteceu a conhecida bolha da internet ou ‘ponto com’. É estranho que uma ferramenta promissora e, de certa forma, já popularizada, levasse a um evento desastroso no âmbito financeiro. Analisando a história nos dias atuais, atribui-se a eventos de corrupção e falta de governança os motivos da bolha da internet e não à capacidade dessas ferramentas de transformar o cotidiano.

A partir dos anos 2000, os computadores já eram realidade em muitas empresas e funções de escritório. Outro personagem que também se torna realidade no uso diário são os aparelhos de telefone celular. Inicialmente popularizado com função de ser um telefone móvel e permitir a troca de mensagens instantâneas, esses equipamentos ganharam força e revolucionaram seus mercados quando foram conectados a internet e passaram a operar, assim como os computadores, por meio de softwares com funções específicas.

Um evento que marcou essa mudança de paradigma foi o lançamento do iPhone, em 2007, quando foi introduzido o primeiro equipamento multitoque e sem as teclas físicas, dando lugar ao teclado gerado por meio de softwares. Nesse momento, surgia o mercado de aplicativos como conhecemos hoje. O sistema Android, lançado em 2008 pela Google, junto com o iOS são os dominantes nos smartphones atuais. Algumas iniciativas frustradas, como Firefox OS e Ubuntu Phone, demonstram a concentração dessas empresas nesse mercado.

Ainda assim, com o advento das lojas de aplicativos, esses sistemas criaram um segmento em que os programadores pudessem disponibilizar suas soluções para os usuários. Muitos modelos de negócio passaram a surgir por meio do canal disponibilizado pelos sistemas dos smartphones, levando a popularização do termo startup e ao surgimento de novos negócios focados nos canais digitais e na resolução de algum problema do usuário.

Com o desenrolar dessa história, a sociedade moderna foi se tornando cada vez mais dependente das tecnologias e dos aplicativos disponibilizados em seus canais. Além do mais, no ano de 2020, com um surto epidêmico iniciado na China e que desencadeou uma pandemia, as empresas se viram forçadas a aderir aos canais digitais como meio de driblar os problemas ocasionados pela necessidade de distanciamento e isolamento social.

A adoção de tecnologias e canais digitais já vinha em trajetória ascendente e então teve um boom. Do outro lado da moeda, nas equipes técnicas de desenvolvimento e operação, muito já se falava em escalar e manter as operações em tecnologia. Em um mundo cada vez mais conectado, é preciso garantir a disponibilidade e confiabilidade aos usuários do sistema.

Nesse cenário é que a computação em nuvem se mostra extremamente relevante: como manter os serviços disponíveis e entregar melhorias e correções em espaços de tempo cada vez menores? Quando se considera questões como saúde ou finanças, por exemplo, não é possível esperar nem um dia inteiro para que uma falha de software seja corrigida.

Em tradução livre, a definição de computação em nuvem pelo NIST é: um modelo para permitir o acesso onipresente, conveniente e sob demanda à rede a um pool compartilhado de recursos de computação configuráveis (por exemplo, redes, servidores, armazenamento, aplicativos e serviços) que podem ser provisionados e liberados rapidamente com o mínimo de esforço de gerenciamento ou interação do provedor de serviços.

Em outras palavras, a computação em nuvem permite às equipes de operação que novas máquinas e serviços entrem e saiam de operação com o mínimo de esforço, além de permitir a definição por meio de configuração de como essa máquina ou serviço deve se comportar.

Na prática, essa mudança de paradigma em relação a operação permite que as equipes de desenvolvimento enviem atualizações que serão rapidamente incorporadas no ambiente de produção, levando uma nova funcionalidade ou correção ao usuário da solução.

O tema de computação em nuvem se desdobra em vários outros assuntos, como integração e entrega contínua, DevOps, arquitetura de microsserviços e outros mais. Com o objetivo apenas de contextualizar a necessidade do surgimento da computação em nuvem e introduzi-la brevemente, fico por aqui.

Se quiser falar mais desse assunto que a gente tanto gosta no labdo.it, não deixa de comentar e mandar uma mensagem pra nós.


Referências

https://ufsj.edu.br/portal2-repositorio/File/prof_ngoulart/notas_aula/AEDS1/A_historia_do_computador.pdf
– https://www.infomoney.com.br/mercados/ha-13-anos-bolha-da-internet-comecava-a-explodir-nos-eua-veja-como-foi/
– https://pt.wikipedia.org/wiki/Telefone_celular
– http://faculty.winthrop.edu/domanm/csci411/Handouts/NIST.pdf