quarta-feira, 27 de dezembro de 2017

Instalando o Docker Compose no Linux

Docker Compose não é instalado por padrão no Linux, então você instalá-lo por fora. Para tal, baixe-o na sua versão mais atual, que pode ser visualizada no seu GitHub, executando o comando abaixo:

 # curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

Dê permissão de execução para o docker-compose:

# chmod +x /usr/local/bin/docker-compose



Comandos Docker

Comandos relacionados à informações
  • docker version - exibe a versão do docker que está instalada.
  • docker inspect ID_CONTAINER - retorna diversas informações sobre o container.
  • docker ps - exibe todos os containers em execução no momento.
  • docker ps -a - exibe todos os containers, independente de estarem em execução ou não.
Comandos relacionados à execução
  • docker run NOME_DA_IMAGEM - cria um container com a respectiva imagem passada como parâmetro.
  • docker run -it NOME_DA_IMAGEM /bin/bash - conecta o terminal que estamos utilizando com o do container.
  • docker run -d -P --name NOME dockersamples/static-site - ao executar, dá um nome ao container.
  • docker run -d -p 12345:80 dockersamples/static-site - define uma porta específica para ser atribuída à porta 80 do container, neste caso 12345.
  • docker run -v "CAMINHO_VOLUME" NOME_DA_IMAGEM - cria um volume no respectivo caminho do container.
  • docker run -it --name NOME_CONTAINER --network NOME_DA_REDE NOME_IMAGEM - cria um container especificando seu nome e qual rede deverá ser usada.
Comandos relacionados à inicialização/interrupção
  • docker start ID_CONTAINER - inicia o container com id em questão.
  • docker start -a -i ID_CONTAINER - inicia o container com id em questão e integra os terminais, além de permitir interação entre ambos.
  • docker stop ID_CONTAINER - interrompe o container com id em questão.
Comandos relacionados à remoção
  • docker rm ID_CONTAINER - remove o container com id em questão.
  • docker container prune - remove todos os containers que estão parados.
  • docker rmi NOME_DA_IMAGEM - remove a imagem passada como parâmetro.
Comandos relacionados à construção de Dockerfile
  • docker build -f Dockerfile - cria uma imagem a partir de um Dockerfile.
  • docker build -f Dockerfile -t NOME_USUARIO/NOME_IMAGEM - constrói e nomeia uma imagem não-oficial.
  • docker build -f Dockerfile -t NOME_USUARIO/NOME_IMAGEM CAMINHO_DOCKERFILE -constrói e nomeia uma imagem não-oficial informando o caminho para o Dockerfile.
Comandos relacionados ao Docker Hub
  • docker login - inicia o processo de login no Docker Hub.
  • docker push NOME_USUARIO/NOME_IMAGEM - envia a imagem criada para o Docker Hub.
  • docker pull NOME_USUARIO/NOME_IMAGEM - baixa a imagem desejada do Docker Hub.
Comandos relacionados à rede
  • hostname -i - mostra o ip atribuído ao container pelo docker (funciona apenas dentro do container).
  • docker network create --driver bridge NOME_DA_REDE - cria uma rede especificando o driver desejado.



Instalação do docker no Debian 9

Neste passo-a-passo, será visto como instalar o Docker no Debian 9. Todos os comandos listados devem ser executados no seu terminal.

1. Antes de mais nada, remova possíveis versões antigas do Docker:

# apt-get remove docker docker-engine docker.io

2. Depois, atualize o banco de dados de pacotes:

# apt-get update

3. Instale os pacotes que permitem o apt usar repositorios com HTTPS:

# apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

4. Agora, adicione ao sistema a chave GPG oficial do repositório do Docker:

# curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg |  apt-key add -

5. Adicione o repositório do Docker às fontes do APT:

# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable"

6. Atualize o banco de dados de pacotes, pare ter acesso aos pacotes do Docker a partir do novo repositório adicionado:

# apt-get update

7. Por fim, instale o pacote docker-ce:

# apt-get install docker-ce

8 . Caso você queira, você pode verificar se o Docker foi instalado corretamente verificando a sua versão:

# docker run hello-world



segunda-feira, 16 de outubro de 2017

Instalar o PHP 7.0 com suporte ao ORACLE no Debian Stretch


Neste procedimento foi utilizado o ambiente abaixo.

Debian 9.2
Apache 2.4.25
Php 7.0.19
Oci8

Requisitos

Instale os pacotes abaixo:

# apt-get install php7.0 php7.0-common php7.0-dev build-essential php-pear alien libaio1

Oracle

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

Faça o download do Oracle dependendo do seu sistema operacional

Basic – oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
Devel – oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm

Após concluído o download, execute o comando para converter os arquivos rpm para deb

# alien oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
# alien oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm

Instale os pacotes debian


# dpkg -i oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb
# dpkg -i oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb

OCI

Instalando o pacote OCI8

# pecl install oci8

Obs: Será solicitado o caminho do oracle client, coloque o caminho abaixo:

 instantclient,/usr/lib/oracle/12.2/client64/lib

Configurando o PHP.

OCI8 instalado agora é só informar ao PHP para utilizar a extensão.
Crie um arquivo chamado oci8.ini com o conteúdo: extension=oci8.so
Salve o arquivo na pasta /etc/php/7.0/mods-available/ e execute o comando

# phpenmod oci8

Configure as variáveis abaixo no apache2 :

# vi /etc/apache2/envvars

Acrescente no fim do arquivo essas duas linhas.

export LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/12.2/client64

Reinicie o apache

# /etc/init.d/apache2 restart



quarta-feira, 24 de maio de 2017

Mini Curso Encosis - IPv6

Mini curso IPv6 - Novo protocolo da Internet.

Ministrado para os alunos da Fucapi no ENCOSIS.

Apresentação:

Apresentação do primeiro dia.
Apresentação do segundo dia




Videos Utilizados na apresentação:


O que é a IANA



Internet das Coisas


Neighbor Discovery Protocol





Sites sobre o assunto:

www.ipv6.br
nicvideos
ipv6.he.net
outros