LondheShubham153 / 90DaysOfDevOps

This repository is a Challenge for the DevOps Community to get stronger in DevOps. This challenge starts on the 1st January 2023 and in the next 90 Days we promise ourselves to become better at DevOps. The reason for making this Public is so that others can learn from the community and help each other grow.
Other
910 stars 5.19k forks source link

solution.md #324

Open pooja-bhavani opened 1 month ago

pooja-bhavani commented 1 month ago

Create a directory day-19 in that again create directory docker-compose image image image

After that use this command to compose up ⬇️ if you execute that command it will ask to create a volume and create it the after do compose up.

docker-compose up -d
docker volume create --name=my_django_volume

image

docker-compose up -d

image

Use the docker-compose scale command to increase or decrease the number of replicas for a specific service. You can also add replicas in deployment file for auto-scaling. when we are using docker-compose scale we need to down our container and use this command to scale our container.Which means we to kill and remove our containers.

docker-compose down

image

Now use this command to scale our file.

docker-compose up -d --scale web=5

image

Use the docker-compose ps command to view the status of all containers, and docker-compose logs to view the logs of a specific service. image image

Use the docker-compose down command to stop and remove all containers, networks, and volumes associated with the application image

Task-2 Learn how to use Docker Volumes and Named Volumes to share files and directories between multiple containers. Create a new volume

 docker volume create ubuntu_volume
 docker volume ls
 docker volume inspect ubuntu_volume

image

Create two or more containers that read and write data to the same volume using the docker run --mount command. Create two or more containers that need to read and write data. Use the below command to specify the same volume configuration for each container.

 docker run -d --name nginx_container_1 -v ubuntu_volume:/app nginx:latest
 docker run -d --name nginx_container_2 -v ubuntu_volume:/app nginx:latest
 docker ps

image

image

Verify that the data is the same in all containers by using the docker exec command to run commands inside each container. Verify data consistency by executing commands inside each container using docker exec.

 docker exec -it <CONTAINER ID 1> bash
cd app
echo "File created in container 1" > volume.txt
ls
exit

image

I have created a new file called 'volume-test.txt' while connected to nginx_container_1. Let's connect to nginx_container_2 and verify the text file is there.

 docker exec -it nginx_container_2 bash
cd app
ls
cat volume.txt
exit

image

In this example, we have used the container ID and the container name with the docker exec command to verify the content of the volume

Use the docker volume ls command to list all volumes and docker volume rm command to remove the volume when you're done. Utilize docker volume ls to list all volumes and docker volume rm to remove the volume once you have finished using it.

docker volume ls

image

When we want to remove a volume our container should stop and remove, then we can remove the volumes. Stopping the containers:

docker ps
docker stop <NAMES>

image

Removing the volumes:

docker volume ls
docker volume rm <VOLUME NAME>

image

Summary by CodeRabbit

coderabbitai[bot] commented 1 month ago

Walkthrough

The changes in Solution.md provide an overview of Grafana Cloud and its alerting capabilities. The document introduces Grafana Cloud as a managed observability platform and details the functionality of Grafana Alerting, including the creation of alert rules, notification channels, and maintenance options. It also includes a step-by-step guide for setting up Grafana Cloud, integrating Prometheus, and configuring alerting rules with visual aids.

Changes

File Change Summary
2024/day77/Solution.md Introduced overview of Grafana Cloud and alerting capabilities, including setup and configuration instructions.

Poem

In the cloud where Grafana plays,
Alerts and metrics light our ways.
With rules and channels, we take our stand,
Proactive monitoring, oh so grand!
So hop along, let data flow,
In Grafana's world, we surely glow! 🐇✨


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
🪧 Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit , please review it.` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` - `@coderabbitai help me debug CodeRabbit configuration file.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (Invoked using PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai full review` to do a full review from scratch and review all the files again. - `@coderabbitai summary` to regenerate the summary of the PR. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. - `@coderabbitai help` to get help. ### Other keywords and placeholders - Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. - Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description. - Add `@coderabbitai` anywhere in the PR title to generate the title automatically. ### CodeRabbit Configuration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.