1
resposta

docker-compose up ERROR 1146

Estou usando o arquivo baixado do github pelo terminal:

git clone https://github.com/alura-cursos/3227-Curso-3-AppSec.git

quanto coloco o comando docker-compose up fico com este erro se repetindo indefinidamente:

seed-1 | ERROR 1146 (42S02) at line 2: Table 'testemed.paciente' doesn't exist seed-1 exited with code 0

1 resposta

Olá, Rodrigo.

Tudo bem?

Esse problema de inicialização do seu ambiente Docker é devido à ausência de uma tabela específica no banco de dados. O erro ERROR 1146 (42S02) at line 2: Table 'testemed.paciente' doesn't exist indica que a tabela paciente não foi encontrada no banco de dados testemed.

Eu alterei o código do arquivo population.sql esse arquivo é responsável por popular a tabela paciente. Eu alterei para ele criar a tabela paciente caso ela não seja encontrada ou não exista antes de tentar popular.

Copia esse códido e cola no seu arquivo population.sql, apaga o código que tinha antes por completo, e substitui por esse:

USE testemed;

CREATE TABLE IF NOT EXISTS paciente (
  id VARCHAR(36) NOT NULL,
  cpf VARCHAR(11) NOT NULL,
  nome VARCHAR(255) NOT NULL,
  email VARCHAR(255) NOT NULL,
  estaAtivo BOOLEAN NOT NULL,
  senha VARCHAR(255) NOT NULL,
  telefone VARCHAR(20),
  possuiPlanoSaude BOOLEAN,
  planosSaude JSON,
  historico JSON,
  imagemUrl VARCHAR(255),
  role VARCHAR(20),
  PRIMARY KEY (id),
  UNIQUE KEY unique_cpf (cpf)
);

DELETE FROM paciente WHERE cpf IN ('78160552009', '12345678901');

INSERT INTO paciente (id, cpf, nome, email, estaAtivo, senha, telefone, possuiPlanoSaude, planosSaude, historico, imagemUrl, role)
VALUES 
  (uuid(), '78160552009', 'Emerson Laranja', 'emerson@email.com', true, 'Senh@forte123', '34999335522', true, '[2]', '[{"condition": "sinusite", "severity": "moderado"}]', 'https://img.freepik.com/fotos-gratis/designer-trabalhando-no-modelo-3d_23-2149371896.jpg', 'PACIENTE'),
  (uuid(), '12345678901', 'Joana Silva', 'joana@email.com', true, 'MinhaSenha123', '34999887766', true, '[1, 3]', '[{"condition": "rinite", "severity": "leve"}, {"condition": "asma", "severity": "médio"}]', 'https://img.freepik.com/fotos-premium/retrato-de-uma-jovem-brasileira-sorridente-em-um-vestido-mexicano-ai-gerado_632984-139.jpg', 'PACIENTE');

Derruba os container e roda o comando novamente:

docker compose up

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.