diff --git a/.env.example b/.env.example index 93063bdf..2de82f34 100644 --- a/.env.example +++ b/.env.example @@ -4,12 +4,12 @@ POSTGRES_USER=lukinhasssss POSTGRES_PASSWORD=348t7y30549g4qptbq4rtbq4b5rq3rvq34rfq3784yq23847yqor78hvgoreiuvn POSTGRES_DB=adm_videos -DB_POSTGRES_URL=postgres-admin-do-catalogo:5432 +DB_POSTGRES_URL=postgres_admin_do_catalogo:5432 DB_POSTGRES_USERNAME=lukinhasssss DB_POSTGRES_PASSWORD=348t7y30549g4qptbq4rtbq4b5rq3rvq34rfq3784yq23847yqor78hvgoreiuvn DB_POSTGRES_SCHEMA=adm_videos -FLYWAY_DB=jdbc:postgresql://postgres-admin-do-catalogo:5432/adm_videos +FLYWAY_DB=jdbc:postgresql://postgres_admin_do_catalogo:5432/adm_videos FLYWAY_USER=lukinhasssss FLYWAY_PASSWORD=348t7y30549g4qptbq4rtbq4b5rq3rvq34rfq3784yq23847yqor78hvgoreiuvn diff --git a/docker-compose.yaml.old b/docker-compose.yaml.old index 464af1fa..d030afb2 100644 --- a/docker-compose.yaml.old +++ b/docker-compose.yaml.old @@ -13,7 +13,7 @@ services: - adm_videos_network restart: on-failure depends_on: - postgres-admin-do-catalogo: + postgres_admin_do_catalogo: condition: service_healthy rabbitmq-admin-do-catalogo: condition: service_healthy @@ -34,7 +34,7 @@ services: # networks: # - adm_videos_network - postgres-admin-do-catalogo: + postgres_admin_do_catalogo: container_name: adm_videos_postgres image: postgres:latest restart: unless-stopped diff --git a/infrastructure/src/main/resources/db/migration/V5__Alter_Tables_For_Add_Kafka_Connect.sql b/infrastructure/src/main/resources/db/migration/V5__Alter_Tables_For_Add_Kafka_Connect.sql new file mode 100644 index 00000000..2b5de51f --- /dev/null +++ b/infrastructure/src/main/resources/db/migration/V5__Alter_Tables_For_Add_Kafka_Connect.sql @@ -0,0 +1,13 @@ +--alter table categories replica IDENTITY FULL; +-- +--alter table genres replica IDENTITY FULL; +--alter table genres_categories replica IDENTITY FULL; +-- +--alter table cast_members replica IDENTITY FULL; +-- +--alter table videos_video_media replica IDENTITY FULL; +--alter table videos_image_media replica IDENTITY FULL; +--alter table videos replica IDENTITY FULL; +--alter table videos_categories replica IDENTITY FULL; +--alter table videos_genres replica IDENTITY FULL; +--alter table videos_cast_members replica IDENTITY FULL; \ No newline at end of file diff --git a/sandbox/app/docker-compose.yml b/sandbox/app/docker-compose.yml index 77252bc0..a2ab27ea 100644 --- a/sandbox/app/docker-compose.yml +++ b/sandbox/app/docker-compose.yml @@ -1,5 +1,7 @@ version: '3.9' +name: app-admin-do-catalogo + services: admin-do-catalogo: container_name: admin-do-catalogo @@ -27,7 +29,7 @@ services: - /var/lib/docker/containers:/var/lib/docker/containers:ro # Docker logs - /var/run/docker.sock:/var/run/docker.sock:ro # Additional information about containers - ./filebeat/filebeat.yaml:/usr/share/filebeat/filebeat.yml:ro # Configuration file - - ../.docker/filebeat:/usr/share/filebeat/data:rw # Persistence data + - filebeat-admin-do-catalogo:/usr/share/filebeat/data:rw # Persistence data user: root # Allow access to log files and docker.sock environment: - ELASTIC_HOSTS=http://elasticsearch-codeflix:9200 @@ -40,6 +42,10 @@ services: - admin-do-catalogo - elasticsearch-codeflix +volumes: + filebeat-admin-do-catalogo: + external: true + networks: admin-do-catalogo: external: true @@ -48,4 +54,4 @@ networks: open-telemetry-codeflix: external: true elasticsearch-codeflix: - external: true \ No newline at end of file + external: true diff --git a/sandbox/elk/beats/metricbeat.yaml b/sandbox/elk/beats/metricbeat.yaml index 9194a209..ca4163d8 100755 --- a/sandbox/elk/beats/metricbeat.yaml +++ b/sandbox/elk/beats/metricbeat.yaml @@ -18,7 +18,7 @@ metricbeat.modules: - module: postgresql metricsets: [ "database", "bgwriter", "activity" ] period: 10s - hosts: [ "postgres:////localhost:5432", "postgres://postgres-admin-do-catalogo:5432", "postgres://postgres-admin-do-catalogo:5432/adm_videos", "postgres-admin-do-catalogo:5432" ] + hosts: [ "postgres:////localhost:5432", "postgres://postgres_admin_do_catalogo:5432", "postgres://postgres_admin_do_catalogo:5432/adm_videos", "postgres_admin_do_catalogo:5432" ] output.elasticsearch: hosts: ["elasticsearch-codeflix:9200"] diff --git a/sandbox/elk/docker-compose.yml b/sandbox/elk/docker-compose.yml index 0385bb5c..01a6551e 100644 --- a/sandbox/elk/docker-compose.yml +++ b/sandbox/elk/docker-compose.yml @@ -1,10 +1,11 @@ version: '3.9' +name: elasticstack-admin-do-catalogo + services: elasticsearch-codeflix: container_name: elasticsearch-admin-do-catalogo image: docker.elastic.co/elasticsearch/elasticsearch:8.12.0 -# image: docker.elastic.co/elasticsearch/elasticsearch:8.7.0 ports: - "9200:9200" environment: @@ -22,7 +23,7 @@ services: soft: -1 hard: -1 volumes: - - ../.docker/elasticsearch-admin-do-catalogo:/usr/share/elasticsearch/data + - elasticsearch-admin-do-catalogo:/usr/share/elasticsearch/data healthcheck: test: [ "CMD-SHELL", "curl --silent --fail http://localhost:9200/_cat/health?h=status" ] interval: 5s @@ -134,6 +135,10 @@ services: networks: - elasticsearch-codeflix +volumes: + elasticsearch-admin-do-catalogo: + external: true + networks: elasticsearch-codeflix: external: true diff --git a/sandbox/elk/elasticstack_bkp/beats/metricbeat.yaml b/sandbox/elk/elasticstack_bkp/beats/metricbeat.yaml index 67eec2ff..6b20d79b 100755 --- a/sandbox/elk/elasticstack_bkp/beats/metricbeat.yaml +++ b/sandbox/elk/elasticstack_bkp/beats/metricbeat.yaml @@ -18,7 +18,7 @@ metricbeat.modules: - module: postgresql metricsets: [ "database", "bgwriter", "activity" ] period: 10s - hosts: [ "postgres:////localhost:5432", "postgres://postgres-admin-do-catalogo:5432", "postgres://postgres-admin-do-catalogo:5432/adm_videos", "postgres-admin-do-catalogo:5432" ] + hosts: [ "postgres:////localhost:5432", "postgres://postgres_admin_do_catalogo:5432", "postgres://postgres_admin_do_catalogo:5432/adm_videos", "postgres_admin_do_catalogo:5432" ] output.elasticsearch: hosts: ["elasticsearch-admin-do-catalogo:9200"] diff --git a/sandbox/monitoramento/docker-compose.yml b/sandbox/monitoramento/docker-compose.yml index 78db507a..d0002bea 100644 --- a/sandbox/monitoramento/docker-compose.yml +++ b/sandbox/monitoramento/docker-compose.yml @@ -1,5 +1,7 @@ version: '3.9' +name: monitoramento-codeflix + services: prometheus-codeflix: container_name: prometheus-codeflix @@ -57,4 +59,6 @@ networks: volumes: prometheus-data-codeflix: + external: true grafana-data-codeflix: + external: true diff --git a/sandbox/run.sh b/sandbox/run.sh index 721b1e4b..0b7ab718 100755 --- a/sandbox/run.sh +++ b/sandbox/run.sh @@ -1,11 +1,11 @@ -printf "Criando as pastas com permissões...\n" -sudo chown root app/filebeat/filebeat.yaml -mkdir -m 777 .docker -mkdir -m 777 .docker/postgresql -mkdir -m 777 .docker/rabbitmq -mkdir -m 777 .docker/keycloak -mkdir -m 777 .docker/filebeat -mkdir -m 777 .docker/elasticsearch-admin-do-catalogo +printf "Criando os docker volumes...\n" +docker volume create postgresql-admin-do-catalogo +docker volume create rabbitmq-admin-do-catalogo +docker volume create keycloak-admin-do-catalogo +docker volume create grafana-data-codeflix +docker volume create prometheus-data-codeflix +docker volume create elasticsearch-admin-do-catalogo +docker volume create filebeat-admin-do-catalogo # ---------------------------------------------------- diff --git a/sandbox/services/docker-compose.yml b/sandbox/services/docker-compose.yml index 82dba0bf..10e37f96 100644 --- a/sandbox/services/docker-compose.yml +++ b/sandbox/services/docker-compose.yml @@ -1,8 +1,10 @@ version: '3.9' +name: services-admin-do-catalogo + services: - postgres-admin-do-catalogo: - container_name: postgres-admin-do-catalogo + postgres_admin_do_catalogo: + container_name: postgres_admin_do_catalogo image: postgres:latest restart: unless-stopped ports: @@ -11,10 +13,11 @@ services: POSTGRES_USER: ${POSTGRES_USER-username} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD-password} POSTGRES_DB: ${POSTGRES_DB-adm_videos} + command: postgres -c wal_level=logical # Serve para o kafka connect se conectar corretamente com o banco security_opt: - seccomp:unconfined volumes: - - ../.docker/postgresql:/var/lib/postgresql/data + - postgresql-admin-do-catalogo:/var/lib/postgresql/data healthcheck: test: [ "CMD", "pg_isready -U lukinhasssss -d adm_videos" ] timeout: 45s @@ -35,7 +38,7 @@ services: - RABBITMQ_DEFAULT_PASS=123456 - RABBITMQ_DEFAULT_VHOST=/ volumes: - - ../.docker/rabbitmq:/var/lib/rabbitmq:rw + - rabbitmq-admin-do-catalogo:/var/lib/rabbitmq:rw healthcheck: test: [ "CMD-SHELL", "rabbitmq-diagnostics -q ping" ] interval: 5s @@ -55,14 +58,21 @@ services: - KEYCLOAK_ADMIN=admin - KEYCLOAK_ADMIN_PASSWORD=admin volumes: - # - keycloak_data:/opt/keycloak/data/ - - ../.docker/keycloak:/opt/keycloak/data/h2:rw + - keycloak-admin-do-catalogo:/opt/keycloak/data/ command: -# - start-dev # Deve ser utilizado quando a aplicação estiver rodando fora de um container - - start-dev --hostname-url=http://keycloak-admin-do-catalogo:8080 # Deve ser utilizado quando a aplicação estiver rodando dentro de um container + - start-dev # Deve ser utilizado quando a aplicação estiver rodando fora de um container +# - start-dev --hostname-url=http://keycloak-admin-do-catalogo:8080 # Deve ser utilizado quando a aplicação estiver rodando dentro de um container networks: - admin-do-catalogo-services +volumes: + postgresql-admin-do-catalogo: + external: true + rabbitmq-admin-do-catalogo: + external: true + keycloak-admin-do-catalogo: + external: true + networks: admin-do-catalogo-services: external: true \ No newline at end of file