Pip Install No Cache
Pip is a package installer for Python that simplifies the process of installing and managing libraries and packages. It maintains a cache of previously downloaded packages to optimize the installation process. However, there are situations where using the cache might not be ideal. In such cases, the `–no-cache-dir` flag comes to the rescue. In this article, we will explore the concept of `pip install –no-cache-dir`, understand its advantages and disadvantages, potential issues, and learn how to use it effectively. So, let’s dive in!
## What is Pip Install –no-cache-dir?
When we execute the `pip install` command, by default, pip checks its cache for the package and directly installs it if it exists. The cache is located in the user’s home directory (`$HOME/.cache/pip` on Unix-based systems). However, the `–no-cache-dir` flag instructs pip to bypass the cache altogether and always fetch the package from the remote source.
## When should I use the –no-cache-dir flag?
Although the cache is designed to improve installation speed, there are situations where it becomes necessary to disable it. Here are a few scenarios where using `–no-cache-dir` is recommended:
1. **Reproducible Environments:** When setting up a reproducible environment, you may need to ensure that every package is fetched from the remote source to guarantee consistency across different machines or deployments.
2. **Package Updates:** If you suspect that there have been recent updates to the package you want to install, bypassing the cache ensures you get the latest version each time.
3. **Package Validation:** In certain cases, you may want to verify the integrity and security of a package. By disabling the cache, you can ensure that the package is downloaded again from the source, allowing you to perform validation checks.
## How does –no-cache-dir affect the installation process?
When you use `pip install –no-cache-dir`, pip ignores the cache and performs a fresh download of the package. As a result, the package is fetched directly from the remote source instead of the locally stored version. This ensures that you always have the most up-to-date version of the package.
## What are the advantages of using –no-cache-dir?
Using `–no-cache-dir` offers several advantages:
1. **Consistency:** By fetching packages from the source each time, you eliminate the possibility of using outdated or incompatible packages that may exist in the cache. This ensures consistent behavior across different environments.
2. **Timely Updates:** If you depend on the latest package updates, bypassing the cache guarantees that you always get the most recent version.
3. **Verification:** When you disable the cache, you can perform integrity checks or security validations on each package. This is especially useful when dealing with critical or sensitive applications.
## What are the disadvantages of using –no-cache-dir?
Despite its benefits, there are a few considerations to keep in mind when opting to use `–no-cache-dir`:
1. **Increased Download Time:** By bypassing the cache, pip needs to download the package from the source each time. This can significantly increase installation time, especially for large packages or slow network connections.
2. **Network Dependency:** Using `–no-cache-dir` puts a greater reliance on network availability. If the remote source is down or experiencing connectivity issues, the installation process may fail.
3. **Increased Bandwidth Usage:** Disabling the cache means fetching packages from the source more frequently. This can lead to increased bandwidth usage, which might be problematic in low-bandwidth environments or when constraints are in place.
## Are there any potential issues with using –no-cache-dir?
Using `–no-cache-dir` generally does not introduce any critical issues. However, there are a few things to be aware of:
1. **Dependency Resolution:** Pip resolves dependencies by considering the cache, so disabling it might result in unexpected behavior if a required package is missing from the cache. In such cases, manually specifying the package version or fetching the dependencies separately might be necessary.
2. **Package Source Availability:** When bypassing the cache, it’s essential to ensure that the package source is available and accessible. If the source becomes unavailable, installation attempts might fail.
## How to use pip install –no-cache-dir?
Using `pip install –no-cache-dir` is quite simple. Just add the flag `–no-cache-dir` to the `pip install` command followed by the package or library you want to install. Here’s an example:
“`
pip install –no-cache-dir package_name
“`
This command will disregard the cache and fetch the package directly from the remote source every time.
## Conclusion
Pip’s `–no-cache-dir` flag aids in ensuring consistency, package validation, and up-to-date installations in various Python development scenarios. Although it may increase download time and bandwidth usage, the advantages often outweigh the disadvantages. By using `pip install –no-cache-dir`, you can take control of your package installation process and confidently manage your Python dependencies.
FAQs:
1. **Q:** How can I use `pip install –no-cache-dir` with a specific target location?
A: To install a package directly into a specific target location, use the `–target` flag along with `pip install –no-cache-dir`. This allows you to specify a directory where the package should be installed.
2. **Q:** Can I use `pip install –no-cache-dir` in a Dockerfile for building container images?
A: Yes, you can use `pip install –no-cache-dir` in a Dockerfile to ensure that packages are fetched directly from the source during the container build process. This helps maintain consistency and avoid any potential caching issues.
3. **Q:** How can I view the available options and flags for `pip install`?
A: To view all available options and flags for `pip install`, you can simply use `pip install –help`. This will display a list of available flags along with their descriptions.
4. **Q:** Can I use `pip install –no-cache-dir` with a proxy server?
A: Yes, you can use `pip install –no-cache-dir` with a proxy server. Ensure that your proxy server is correctly configured in your environment variables or specify the proxy address using `–proxy` flag with the `pip install` command.
5. **Q:** How can I install pip in a Docker container?
A: To install pip in a Docker container, you can add the following command to your Dockerfile:
“`
RUN python -m ensurepip –upgrade –default-pip
“`
This command ensures that pip is installed and upgraded in your Docker container.
6. **Q:** How can I upgrade pip itself using pip?
A: You can upgrade pip itself using the command `pip install –upgrade pip`. This ensures that you have the latest version of pip installed on your system.
Pip3 Install Shap No Cache Dir Does Not Help, Error, No Filesdirectories In Tmppip Build 8Btp05R0
Keywords searched by users: pip install no cache Pip install –target, Dockerfile pip install requirements txt, Pip install package, Pip install help, pip install options, Pip install with proxy, Install pip Docker, pip install –upgrade
Categories: Top 66 Pip Install No Cache
See more here: nhanvietluanvan.com
Pip Install –Target
To use the –target option, simply open your command prompt or terminal and enter the following command:
“`
pip install package_name –target directory_path
“`
Here, “package_name” represents the name of the package you want to install, and “directory_path” is the directory where you want the package to be installed.
When you use the –target option, pip installs the package and its dependencies directly into the specified target directory, rather than installing them globally. This means that the installed package will only be available within the context of that target directory. Any additional packages that the installed package depends on will also be installed within the target directory.
The –target option is particularly useful in situations where you want to maintain separate environments for different projects. By creating separate target directories for each project, you can easily manage and update the packages that are specific to that project, without affecting the global Python environment or packages installed in other projects.
In addition to keeping project dependencies separate, the –target option can also be helpful in scenarios where you need to deploy your project to a specific location. By using –target to specify the deployment directory, you can ensure that all the required packages are installed in the correct location, making it easier to replicate your project on other machines or servers.
When using the –target option, it’s important to note that pip will not modify or update any existing packages that are installed globally or in other directories. The package will be installed directly into the target directory without affecting any other locations.
It’s worth mentioning that there are other options available with pip install that can be useful in conjunction with –target. For example, the –upgrade option can be used to upgrade the installed package to the latest version, while the –ignore-installed option allows you to install a package without considering any existing versions.
One thing to keep in mind when using –target is that the target directory must exist before running the command. If the specified directory does not exist, pip will throw an error. Therefore, it’s important to create the target directory in advance, or ensure that the directory is already present.
FAQs:
Q: Can I specify a relative directory path with –target?
A: Yes, you can specify a relative directory path with –target. However, it’s important to be aware of your current working directory when using relative paths. If you’re not in the correct directory, pip may not be able to locate or create the target directory.
Q: Can I use –target with virtual environments?
A: Yes, you can use –target with virtual environments. In fact, one common use case for –target is to install packages into a virtual environment. By specifying the target directory as the virtual environment’s site-packages directory, you can keep the package installation isolated to that specific environment.
Q: How can I uninstall a package installed with –target?
A: To uninstall a package installed with –target, you can use the regular pip uninstall command. For example:
“`
pip uninstall package_name
“`
This will remove the package and its dependencies from the target directory.
Q: Can I install multiple packages with –target?
A: Yes, you can install multiple packages with –target by simply listing the package names separated by a space. For example:
“`
pip install package1 package2 –target directory_path
“`
This will install both package1 and package2 into the specified target directory.
In conclusion, pip install –target is a powerful command that allows you to install Python packages into a specific target directory. Whether you want to keep your project dependencies separate, or need to deploy your project to a specific location, –target provides a convenient solution. By understanding how to use –target effectively, you can better manage your package dependencies and ensure smooth project deployments.
Dockerfile Pip Install Requirements Txt
Introduction:
In today’s rapidly evolving software development landscape, efficient deployment of applications has become crucial. Docker, an open-source platform, has gained significant popularity due to its ability to simplify the deployment process by encapsulating applications and their dependencies into containers. Among the various tools and configurations used in Dockerfile, “pip install requirements.txt” plays a vital role in managing Python dependencies.
What is Dockerfile?
A Dockerfile is a text file that contains instructions for building a Docker image. It serves as a blueprint for creating a containerized application. Docker images are built based on the instructions defined in the Dockerfile, allowing developers to package their applications along with their dependencies into self-contained units known as containers.
What is Pip?
Pip is a package management system for installing and managing software packages written in Python. It simplifies the process of installing Python libraries and dependencies required for applications to run smoothly. Pip allows developers to specify dependencies and their versions in a text file called “requirements.txt.”
What is a Requirements.txt File?
A requirements.txt file is a plain text file that lists the dependencies, along with their versions, required by a Python project. It serves as a roadmap for installing packages in a consistent and reproducible manner. Including a requirements.txt file in your project ensures that all collaborators or production environments have access to the same set of dependencies, reducing compatibility issues.
Understanding “Pip Install Requirements.txt” in Dockerfile:
When building a Docker image using a Dockerfile, developers often need to install specific Python packages or dependencies within the container. The “pip install requirements.txt” command in the Dockerfile simplifies this process by automatically installing the packages specified in the requirements.txt file.
To use this command, developers need to include the requirements.txt file in the same directory as the Dockerfile. The Dockerfile should contain the following instruction:
“`
COPY requirements.txt .
RUN pip install –no-cache-dir -r requirements.txt
“`
The “COPY” command copies the requirements.txt file from the host filesystem into the container’s current directory. The “RUN” command executes the “pip install” command with the “–no-cache-dir” flag, which ensures that no cached packages are used. The “-r” flag specifies the requirements.txt file, and pip proceeds to install the required dependencies.
Benefits of Using “Pip Install Requirements.txt” in Dockerfile:
1. Consistency: By including a requirements.txt file in the Dockerfile, developers can ensure that all instances of the application are using the same set of dependencies, preventing compatibility issues.
2. Reproducibility: Since the dependencies are explicitly specified in the requirements.txt file, the same set of packages can be installed in different environments, ensuring consistent behavior across various stages of development and deployment.
3. Easy Collaboration: When multiple developers are working on a project, the requirements.txt file provides a clear overview of the project’s dependencies, making it easier to collaborate and onboard new team members.
4. Scalability: Docker’s ability to isolate applications and their dependencies within containers simplifies scaling. When deploying to multiple instances or environments, the Docker image with the requirements.txt file provides a clear and reliable mechanism for installing dependencies consistently.
FAQs:
Q1. Can I include comments in the requirements.txt file?
Yes, comments can be added to the requirements.txt file by starting the line with the “#” symbol. Comments are helpful for providing additional information about specific packages or explaining reasons behind the inclusion of certain dependencies.
Q2. How are conflicting dependencies resolved when using pip install requirements.txt?
Pip automatically resolves dependencies based on the requirements specified in the requirements.txt file. If conflicting dependencies are encountered, pip attempts to find a compatible version for each package. In some cases, manual intervention might be required to resolve conflicts.
Q3. Can I use a different package manager with Dockerfile?
While pip is the most commonly used package manager for Python projects, Docker supports other package managers as well. For example, if you’re using Node.js for frontend dependencies, you can utilize npm by including an additional RUN command in your Dockerfile.
Conclusion:
The “pip install requirements.txt” command, combined with Dockerfile, simplifies the installation of Python dependencies, ensuring consistency and reproducibility across different development and deployment environments. By including a requirements.txt file in the Dockerfile, developers can simplify collaboration, scale their applications effortlessly, and reduce compatibility issues. Understanding and utilizing this powerful combination can greatly streamline your software deployment process.
Pip Install Package
Python, being a popular and versatile programming language, offers an extensive library of packages that cater to various needs of developers. To easily access and install these packages, Python provides a package manager called “Pip.” In this article, we will explore what Pip is, how to use it, and answer some commonly asked questions related to Pip installation.
What is Pip?
Pip, which stands for “Pip Installs Packages,” is the default package manager for Python. It simplifies the process of installing, managing, and updating third-party Python packages. Pip allows developers to seamlessly integrate external libraries into their Python projects, making it a fundamental tool for Pythonistas across the globe.
How to Install Pip?
Before diving into the installation process, it is important to note that Pip comes pre-installed with Python versions 2.7.9 and later (or 3.4 and later) on most operating systems. However, if you are using an older Python version or Pip is missing from your installation, here’s how you can install it:
1. Windows:
– Download the get-pip.py script from the official Python website.
– Open Command Prompt and navigate to the directory where the get-pip.py file is saved.
– Execute the command: python get-pip.py
2. macOS and Linux:
– Open Terminal.
– Run the following command: sudo apt install python3-pip
With Pip successfully installed, you have now acquired the power to enhance your Python projects with countless third-party libraries.
Using Pip to Install Packages:
Using Pip to install packages is as effortless as it gets. Here’s the basic syntax:
pip install package_name
Replace “package_name” with the desired name of the package you want to install. Pip will handle all the necessary downloads and dependencies, saving you from the hassle. Let’s look at a few examples:
1. Installing a Package:
To install a package, open your terminal or command prompt and enter the following command:
pip install package_name
For instance, if you want to install the popular NumPy package, run:
pip install numpy
Pip will then fetch the latest version from the Python Package Index (PyPI) and install it on your system.
2. Installing a Specific Version:
You can also install a specific version of a package using Pip. This can be useful when working with code that has certain version requirements. To install a specific version, use this command:
pip install package_name==version
For example, to install version 1.19.1 of the Pandas package, run:
pip install pandas==1.19.1
3. Installing a Package from Requirements File:
Pip allows the installation of dependencies specified in a requirements file. This file lists all the packages required for a project. To install the packages from a requirements file, run the following command:
pip install -r requirements.txt
Replace “requirements.txt” with the name of the requirements file.
Frequently Asked Questions:
Q1. What is a requirements file?
A requirements file is a simple text file that lists all the Python packages and their versions required for a project. Each package is specified in a new line with an optional version number.
Q2. How can I upgrade a package installed via Pip?
To upgrade a package installed via Pip, execute the following command:
pip install –upgrade package_name
Q3. How can I uninstall a package installed via Pip?
To remove a package installed via Pip, use the following command:
pip uninstall package_name
Q4. Can I use Pip to install packages globally?
Pip installs packages by default in the user-specific package directory. However, you can use the “–user” flag to install packages globally for all users.
Q5. What if I encounter permission errors during installation?
On certain systems, you may require administrative privileges to install packages. Prefixing the installation command with “sudo” (for macOS and Linux) or running the Command Prompt as an administrator (for Windows) often resolves permission-related issues.
Conclusion:
Pip is a valuable tool for Python developers, offering seamless package management and installation. It simplifies the process of incorporating external libraries into Python projects. With Pip, you can effortlessly install, manage, and update packages, making Python development a breeze.
So, go ahead and explore the vast world of Python packages using Pip. Happy coding!
Images related to the topic pip install no cache
![pip3 install shap no cache dir does not help, error, No filesdirectories in tmppip build 8btp05r0 pip3 install shap no cache dir does not help, error, No filesdirectories in tmppip build 8btp05r0](https://nhanvietluanvan.com/wp-content/uploads/2023/07/hqdefault-1733.jpg)
Found 23 images related to pip install no cache theme
![pip Pip](https://f4n3x6c5.stackpathcdn.com/article/pip-commands-every-python-developer-should-know/Images/pip%20Commands%20Every%20Python%20Developer%20Should%20Know2.png)
![Python】キャッシュを利用せずに pip install を行う | だえうホームページ Python】キャッシュを利用せずに Pip Install を行う | だえうホームページ](https://daeudaeu.com/wp-content/uploads/2022/04/pip-no-cache-dir-3.png)
![Python】キャッシュを利用せずに pip install を行う | だえうホームページ Python】キャッシュを利用せずに Pip Install を行う | だえうホームページ](https://daeudaeu.com/wp-content/uploads/2022/04/pip-no-cache-dir-6.png)
![pip Pip](https://f4n3x6c5.stackpathcdn.com/article/pip-commands-every-python-developer-should-know/Images/pip%20Commands%20Every%20Python%20Developer%20Should%20Know8.png)
![Use pip.conf in your Python virtual environment so no --index-url on command line - YouTube Use Pip.Conf In Your Python Virtual Environment So No --Index-Url On Command Line - Youtube](https://i.ytimg.com/vi/RNp5RWKi-q0/maxresdefault.jpg)
![python - Failed installing pycrypto with pip - Stack Overflow Python - Failed Installing Pycrypto With Pip - Stack Overflow](https://i.stack.imgur.com/nevm4.png)
![How to install, download and build Python wheels - ActiveState How To Install, Download And Build Python Wheels - Activestate](https://cdn.activestate.com/wp-content/uploads/2021/09/Python-wheels.png)
![can't download en model for spaCy 2.0.5 . in ubuntu 14.04 - Stack Overflow Can'T Download En Model For Spacy 2.0.5 . In Ubuntu 14.04 - Stack Overflow](https://i.stack.imgur.com/fbv31.jpg)
![How to install Pip on Ubuntu How To Install Pip On Ubuntu](https://linuxhint.com/wp-content/uploads/2020/06/How-to-install-Pip-on-Ubuntu-6.png)
![Build simple FastAPI project in Docker Build Simple Fastapi Project In Docker](https://cdn.hashnode.com/res/hashnode/image/upload/v1660349358394/-NZMcHzGR.png?auto=compress,format&format=webp)
![Debian / Ubuntu: Fatal error: Python.h: No such file or Directory - nixCraft Debian / Ubuntu: Fatal Error: Python.H: No Such File Or Directory - Nixcraft](https://www.cyberciti.biz/media/new/faq/2012/10/Finding-Python-header-file-packag-to-install-Python.h-file.png)
![Error executing Jupyter command 'notebook': [Errno 2] No such file or directory | bobbyhadz Error Executing Jupyter Command 'Notebook': [Errno 2] No Such File Or Directory | Bobbyhadz](https://bobbyhadz.com/images/blog/python-error-executing-jupyter-notebook-no-such-file-or-directory/pip-reinstall-jupyter.webp)
![How to Install Python pip on Ubuntu 22.04 How To Install Python Pip On Ubuntu 22.04](https://linuxhint.com/wp-content/uploads/2022/05/word-image-1003.png)
![How To Install PIP On CentOS 7 With 2 Steps How To Install Pip On Centos 7 With 2 Steps](https://azdigi.com/blog/wp-content/uploads/2021/01/pip1-1024x561.png)
![permissions - When I use sudo pip to install software I get the message Permissions - When I Use Sudo Pip To Install Software I Get The Message](https://i.stack.imgur.com/xKxA7.png)
![How To Install pip On Windows? – Be on the Right Side of Change How To Install Pip On Windows? – Be On The Right Side Of Change](https://blog.finxter.com/wp-content/uploads/2020/12/image-6.png)
![HOW to create a docker container when i have two python scripts which are dependent to each other? - General Discussions - Docker Community Forums How To Create A Docker Container When I Have Two Python Scripts Which Are Dependent To Each Other? - General Discussions - Docker Community Forums](https://global.discourse-cdn.com/docker/original/3X/f/a/fa998751b31f2452bfa8355e725aa33eefa14b0f.png)
![How to install esptool via pip Python on Windows cmd for esp8266 NodeMCU (solved) - YouTube How To Install Esptool Via Pip Python On Windows Cmd For Esp8266 Nodemcu (Solved) - Youtube](https://i.ytimg.com/vi/p4UGKRKYFCs/maxresdefault.jpg)
![ERROR: Could not build wheels for couchbase which use PEP 517 and cannot be installed directly - Python SDK - Couchbase Forums Error: Could Not Build Wheels For Couchbase Which Use Pep 517 And Cannot Be Installed Directly - Python Sdk - Couchbase Forums](https://global.discourse-cdn.com/couchbase/optimized/2X/3/3a98735421e421a73772bdf1bb69616a77eb1eb1_2_690x362.png)
![ERROR: Command errored out with exit status 1: bagit - usegalaxy.org support - Galaxy Community Help Error: Command Errored Out With Exit Status 1: Bagit - Usegalaxy.Org Support - Galaxy Community Help](https://global.discourse-cdn.com/business7/uploads/galaxy/optimized/2X/c/cb5384c9d20706880fe9134da3b50238a09f8c05_2_564x500.png)
![Pip Command Not Found on Windows: A Guide | Built In Pip Command Not Found On Windows: A Guide | Built In](https://builtin.com/sites/www.builtin.com/files/styles/ckeditor_optimize/public/inline-images/11_pip-command-not-found.jpg)
![How to Install pip on MacOS - Pi My Life Up How To Install Pip On Macos - Pi My Life Up](https://cdn.pimylifeup.com/wp-content/uploads/2023/04/Install-pip-macOS.jpg)
![python - Docker: cant install Tensorflow and numpy - Stack Overflow Python - Docker: Cant Install Tensorflow And Numpy - Stack Overflow](https://i.stack.imgur.com/N9OcD.png)
![2 What is pip? | How to install pip3 on macOS | pip commands - YouTube 2 What Is Pip? | How To Install Pip3 On Macos | Pip Commands - Youtube](https://i.ytimg.com/vi/4KoUJWnTlKY/maxresdefault.jpg)
![Fixed] ModuleNotFoundError: No module named 'cached-property' – Be on the Right Side of Change Fixed] Modulenotfounderror: No Module Named 'Cached-Property' – Be On The Right Side Of Change](https://i.ytimg.com/vi/20sWJ2sImVo/maxresdefault.jpg)
![pip Pip](https://f4n3x6c5.stackpathcdn.com/article/pip-commands-every-python-developer-should-know/Images/pip%20Commands%20Every%20Python%20Developer%20Should%20Know5.png)
![How to install pip on the Raspberry Pi - Pi My Life Up How To Install Pip On The Raspberry Pi - Pi My Life Up](https://cdn.pimylifeup.com/wp-content/uploads/2022/09/Raspberry-Pi-install-python-pip-thumbnail.jpg)
![how to install pillow [PIL] in window 7/8/10 || pip - YouTube How To Install Pillow [Pil] In Window 7/8/10 || Pip - Youtube](https://i.ytimg.com/vi/DJtqnF3sy9E/maxresdefault.jpg)
![pip Pip](https://f4n3x6c5.stackpathcdn.com/article/pip-commands-every-python-developer-should-know/Images/pip%20Commands%20Every%20Python%20Developer%20Should%20Know3.png)
![PIP Commands – A Simple Guide – Be on the Right Side of Change Pip Commands – A Simple Guide – Be On The Right Side Of Change](https://i.ytimg.com/vi/vtGZNLMi4yU/maxresdefault.jpg)
![Installing Python Packages In Your Docker Container — RIS Services User Manual documentation Installing Python Packages In Your Docker Container — Ris Services User Manual Documentation](https://i.ytimg.com/vi/w1B9mPS8ZsA/maxresdefault.jpg)
![Can I force pip to reinstall the current version? - Intellipaat Community Can I Force Pip To Reinstall The Current Version? - Intellipaat Community](https://i.ytimg.com/vi/Ue2fw1RooHA/sddefault.jpg)
![How to install wxpython on Windows 10 - YouTube How To Install Wxpython On Windows 10 - Youtube](https://i.ytimg.com/vi/OvhSIjYIsDo/maxresdefault.jpg)
![How to install, download and build Python wheels - ActiveState How To Install, Download And Build Python Wheels - Activestate](https://cdn.activestate.com/wp-content/uploads/2019/12/Python-3.9-Web-GUI-Screenshot.png)
![How to install packages from pip without using the cache folder | sebhastian How To Install Packages From Pip Without Using The Cache Folder | Sebhastian](https://sebhastian.com/img/nathan-sebhastian.png)
Article link: pip install no cache.
Learn more about the topic pip install no cache.
- How to install packages from pip without using the cache folder
- What is pip’s `–no-cache-dir` good for? – python – Stack Overflow
- The purpose of pip’s `–no-cache-dir` option – bobbyhadz
- Caching – pip documentation v23.1.2
- Pip Clear Cache – Linux Hint
- optimize size and time using –no-cache-dir – OpenDev
- Removing pip’s cache? – Intellipaat Community
- Removing pip’s cache? – JanBask Training
- Best practices – Docker for Data Scientists
- pip install –no-cache-dir -e – GitHub Gist
See more: nhanvietluanvan.com/luat-hoc