Docker: O Resumão

O Docker foi desenvolvido para S.Os que usam o kernal Linux. No ambiente Linux é possível usar Docker para Desenvolvimento e Produção. Recentemente foi disponibilizado a versão docker para Windows e esta só pode ser usada para Desenvolvimento.

Container 

É um binário/arquivo/cápsula que encapsula todo o ambiente necessário para sua aplicação funcionar. O ambiente e sua aplicação serão virtualizados na sua máquina física. 

É errado afirmar que um container é uma VM. Uma VM obrigatoriamente terá um S.O(e outros recursos) virtualizados em um software (KMV,VMWare, Virtualbox). Já o container usa os recursos da própria máquina onde está sendo executado. Ele não virtualiza um S.O, ele usa o S.O da máquina hospedeira onde o Docker está instalado  e através de alguns recursos disponibilizados pelo hospedeiro é criado toda a estrutura interna do container.

A diferença entre Imagem e Container é que uma imagem é um container parado. Quando essa imagem é executada ela se transforma em um Container. Análogo a uma imagem ISO de um DVD.

Chinmay Shah – Article Why you should care about Docker?

Storage Drives

São os caras responsáveis por gerenciar leitura/escrita dos dados no container.

AUFS

Esse foi o primeiro SD (Storage Driver) usado pelo Docker. Ele trabalha com o esquema de camadas:

Toda vez que é instalado um novo software ou adicionado arquivos ao container é criado uma nova camada(imagem) como se fosse formando uma pilha de camadas. É nesse momento que entra o conceito de Copy-on-Write.

Todas as camadas subjacentes são read-only, somente a camada superior é read/write, essa camada também é chamada de Camada Container.

Digamos que você vai editar o arquivo /etc/network/interfaces, esse arquivo está na camada image 1.0 (que é read-only). No momento de salvar a edição esse arquivo é copiado para a primeira camada da pilha(que é read/write), onde é salvo uma cópia dele. Na próximas vezes que você for usar a configuração feita nesse arquivo, o docker vai chamar o da primeira camada da pilha. Isso é o Copy-on-write !

Referências:

Como instalar o Postgre e pgAdmin no Linux (Ubuntu e derivados)

Passo a passo não muito detalhado da instalação do SGBD PostgreSQL 9.5 e a ferramenta gráfica da administração pgAdmin 4. Para mais informações leia a documentação do Postgresql e pgAdmin.

Adicionando o repositório do PostGreSQL para a versão Bionic (18.04) do Ubuntu:

– Crie o arquivo /etc/apt/sources.list.d/pgdg.list e adicione a linha abaixo:

deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main

– Importe a chave de assinatura do repositório e atualize as listas de pacotes

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update

Instalando o PostgreSQL 12

– Execute a linha abaixo

sudo apt-get install postgresql-12

Instalando o pgAdmin 4

– Execute a linha abaixo

sudo apt-get install pgadmin4

Criando o banco de dados pelo terminal

Primeiro precisamos acessar o prompt de comando do usuário postgres. Este usuário foi criado automaticamente na instalação do PostgresSQL.

sudo su - postgres

– Para criar o banco de dados:

createdb bancoTeste

– Entrando no cliente de linha de comando do PostgreSQL e manipulando o BD criado:

psql -d bancoTeste

Nesse estágio você pode manipular o banco utilizando a linguagem SQL do Postgres.

– Atribuindo uma senha o usuário postgres.

É importante destacar que esse senha é para o usuário postgres e não para o DB.

Ainda dentro do client de linha de comando do Postgre digite:

\password postgres

Ele vai pedir que você digite a nova senha duas vezes.

Para mais informações digite:

help

Acessando o pgAdmin 4

– Você pode pesquisar no menu de aplicativos do seu S.O por: pgadmin4

– Ou acessar pelo navegador a url  http://127.0.0.1:46245/browser/

– A partir do usuário postgres você consegue criar e logar nos bancos.

O servidor será iniciado e a partir daí é com você.

Referências

Procurando arquivos no Linux com o FIND

comando find

Eu estava com dificuldade para encontrar um arquivo dentro de um diretório cheio de pastas, então pesquisando achei esse post que ensina como usar o aplicativo find no linux.

Comando:

arthu-linux / # find . -name nome-do-arquivo.txt

.   ->  Vai pesquisa no diretório onde você está. Se eu trocar para qualquer outro caminho,como /home/arthu/Downloads, ele vai pesquisar dentro desse caminho.

name   ->  parâmetro que indica que vamos pesquisar exatamente pelo nome especificado a seguir.

Documentação da ferramenta: http://man7.org/linux/man-pages/man1/find.1.html