Utilizando o Oracle Database 12.2 no Docker

Por Alex Zaballa Oracle ACE director
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.

 


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:

https://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:

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:

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:

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


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


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

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:

https://github.com/oracle/docker-images 

 


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

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

 


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

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


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

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

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

https://github.com/oracle/docker-images/tree/master/OracleDatabase/dockerfiles


A sintaxe utilizada para gerar a imagem é a seguinte:

./buildDockerImage.sh -v 12.2.0.1 –e


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:

Atualização dos pacotes:

Instalação do software banco de dados:

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

Final da instalação:

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


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



Final da criação do banco de dados:

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

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

docker exec oracle12_2 ./setPassword.sh MinhaNovaSenha

 

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

docker ps -a 

 

Finalmente podemos realizar a conexão via SQLDeveloper:


Realizando a parada do banco de dados:

docker stop oracle12_2

 
docker logs oracle12_2

 

Inicializando o banco de dados:

docker start oracle12_2

docker logs oracle12_2



Referências:

https://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.