āĻšā§ āĻšāĻžāĻŦāĻ°! āĻāĻŽāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋāĻ° āĻ
āĻ¨ā§āĻŦāĻžāĻĻ āĻāĻĒāĻ¨āĻžāĻ° āĻĻā§āĻˇā§āĻāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖ āĻāĻ°āĻāĻŋ
āĻāĻ āĻāĻŽāĻ°āĻž āĻāĻŋāĻāĻžāĻŦā§ āĻĄāĻāĻžāĻ° āĻšā§āĻ¸ā§āĻ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻŦ, āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻŦāĻŋ āĻāĻŦāĻ āĻĒāĻžāĻ¤ā§āĻ°ā§āĻ° āĻ¸ā§āĻā§āĻ°ā§āĻ¯āĻžāĻĒ āĻĨā§āĻā§ āĻāĻ āĻ¸ā§āĻĨāĻžāĻ¨āĻāĻŋāĻā§ āĻā§āĻāĻžāĻŦā§ āĻŽā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¤āĻžāĻ āĻŦā§āĻ° āĻāĻ°āĻŦāĨ¤
āĻŽā§āĻ āĻāĻ°āĻ
āĻĄāĻāĻžāĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻā§āĻŦ āĻāĻŽ āĻ˛ā§āĻāĻ āĻāĻāĻŋāĻā§ āĻ¸āĻ¨ā§āĻĻā§āĻš āĻāĻ°ā§āĨ¤ āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¯āĻŧā§āĻ āĻŦāĻāĻ° āĻāĻā§, āĻāĻ āĻĒāĻŖā§āĻ¯āĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¯ā§āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻ¤ā§āĻ°āĻŋ, āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻŦāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻ¤ā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻĻāĻŋāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ CPU āĻāĻŦāĻ RAM āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ (āĻāĻŦāĻ āĻāĻžāĻ°ā§ āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻŦā§) āĻĄāĻāĻžāĻ° āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻĒāĻ°āĻŋāĻŦā§āĻļā§āĻ° āĻā§āĻŦāĻ¨āĻāĻā§āĻ° āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻžāĻā§ āĻ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ā§āĻ¯āĻāĻžāĻŦā§ āĻ¸āĻ°āĻ˛ āĻāĻŦāĻ āĻāĻā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻ§ā§āĻ¨āĻŋāĻ āĻā§āĻŦāĻ¨ā§āĻ° āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨āĻ¨ā§āĻĻ āĻāĻāĻāĻŋ āĻŽā§āĻ˛ā§āĻ¯ā§ āĻāĻ¸ā§āĨ¤ āĻ¯āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻžāĻ˛āĻžāĻ, āĻāĻŽāĻžāĻĻā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻāĻŦāĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻŋ āĻŦāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻŋāĻ˛ āĻāĻā§āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŋ, āĻ¤āĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻ°ā§āĻĨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻš āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ°ā§āĻĨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŋāĨ¤
āĻĄāĻāĻžāĻ° āĻāĻ¸āĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻ¤āĻāĻž āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¨ā§āĻ¯āĻŧ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻžāĻŦā§āĻ¨ āĻ¨āĻž, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻāĻāĻāĻĒā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻĒā§āĻ°ā§āĻ¤āĻŋāĻāĻ°āĻāĻžāĻŦā§ āĻ āĻŦāĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
$ docker system df
āĻāĻāĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻĄāĻāĻžāĻ°ā§āĻ° āĻĄāĻŋāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĻā§āĻāĻžāĻ¯āĻŧ:
- āĻāĻŦāĻŋ â āĻāĻŽā§āĻ āĻ°āĻŋāĻĒā§āĻāĻŋāĻāĻ°āĻŋ āĻĨā§āĻā§ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻāĻŦāĻŋāĻ° āĻŽā§āĻ āĻāĻāĻžāĻ°;
- āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° - āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻŽā§āĻ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ (āĻ āĻ°ā§āĻĨāĻžā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§āĻ° āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻ˛ā§āĻ¯āĻŧāĻžāĻ°ā§āĻ° āĻŽā§āĻ āĻāĻ˛āĻŋāĻāĻŽ);
- āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻāĻ˛āĻŋāĻāĻŽ - āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻŽāĻžāĻāĻ¨ā§āĻ āĻāĻ°āĻž āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸ā§āĻā§āĻ°ā§āĻā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ;
- āĻŦāĻŋāĻ˛ā§āĻĄ āĻā§āĻ¯āĻžāĻļā§ - āĻāĻŽā§āĻ āĻŦāĻŋāĻ˛ā§āĻĄāĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻĢāĻžāĻāĻ˛ (āĻŦāĻŋāĻ˛ā§āĻĄāĻāĻŋāĻ āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻĄāĻāĻžāĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 18.09 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§)āĨ¤
āĻāĻŽāĻŋ āĻŦāĻžāĻāĻŋ āĻ§āĻ°āĻāĻŋ āĻ¯ā§ āĻāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻĒāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻŦāĻ°ā§āĻāĻ¨āĻžāĻ° āĻĄāĻŋāĻ¸ā§āĻ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻāĻŋāĻāĻžāĻŦāĻžāĻāĻāĻā§āĻ˛āĻŋāĻā§ āĻā§āĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻāĻā§āĻ°āĻšā§ (āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋ āĻŽāĻžāĻ¸ā§ āĻāĻ āĻāĻŋāĻāĻžāĻŦāĻžāĻāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻĄāĻŧāĻž āĻĻā§āĻ¨)āĨ¤
āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻĄāĻŋāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻĒāĻ¨āĻŋ āĻšā§āĻ¸ā§āĻ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻāĻāĻŋ āĻ§āĻžāĻ°āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, /var/lib/docker āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻāĻŦāĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ āĻ˛āĻā§āĻˇāĻŖā§āĻ¯āĻŧ:
- āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ /var/lib/docker/containers/container_ID - āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ˛āĻāĻŋāĻ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻāĻžāĻ¨ā§ āĻāĻā§āĻ¨ā§āĻ āĻ˛āĻāĻā§āĻ˛āĻŋ JSON āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ āĻ¤ā§āĻ¯āĻ§āĻŋāĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ˛āĻ, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻ˛āĻ āĻ¯ā§āĻā§āĻ˛āĻŋ āĻā§āĻ āĻĒāĻĄāĻŧā§ āĻ¨āĻž āĻŦāĻž āĻ āĻ¨ā§āĻ¯āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°ā§ āĻ¨āĻž, āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻĄāĻŋāĻ¸ā§āĻ āĻĒā§āĻ°ā§āĻŖ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
- /var/lib/docker/overlay2 āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻĨāĻžāĻā§ (āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ Linux āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ā§ āĻāĻāĻžāĻ°āĻ˛ā§2 āĻĒāĻāĻ¨ā§āĻĻā§āĻ° āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ°)āĨ¤ āĻ¯āĻĻāĻŋ āĻ§āĻžāĻ°āĻāĻāĻŋ āĻ¤āĻžāĻ° āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĄā§āĻāĻž āĻ¸āĻā§āĻāĻ¯āĻŧ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻŋ āĻ¯āĻžāĻ° āĻāĻĒāĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻĄāĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻāĻā§, āĻ¯āĻž āĻāĻāĻ¨āĻ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻŦāĻž āĻāĻŦāĻŋ āĻ¤ā§āĻ°āĻŋāĻ¤ā§ āĻāĻĄāĻŧāĻŋāĻ¤ āĻāĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻāĻ° āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻāĻ°āĻāĻŽ āĻšāĻŦā§:
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 0 0 0B 0B
Containers 0 0 0B 0B
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻāĻ¸ā§āĻ¨ āĻāĻŋāĻā§ āĻ§āĻžāĻ°āĻ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, NGINX:
$ docker container run --name www -d -p 8000:80 nginx:1.16
āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻāĻŋ āĻšāĻŦā§:
- āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ 126 MB āĻĻāĻāĻ˛ āĻāĻ°ā§, āĻāĻāĻŋ āĻāĻāĻ NGINX āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻāĻŋ;
- āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻāĻāĻāĻŋ āĻšāĻžāĻ¸ā§āĻ¯āĻāĻ° 2 āĻŦāĻžāĻāĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 1 1 126M 0B (0%)
Containers 1 1 2B 0B (0%)
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻāĻĒāĻ¸āĻāĻšāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻāĻžāĻ° āĻāĻ°ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻ¨āĻ āĻāĻŽāĻ¨ āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨ā§āĻ āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻāĻžāĻ˛āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ 2 āĻŦāĻžāĻāĻ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ, āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻ°āĻž āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻŽāĻžāĻĻā§āĻ° NGINX āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤āĻāĻžāĻŦā§ āĻā§āĻĨāĻžāĻ 100 āĻŽā§āĻāĻžāĻŦāĻžāĻāĻ āĻĄā§āĻāĻž āĻ˛āĻŋāĻā§āĻā§ āĻāĻŦāĻ āĻ¨āĻŋāĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻ āĻŋāĻ āĻāĻ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ test.img āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻā§āĨ¤
$ docker exec -ti www
dd if=/dev/zero of=test.img bs=1024 count=0 seek=$[1024*100]
āĻšā§āĻ¸ā§āĻā§ āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻŦāĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤ āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŦ āĻ¯ā§ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° (āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°) āĻ¸ā§āĻāĻžāĻ¨ā§ 100 āĻŽā§āĻāĻžāĻŦāĻžāĻāĻ āĻĻāĻāĻ˛ āĻāĻ°ā§ āĻāĻā§āĨ¤
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 1 1 126M 0B (0%)
Containers 1 1 104.9MB 0B (0%)
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻāĻŽāĻŋ āĻŽāĻ¨ā§ āĻāĻ°āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻŋā§āĻ¸ā§ āĻŽāĻ¸ā§āĻ¤āĻŋāĻˇā§āĻ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻāĻžāĻŦāĻā§ āĻ¯ā§ āĻāĻŽāĻžāĻĻā§āĻ° test.img āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻĨāĻžāĻ¯āĻŧ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻāĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻŋ:
$ find /var/lib/docker -type f -name test.img
/var/lib/docker/overlay2/83f177...630078/merged/test.img
/var/lib/docker/overlay2/83f177...630078/diff/test.img
āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§ āĻ¨āĻž āĻāĻŋāĻ¯āĻŧā§, āĻāĻŽāĻ°āĻž āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¯ā§ test.img āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻāĻāĻžāĻŦā§ āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻ˛ā§āĻā§āĻ˛ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤, āĻāĻāĻžāĻ°āĻ˛ā§ā§¨ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ§āĻžāĻ°āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻŋ, āĻšā§āĻ¸ā§āĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦāĻ˛āĻŦā§ āĻ¯ā§ āĻāĻ āĻ¸ā§āĻĨāĻžāĻ¨āĻāĻŋ, āĻ¨ā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§, āĻāĻžāĻ˛āĻŋ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
# Stopping the www container
$ docker stop www
# Visualizing the impact on the disk usage
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 1 1 126M 0B (0%)
Containers 1 0 104.9MB 104.9MB (100%)
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻāĻāĻž āĻāĻŽāĻ°āĻž āĻāĻŋāĻāĻžāĻŦā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ? āĻ§āĻžāĻ°āĻāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§, āĻ¯āĻž āĻĒāĻĄāĻŧāĻ¤ā§-āĻ˛āĻŋāĻāĻ¤ā§ āĻ¸ā§āĻ¤āĻ°ā§ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ¸ā§āĻĨāĻžāĻ¨āĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§, āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋāĻā§ āĻāĻ āĻāĻžāĻāĻā§āĻ¨āĻŋāĻ¤ā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĢā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻĒāĻ¨āĻžāĻ° āĻĄāĻŋāĻ¸ā§āĻ āĻ¸āĻžāĻĢ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Deleted Containers:
5e7f8e5097ace9ef5518ebf0c6fc2062ff024efb495f11ccc89df21ec9b4dcc2
Total reclaimed space: 104.9MB
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻŽā§āĻā§ 104,9 āĻŽā§āĻāĻžāĻŦāĻžāĻāĻ āĻāĻžāĻ˛āĻŋ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻ° āĻĒā§āĻ°ā§āĻŦā§ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻāĻŦāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻāĻŦāĻ āĻŽā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻžāĻ°ā§āĻĨā§ āĻšāĻ¯āĻŧā§ āĻāĻ ā§:
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 1 0 126M 126M (100%)
Containers 0 0 0B 0B
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻāĻāĻŋ āĻ§āĻžāĻ°āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻŦāĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻā§āĻā§, āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻā§āĻļāĻ˛āĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤
āĻāĻŽāĻ°āĻž āĻāĻĒāĻ°ā§ āĻ¯ā§ āĻāĻžāĻāĻāĻžāĻ āĻ¸āĻžāĻŦāĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻāĻŋ āĻ¤āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĨāĻžāĻŽāĻžāĻ¨ā§ āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĢā§āĻ˛ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻā§āĻŦāĻ˛ āĻŦāĻ¨ā§āĻ§āĻ āĻ¨āĻ¯āĻŧ āĻŦāĻ°āĻ āĻāĻ˛āĻŽāĻžāĻ¨ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋāĻ āĻŽā§āĻāĻ¤ā§ āĻāĻžāĻ āĻ¤āĻŦā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤:
# Historical command
$ docker rm -f $(docker ps âaq)
# More recent command
$ docker container rm -f $(docker container ls -aq)
āĻ¸āĻžāĻāĻĄ āĻ¨ā§āĻ: āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ§āĻžāĻ°āĻ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ -rm āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻā§āĻ˛ā§, āĻāĻāĻŋ āĻĻāĻāĻ˛ āĻāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻžāĻ˛āĻŋ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻĄāĻŋāĻ¸ā§āĻ āĻāĻŽā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻāĻ¯āĻŧā§āĻ āĻŦāĻāĻ° āĻāĻā§, āĻāĻ¯āĻŧā§āĻāĻļ āĻŽā§āĻāĻžāĻŦāĻžāĻāĻā§āĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻāĻāĻžāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻāĻŋāĻ˛: āĻāĻāĻāĻŋ āĻāĻŦā§āĻ¨ā§āĻā§ āĻāĻŦāĻŋāĻ° āĻāĻāĻ¨ āĻāĻŋāĻ˛ 600 āĻŽā§āĻāĻžāĻŦāĻžāĻāĻ, āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻĢā§āĻ .āĻ¨ā§āĻ āĻāĻŦāĻŋāĻ° āĻāĻāĻ¨ āĻāĻ¯āĻŧā§āĻ āĻāĻŋāĻāĻžāĻŦāĻžāĻāĻāĨ¤ āĻ¸ā§āĻ āĻāĻžāĻāĻāĻžāĻ˛ā§ āĻĻāĻŋāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻŦāĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻŽā§āĻā§āĻ¤ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻā§āĻ˛ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŽāĻ¨āĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻŋāĻ˛ā§āĻā§ˇ āĻāĻ - āĻŽāĻšāĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻļāĻāĻ¸āĻž āĻšā§āĻ - āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻ¨ āĻ āĻ¨ā§āĻ āĻāĻŽ, āĻ¤āĻŦā§ āĻ¤āĻŦā§āĻ, āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻ¨āĻž āĻāĻ°āĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ā§ˇ
āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ§āĻ°āĻŖā§āĻ° āĻāĻŋāĻ¤ā§āĻ° āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻļā§āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻžāĻā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧ:
- āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§ āĻāĻŋāĻ¤ā§āĻ°, āĻ¯āĻžāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ¤ā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ - āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ "āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯" āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž;
- āĻā§āĻ˛āĻžāĻ¨ā§ āĻāĻŦāĻŋāĻā§āĻ˛āĻŋ āĻšāĻ˛ āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§ āĻāĻŦāĻŋ āĻ¯āĻž āĻāĻ˛āĻŽāĻžāĻ¨ āĻā§āĻ¨ āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž - āĻ¸ā§āĻā§āĻ˛āĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
- āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻā§āĻ˛āĻ¨ā§āĻ¤ āĻāĻŋāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
$ docker image ls -f dangling=true
REPOSITORY TAG IMAGE ID CREATED SIZE
none none 21e658fe5351 12 minutes ago 71.3MB
āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻ¤āĻžāĻĻā§āĻ° āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
$ docker image rm $(docker image ls -f dangling=true -q)
āĻāĻŽāĻ°āĻž āĻāĻžāĻāĻāĻžāĻ āĻ¸āĻžāĻŦāĻāĻŽāĻžāĻ¨ā§āĻĄāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ:
$ docker image prune
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N] y
Deleted Images:
deleted: sha256:143407a3cb7efa6e95761b8cd6cea25e3f41455be6d5e7cda
deleted: sha256:738010bda9dd34896bac9bbc77b2d60addd7738ad1a95e5cc
deleted: sha256:fa4f0194a1eb829523ecf3bad04b4a7bdce089c8361e2c347
deleted: sha256:c5041938bcb46f78bf2f2a7f0a0df0eea74c4555097cc9197
deleted: sha256:5945bb6e12888cf320828e0fd00728947104da82e3eb4452f
Total reclaimed space: 12.9kB
āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻšāĻ āĻžā§ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŦāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻ¤ā§ āĻāĻžāĻ (āĻāĻŦāĻ āĻļā§āĻ§ā§ āĻā§āĻ˛āĻ¤ā§ āĻ¨āĻ¯āĻŧ), āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ:
$ docker image rm $(docker image ls -q)
āĻāĻ˛āĻŋāĻāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĄāĻŋāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°
āĻāĻ˛āĻŋāĻāĻŽāĻā§āĻ˛āĻŋ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§āĻ° āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸āĨ¤
āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ MongoDB āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋ, āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻāĻāĻāĻŋ āĻāĻ˛āĻŋāĻāĻŽ āĻŽāĻžāĻāĻ¨ā§āĻ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻŋ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦā§āĻ¯āĻžāĻāĻāĻĒ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻŋ (āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻŋ bck.json āĻĢāĻžāĻāĻ˛ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ°āĻ¯āĻŧā§āĻā§):
# Running a mongo container
$ docker run --name db -v $PWD:/tmp -p 27017:27017 -d mongo:4.0
# Importing an existing backup (from a huge bck.json file)
$ docker exec -ti db mongoimport
--db 'test'
--collection 'demo'
--file /tmp/bck.json
--jsonArray
āĻĄā§āĻāĻž /var/lib/docker/volumes āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻšā§āĻ¸ā§āĻ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻžāĻ¤ā§āĻ°ā§āĻ° āĻĒāĻ āĻ¨-āĻĒāĻžāĻ āĻ¨ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¨āĻ¯āĻŧ āĻā§āĻ¨? āĻāĻžāĻ°āĻŖ MongoDB āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ā§, /data/db āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ (āĻ¯ā§āĻāĻžāĻ¨ā§ MongoDB āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻāĻžāĻŦā§ āĻ¤āĻžāĻ° āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§) āĻāĻāĻāĻŋ āĻāĻ˛āĻŋāĻāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻĒāĻžāĻ°ā§āĻļā§āĻŦ āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ āĻ¨ā§āĻ āĻāĻŦāĻŋ āĻ¯ā§āĻā§āĻ˛āĻŋāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻĄā§āĻāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¸ā§āĻ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻ˛āĻŋāĻāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ¯āĻāĻ¨ āĻāĻŽāĻ°āĻž MongoDB āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¯āĻĨā§āĻˇā§āĻ āĻā§āĻ˛āĻž āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ (āĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻ¤ā§) āĻ¤āĻāĻ¨ āĻāĻ˛āĻŋāĻāĻŽāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻŦā§ āĻ¨āĻžāĨ¤ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻ¤ā§ āĻĨāĻžāĻāĻŦā§ āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻā§ āĻāĻāĻ°āĻāĻŽ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻŋ:
$ docker volume rm $(docker volume ls -q)
āĻ āĻŋāĻ āĻāĻā§, āĻ āĻĨāĻŦāĻž āĻāĻŽāĻ°āĻž āĻāĻžāĻāĻāĻžāĻ āĻ¸āĻžāĻŦāĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¯āĻž āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤:
$ docker volume prune
WARNING! This will remove all local volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Deleted Volumes:
d50b6402eb75d09ec17a5f57df4ed7b520c448429f70725fc5707334e5ded4d5
8f7a16e1cf117cdfddb6a38d1f4f02b18d21a485b49037e2670753fa34d115fc
599c3dd48d529b2e105eec38537cd16dac1ae6f899a123e2a62ffac6168b2f5f
...
732e610e435c24f6acae827cd340a60ce4132387cfc512452994bc0728dd66df
9a3f39cc8bd0f9ce54dea3421193f752bda4b8846841b6d36f8ee24358a85bae
045a9b534259ec6c0318cb162b7b4fca75b553d4e86fc93faafd0e7c77c79799
c6283fe9f8d2ca105d30ecaad31868410e809aba0909b3e60d68a26e92a094da
Total reclaimed space: 25.82GB
luc@saturn:~$
āĻāĻŽā§āĻ āĻŦāĻŋāĻ˛ā§āĻĄ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻĄāĻāĻžāĻ° 18.09-āĻ, āĻŦāĻŋāĻ˛ā§āĻĄāĻāĻŋāĻ āĻā§āĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸āĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻĄā§āĻāĻž āĻ¸ā§āĻā§āĻ°ā§āĻ āĻāĻŦāĻ āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°ā§āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻāĻ āĻŦāĻŋāĻ¸ā§āĻŽāĻ¯āĻŧāĻāĻ° āĻā§āĻ˛ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŦ āĻ¨āĻž; āĻāĻŽāĻ°āĻž āĻā§āĻŦāĻ˛ āĻāĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻĢā§āĻāĻžāĻ¸ āĻāĻ°āĻŦāĨ¤
āĻ§āĻ°āĻž āĻ¯āĻžāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ Node.Js āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§:
- index.js āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ HTTP āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻ¯āĻž āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻāĻāĻŋ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ¨āĻžāĻ¯āĻŧ:
- package.json āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° Expressjs āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ HTTP āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯:
$ cat index.js
var express = require('express');
var util = require('util');
var app = express();
app.get('/', function(req, res) {
res.setHeader('Content-Type', 'text/plain');
res.end(util.format("%s - %s", new Date(), 'Got Request'));
});
app.listen(process.env.PORT || 80);
$ cat package.json
{
"name": "testnode",
"version": "0.0.1",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"dependencies": {
"express": "^4.14.0"
}
}
āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻāĻ°āĻāĻŽ āĻĻā§āĻāĻžāĻā§āĻā§:
FROM node:13-alpine
COPY package.json /app/package.json
RUN cd /app && npm install
COPY . /app/
WORKDIR /app
EXPOSE 80
CMD ["npm", "start"]
āĻāĻ¸ā§āĻ¨ āĻŦāĻŋāĻ˛ā§āĻĄāĻāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°ā§āĻ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻāĻŽā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ:
$ docker build -t app:1.0 .
āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻĄāĻŋāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋ, āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦ āĻ¯ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¸ āĻāĻŽā§āĻ (āĻ¨ā§āĻĄ:13-āĻāĻ˛ā§āĻĒāĻžāĻāĻ¨) āĻāĻŦāĻ āĻāĻžāĻ°ā§āĻā§āĻ āĻāĻŽā§āĻ (āĻ ā§āĻ¯āĻžāĻĒ:1.0) āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¨āĻŋāĻā§āĻā§:
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 2 0 109.3MB 109.3MB (100%)
Containers 0 0 0B 0B
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
āĻŦāĻŋāĻ˛ā§āĻĄāĻāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻĻā§āĻ° āĻļā§āĻ§ā§ DOCKER_BUILDKIT āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋāĻā§ 1 āĻ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§:
$ DOCKER_BUILDKIT=1 docker build -t app:2.0 .
āĻāĻŽāĻ°āĻž āĻ¯āĻĻāĻŋ āĻāĻāĻ¨ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋ, āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦ āĻ¯ā§ āĻŦāĻŋāĻ˛ā§āĻĄ āĻā§āĻ¯āĻžāĻļā§ (buid-cache) āĻāĻāĻ¨ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻĄāĻŧāĻŋāĻ¤:
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 2 0 109.3MB 109.3MB (100%)
Containers 0 0 0B 0B
Local Volumes 0 0 0B 0B
Build Cache 11 0 8.949kB 8.949kB
āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
$ docker builder prune
WARNING! This will remove all dangling build cache.
Are you sure you want to continue? [y/N] y
Deleted build cache objects:
rffq7b06h9t09xe584rn4f91e
ztexgsz949ci8mx8p5tzgdzhe
3z9jeoqbbmj3eftltawvkiayi
Total reclaimed space: 8.949kB
āĻ¸āĻŦ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§ āĻĻāĻžāĻ!
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°, āĻāĻŦāĻŋ āĻāĻŦāĻ āĻāĻ˛āĻŋāĻāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĻāĻāĻ˛āĻā§āĻ¤ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĻāĻŋāĻā§ āĻ¤āĻžāĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻžāĻāĻāĻžāĻ āĻ¸āĻžāĻŦāĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°ā§āĨ¤ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻĄāĻāĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸ā§āĻ¤āĻ°ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻ¯āĻž āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¤āĻž āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻŦā§:
$ docker system prune
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all dangling images
- all dangling build cache
Are you sure you want to continue? [y/N]
āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻāĻžāĻ°āĻŖā§ āĻāĻĒāĻ¨āĻŋ āĻĄāĻāĻžāĻ° āĻāĻžāĻ˛āĻŋāĻ¤ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻĄāĻŋāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻā§āĻ°āĻŽā§ āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ āĻā§āĻ¯āĻžāĻ¸ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com