1. I drink 10-liter water every day.

2. I drink 10-liter of water every day.
3. I drink a 10-liter bottle of water every day.
4. I drink 10-liter bottles of water every day.
5. I drink two 10-liter bottles of water every day.

(Are they all grammatical? Which one is incorrect?)

1, 2, 4 -- not correct

2 would be correct if you wrote this:
I drink 10 liters of water every day.

3 and 5 are perfect.

Out of the five sentences, all of them except the second sentence are grammatically correct. Here's an explanation of each sentence:

1. "I drink 10-liter water every day."
This sentence is grammatically correct. However, it would be more accurate to say "I drink 10 liters of water every day." Using the plural form "liters" and adding the preposition "of" makes it clearer that you are referring to a quantity of water.

2. "I drink 10-liter of water every day."
This sentence is not grammatically correct. The correct form would be "I drink 10 liters of water every day." The usage of the hyphen and the word "of" are missing, which creates an error.

3. "I drink a 10-liter bottle of water every day."
This sentence is grammatically correct. It specifies that you drink water from a single 10-liter bottle every day.

4. "I drink 10-liter bottles of water every day."
This sentence is grammatically correct. It suggests that you consume multiple 10-liter bottles of water each day.

5. "I drink two 10-liter bottles of water every day."
This sentence is grammatically correct. It indicates that you consume two 10-liter bottles of water daily.