├── docker-compose.yml ├── README.md ├── docker-README.md └── javatechie-playlist-notebook.md /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | 3 | services: 4 | zookeeper: 5 | image: wurstmeister/zookeeper 6 | container_name: zookeeper 7 | ports: 8 | - "2181:2181" 9 | kafka: 10 | image: wurstmeister/kafka 11 | container_name: kafka 12 | ports: 13 | - "9092:9092" 14 | environment: 15 | KAFKA_ADVERTISED_HOST_NAME: localhost 16 | KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # documents 2 | 3 | ## Open Source Kafka Startup in local ## 4 | 5 | 1. Start Zookeeper Server 6 | 7 | ```sh bin/zookeeper-server-start.sh config/zookeeper.properties``` 8 | 9 | 2. Start Kafka Server / Broker 10 | 11 | ```sh bin/kafka-server-start.sh config/server.properties``` 12 | 13 | 3. Create topic 14 | 15 | ```sh bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic NewTopic --partitions 3 --replication-factor 1``` 16 | 17 | 4. list out all topic names 18 | 19 | ``` sh bin/kafka-topics.sh --bootstrap-server localhost:9092 --list ``` 20 | 21 | 5. Describe topics 22 | 23 | ``` sh bin/kafka-topics.sh --bootstrap-server localhost:9092 --describe --topic NewTopic ``` 24 | 25 | 6. Produce message 26 | 27 | ```sh bin/kafka-console-producer.sh --broker-list localhost:9092 --topic NewTopic``` 28 | 29 | 30 | 7. consume message 31 | 32 | ``` sh bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic NewTopic --from-beginning ``` 33 | 34 | 35 | ## Confluent Kafka Community Edition in local ## 36 | 37 | 1. Start Zookeeper Server 38 | 39 | ```bin/zookeeper-server-start etc/kafka/zookeeper.properties``` 40 | 41 | 2. Start Kafka Server / Broker 42 | 43 | ```bin/kafka-server-start etc/kafka/server.properties``` 44 | 45 | 3. Create topic 46 | 47 | ```bin/kafka-topics --bootstrap-server localhost:9092 --create --topic NewTopic1 --partitions 3 --replication-factor 1``` 48 | 49 | 4. list out all topic names 50 | 51 | ``` bin/kafka-topics --bootstrap-server localhost:9092 --list ``` 52 | 53 | 5. Describe topics 54 | 55 | ``` bin/kafka-topics --bootstrap-server localhost:9092 --describe --topic NewTopic1 ``` 56 | 57 | 6. Produce message 58 | 59 | ```bin/kafka-console-producer --broker-list localhost:9092 --topic NewTopic1``` 60 | 61 | 62 | 7. consume message 63 | 64 | ```bin/kafka-console-consumer --bootstrap-server localhost:9092 --topic NewTopic1 --from-beginning ``` 65 | 66 | 8. Send CSV File data to kafka 67 | 68 | ```bin/kafka-console-producer --broker-list localhost:9092 --topic NewTopic1 : . 20 | ``` 21 | 22 | Example: 23 | 24 | ```bash 25 | docker build -t spring-docker-app:1.0 . 26 | ``` 27 | 28 | 2. **Check available Docker images in your Docker engine** 29 | 30 | ```bash 31 | docker images 32 | ``` 33 | 34 | 3. **Start the Docker container to run above Docker image** 35 | 36 | ```bash 37 | docker run -d -p : : 38 | ``` 39 | 40 | Example: 41 | 42 | ```bash 43 | docker run -d -p 7070:8181 spring-docker-app:1.0 44 | ``` 45 | 46 | you can also set the name of your conatiner 47 | ```bash 48 | docker run --name user-app-container -d -p 7070:8181 7b763b737a36 49 | ``` 50 | 51 | Describe about `-p :` 52 | `-p 7070:8181`: This option maps port 8181 of the Docker container to port 7070 of the host machine. This means that any traffic coming to port 7070 on the host machine will be forwarded to port 8181 inside the Docker container where the Spring Boot application is running. This is essential for accessing the Spring Boot application from outside the container. 53 | 54 | 5. **Check status of running container** 55 | 56 | ```bash 57 | docker ps 58 | ``` 59 | 60 | 6. **Stop running container** 61 | 62 | ```bash 63 | docker stop 64 | ``` 65 | 66 | 7. **Debug your Docker container** 67 | 68 | - Check logs of your container 69 | 70 | ```bash 71 | docker logs 72 | ``` 73 | 74 | - Execute a bash shell (/bin/bash) inside a running Docker container 75 | 76 | ```bash 77 | docker exec -it 8656335d1238 /bin/bash 78 | ``` 79 | 80 | 8. **Docker Commit** 81 | 82 | Docker commit is a command used to create a new Docker image from the changes made to a container. This can be useful when you have made modifications or updates to a container and want to save those changes as a new image, which can be used to create new containers or shared with others. 83 | 84 | Do some changes on a running container like (upgrade packages, libraries, or create some files/certificates) and then execute the below command to save as a new image and run it in a different container to validate the update. 85 | 86 | ```bash 87 | docker commit : 88 | ``` 89 | 90 | Example: 91 | 92 | ```bash 93 | docker commit 8656335d1238 my-custom-image:latest 94 | ``` 95 | 96 | 9. **Docker Login** 97 | ```bash 98 | docker login 99 | ``` 100 | 10. **Docker tag image** 101 | ```bash 102 | docker tag spring-docker:1.0 javatechie/spring-docker:1.0 103 | ``` 104 | 11. **Docker push** 105 | ```bash 106 | docker push javatechie/spring-docker:1.0 107 | ``` 108 | 11. **Docker Pull** 109 | ```bash 110 | docker pull javatechie/spring-docker:1.0 111 | ``` 112 | -------------------------------------------------------------------------------- /javatechie-playlist-notebook.md: -------------------------------------------------------------------------------- 1 | # 📌 JavaTechie YouTube Playlists 2 | 3 | Hey Java Enthusiasts! 🚀 4 | 5 | Welcome to the official **JavaTechie YouTube Playlists** section! Here, you’ll find categorized playlists covering everything from **Core Java** to **Spring Boot**, **Microservices**, **DevOps**, **Cloud**, **Databases**, and much more. These playlists are structured to help you learn efficiently and stay up to date with the latest technologies. 6 | 7 | 💡 **Bookmark this page for quick access** so you can easily find the right content whenever you need it. Don't forget to subscribe to the [JavaTechie YouTube Channel](https://www.youtube.com/c/JavaTechie) for more in-depth tutorials! 🎥🔥 8 | 9 | --- 10 | 11 | ## 🚀 Core Java 12 | - **Java 8**: [Java 8 Playlist](https://www.youtube.com/playlist?list=PLVz2XdJiJQxzV9OOw2lVVZVP3Jg9v1Qgz) 13 | 14 | ## 🌱 Spring Framework 15 | - **Spring Boot Complete Course**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxw-jVLpBfVn2yqjvA1Ycceq) 16 | - **Spring Security**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxynOpTm0DuufOkfWHNamJsF) 17 | - **Spring Data JPA**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxxdOhu-xmEUYDzY_Pz8cRGa) 18 | - **Spring Batch**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxyC2LMLgDjFGJBX9TJAM4A2) 19 | - **Spring Transaction**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxxj_zMhm6zCPO6zhtOcq-wl) 20 | - **Spring Cloud**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxz3L2Onpxbel6r72IDdWrJh) 21 | - **Spring Reactive**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxyB4Sy29sAnU3Eqz0pvGCkD) 22 | 23 | ## 📩 Messaging Systems 24 | - **Kafka for Beginners**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwpWGoNokohsSW2CysI6lDc) 25 | 26 | ## 🏗️ Microservices 27 | - **Microservices**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxxWhFkucZBoMxeYE6qTgEF8) 28 | - **Microservice Design Patterns**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxw1H3JVhclHc__WYDaiS1uL) 29 | 30 | ## 🤖 GenAI for Beginners 31 | - **Learn ChatGPT, Google Bard, and DeepSeek**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxx695lRqc4v3V-YitV6ERfn) 32 | 33 | ## ☁️ DevOps & Cloud 34 | - **Docker**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxzMiFDnwxUDxmuZQU3igcBb) 35 | - **Kubernetes**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxybsyOxK7WFtteH42ayn5i9) 36 | - **AWS (Amazon Web Services)**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxxurKT1Dqz6rmiMuZNdClqv) 37 | 38 | ## 🎨 Frontend Development 39 | - **Angular Full Course**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwAhzEZSpDqXlfT7XvNPDIE) 40 | 41 | ## 🎯 Interview Preparation 42 | - **Interview FAQs**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwS8FyWnWyKyfILxHPLsiro) 43 | 44 | ## 🛠️ Tools 45 | - **GitHub**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxxeLS2a9DPp0jY3SBgNw8NV) 46 | - **Jenkins**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwS0BZUHX34ocLTJtRGSQzN) 47 | - **Splunk**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwLTK4h387zBtxyKwMkhTXU) 48 | 49 | ## 🗄️ Databases 50 | - **NoSQL (MongoDB, Neo4j, Cassandra, Solr)**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxyxZK0ggHweWODoVTkXsWUA) 51 | 52 | ## 🌍 Web Services 53 | - **REST Web Services**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxwXNIHPzUz8kP734ZYf8Avu) 54 | - **SOAP Web Services**: [Watch here](https://www.youtube.com/playlist?list=PLVz2XdJiJQxyp_3TWxX3YdkPCwQPFTIXN) 55 | 56 | --- 57 | 58 | 📢 **Stay Connected!** 59 | 🔔 Make sure to **subscribe** and **enable notifications** on [JavaTechie YouTube Channel](https://www.youtube.com/c/JavaTechie) to never miss an update. 🚀 60 | 61 | 💬 Have questions or suggestions? Drop a comment on the videos, and let's learn together! 62 | 63 | Happy Learning! 🎉 64 | 65 | --------------------------------------------------------------------------------