Oracle 23ai com Docker e Oracle Container Registry
Olá pessoal !
Subir um banco de dados Oracle em seu ambiente está cada vez mais simples. Hoje eu vou mostrar para vocês como levantar o banco de dados Oracle 23ai através do Docker.
Primeiramente, vamos acessar o Oracle Container Registry. Mas o que é isso ?
O Oracle Container Registry é um repositório online fornecido pela Oracle que armazena imagens de contêiner Docker pré-configuradas e certificadas pela Oracle. Essas imagens incluem uma variedade de software Oracle, como Oracle Database, Oracle WebLogic Server, Oracle Linux, entre outros.
Aqui estão alguns pontos sobre o Oracle Container Registry:
- Acesso a Imagens Certificadas: O registro oferece acesso a imagens de contêiner que são oficialmente suportadas e certificadas pela Oracle, garantindo que elas estejam configuradas corretamente e sejam seguras para uso em ambientes de produção.
- Facilidade de Uso: Os desenvolvedores e administradores de sistemas podem facilmente baixar e usar essas imagens de contêineres em suas próprias infraestruturas Docker, simplificando o processo de implantação e configuração de software Oracle.
- Integração com Docker e Kubernetes: As imagens disponíveis no Oracle Container Registry são frequentemente usadas em ambientes de orquestração de contêineres, como Kubernetes, o que facilita a implementação de aplicativos em larga escala e altamente disponíveis.
- Atualizações e Suporte: A Oracle fornece atualizações regulares para as imagens de contêiner disponíveis em seu registro, garantindo que os usuários tenham acesso às versões mais recentes e corrigidas de seus softwares.
Para poder acessar o Oracle Container Registry, clique página container-registry.oracle.com e, após o registro e login, você poderá pesquisar e baixar as imagens necessárias. No nosso caso, será o banco de dados Oracle 23ai.
Vamos agora dar o comando pull e baixar a imagem:
sudo docker pull container-registry.oracle.com/database/free:latest
Agora que baixamos a imagem, vamos subir o container utilizando o comando abaixo:
sudo docker run -d --name <nome do seu container> \
-p <porta>:1521 \
-e ORACLE_PWD=<sua senha> \
-e ORACLE_CHARACTERSET=AL32UTF8 \
-e ENABLE_ARCHIVELOG=true \
-e ENABLE_FORCE_LOGGING=true \
-v <seu path>:/opt/oracle/oradata \
container-registry.oracle.com/database/free:latest
Agora explicarei um pouco sobre os parâmetros:
–name: O nome do contêiner (padrão: gerado automaticamente)
-p: O mapeamento de porta do host para a porta do contêiner.
- Apenas uma porta é exposta: 1521 (Oracle Listener)
-e ORACLE_PWD: A senha para Oracle Database SYS, SYSTEM e PDB_ADMIN (padrão: gerada automaticamente)
-e ORACLE_CHARACTERSET: O conjunto de caracteres a ser usado ao criar o banco de dados (padrão: AL32UTF8)
-e ENABLE_ARCHIVELOG: Para habilitar o modo de log de arquivamento ao criar o banco de dados (padrão: false)
-e ENABLE_FORCE_LOGGING: Para habilitar o modo de logging forçado ao criar o banco de dados (padrão: false)
-v /opt/oracle/oradata
- O volume de dados a ser usado para o banco de dados.
- Deve ser gravável pelo usuário Unix “oracle” (uid: 54321) dentro do contêiner.
- Se omitido, o banco de dados não será persistido após a recriação do contêiner.
O meu arquivo ficou dessa maneira:
sudo docker run -d --name orcl_kafka \
-p 1521:1521 \
-e ORACLE_PWD=orcl_kafka \
-e ORACLE_CHARACTERSET=AL32UTF8 \
-e ENABLE_ARCHIVELOG=true \
-e ENABLE_FORCE_LOGGING=true \
-v /home/swillians/oracle/data:/opt/oracle/oradata \
container-registry.oracle.com/database/free:latest
Porém, antes de executar o comando acima, é necessário criar o diretório para o volume de dados. Para isso, usarei os comandos abaixo:
sudo mkdir -p /home/swillians/oracle-data
sudo chown 54321:54321 /home/swillians/oracle-data
sudo chmod 775 /home/swillians/oracle-data
Com o diretório criado, rode o comando docker run
:
Vamos verificar como está o nosso container:
Vamos tentar conectar em nosso banco de dados. Para isso, execute o comando abaixo:
sudo docker exec -it orcl_kafka sqlplus sys/orcl_kafka#@FREE as sysdba
Parabéns ! O seu banco de dados está executando com sucesso !
Espero que esse pequeno artigo seja de alguma utilidade, e que os ajude no seu aprendizado.
Referências
Já instalei o meu aqui.Valeu pela dica.