Utilizando o Oracle Database 12.2 no Docker

Por Alex Zaballa Publicado em Março 2018
Revisado por Victor Ambrsut

Neste artigo irei demostrar como instalar o Docker no Mac OS Sierra e criar um banco de dados Oracle versão 12c release 2.

O que é o Docker?

Docker é uma plataforma Open Source escrita em Go, que é uma linguagem de programação de alto desempenho desenvolvida dentro do Google, a qual facilita a criação e administração de ambientes isolados. Foi criado por uma empresa chamada Dotcloud que hoje é somente Docker.

Com o Docker, podemos criar e implantar ambientes rapidamente. O Docker cria pacotes de software em unidades padronizadas chamadas de contêineres, que têm tudo o que o software precisa para ser executado, inclusive bibliotecas, ferramentas de sistema, etc. Ele possibilita o empacotamento de uma aplicação ou ambiente inteiro dentro de um único container.

O Docker é uma VM?

Não, containers nos permitem compartilhar binários, bibliotecas e criar ambientes uniformes e mais versáteis.

4427662 


Primeiramente, é necessário realizar o download e instalação do Docker.

Neste artigo iremos utilizar o Docker Community Edition (CE), que é ideal para desenvolvedores e pequenas equipes.

O Download pode ser realizado no site abaixo:

//docs.docker.com/docker-for-mac/install/#download-docker-for-mac

Após o download, basta executar o arquivo Docker.dmg e será exibida a imagem abaixo:

4427664

Após clicar em Docker.app e arrastar até o ícone Applications, o Docker estará instalado.

Para executar o Docker, bastar ir até a pasta Applications e executar o arquivo Docker.app:

4427665

Ao iniciar o Docker pela primeira vez, será exibida a tela de boas vindas e também será solicitado um usuário com privilégios para realizar as configurações no Mac OS Sierra:

4427666

4427667

4427668

Após informar as credenciais, será exibida a tela abaixo indicando que o Docker está sendo inicializado:

4427669

Após a inicialização será exibida a mensagem abaixo:

4427670

No Menu do Mac Os Sierra podemos verificar que o Docker está em execução:

4427671

Para realizar a instalação do banco de dados Oracle deve-se entrar no GitHub e realizar o download do arquivo docker-images-master.zip:

//github.com/oracle/docker-images 

4427672

O próximo passo é realizar o download do Oracle Database 12c Release 2 para Linux x86-64:

//www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

4427673

Neste ponto você deverá possuir os 2 arquivos abaixo em um diretório:

  • docker-images-master.zip
  • linuxx64_12201_database.zip

4427674

O próximo passo é extrair o arquivo docker-images-master.zip:

4427675

4427677

Após isso, copie o arquivo linuxx64_12201_database.zip para o diretório docker-images-master/OracleDatabase/dockerfiles/12.2.0.1:

4427678

Agora iremos criar um Docker image utilizando o arquivo buildDockerImage.sh, que pode ser baixado em:

A sintaxe utilizada para gerar a imagem é a seguinte:

./buildDockerImage.sh -v 12.2.0.1 –e

4427679

4427680

Podemos notar que o instalador irá acessar a internet e baixar o oraclelinux:7-slim, bem como irá utilizar o YUM para atualizar os pacotes:

4427682

Atualização dos pacotes:

4427683

Instalação do software banco de dados:

4427684

Execução automática do orainstRoot.sh e root.sh:

4427685

Final da instalação:

4427686

Ao final, possuímos o Oracle Linux e o software do banco de dados Oracle 12.2.0.1:

4427687

Para realizar a criação do banco de dados, utilizamos o comando abaixo:


   docker run --name oracle12_2 -p 1521:1521 -p 5500:5500 -v  
 /Users/alexzaballa/Downloads/Docker/oradata:/opt/oracle/oradata  
 oracle/database:12.2.0.1-ee
 
 

4427688

4427689

Final da criação do banco de dados:

4427690

Como podemos observar não informamos nenhuma senha. Com isso, uma senha será gerada automaticamente:

4427691

É possível redefinir estas senhas com o script abaixo:

docker exec oracle12_2 ./setPassword.sh MinhaNovaSenha

4427692

Para verificar se o banco de dados está rodando podemos utilizar o comando abaixo:

docker ps -a

4427693

Finalmente podemos realizar a conexão via SQLDeveloper:

4427694

Realizando a parada do banco de dados:

docker stop oracle12_2

4427695

docker logs oracle12_2

4427696

Inicializando o banco de dados:

docker start oracle12_2

4427697

docker logs oracle12_2

4427698

Referências:

//github.com/oracle/docker-images/tree/master/OracleDatabase

Alex Zaballa, formado em Análise de Sistemas, é especialista em Banco de Dados Oracle com sólidos conhecimentos em Servidores de Aplicação e Sistemas Operacionais; trabalha com Oracle há 17 anos, é Oracle ACE Director, certificado OCM Database 12c/MAA/11G/Cloud e conta com mais de 270 outras certificações em produtos da Oracle. Alex também é membro do Groupo de Usuários Oracle do Brasil (GUOB), fundador do Grupo de Usuários Oracle de Angola (GUOA) e membro do time OraWorld.

Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.