0:00
рдмрд╣реБрдд рд╕рд╛рд░реЗ рдбреЗрд╡рд▓реЛрдкрд░реНрд╕ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдпреЗ environment variables рдХреНрдпрд╛ рд╣реЛрддреЗ рд╣реИя┐╜
0:03
рдХреЛрдИ рдЕрдЧрд░ environment variables рдХреЛ use рдХрд░рддрд╛ рд╣реИ рддреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ developers рдХрд╣рддреЗ рд╣реИрдВ рдпрд╛рд░ рдпреЗ рдХреНрдпрд╛ use рдХрд░ рд░рд╣реЗ рд╣реЛ, рдЪреАрдЬрд╝реЛрдВ рдХреЛ complex рдХреНрдпреЛрдВ рдХрд░ рд░рд╣реЗ рд╣я┐╜
0:08
simply рдПрдХ string рдХреЗ рдЕрдВрджрд░ variable рдХреЛ рд░рдЦ рджреЛрдирд╛ рд▓реЗрдХрд┐рди рдЖрдЬ рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ environment variables рдХрд╛ use рдирд╛ рдХрд░рдия┐╜
0:15
рдЖрдкрдХреА application рдХреЛ рдХреИрд╕реЗ hack рдХрд░рд╡рд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ environment variables рдХреЛ рдЖрдкрдХреЛ рдХреНрдпреЛрдВ use рдХрд░рдирд╛ рдЪрд╛рд╣рд┐я┐╜
0:20
let's get started рд╕рдмрд╕реЗ рдмрдврд╝рд╛рддрд╛ рд╣реВрдБ рдХрд┐ environment variable рд╣реЛрддрд╛ рдХреНрдпрд╛ рд╣реИ рдПрдХ environment рдХрд╛ variable
0:25
рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреЗ computer рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рд╡реЛ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ environment рд╣реИ рдЗрд╕рдореЗрдВ рдХреБрдЫ variables рд╣реИя┐╜
0:30
рдЬреЛ рдореИрдВ рдЗрд╕ рдкреВрд░реЗ рдХрдкреНрдпреВрдЯрд░ рдХреЗ рдЕрдВрджрд░ рдЧреНрд▓реЛрдмрд▓реА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧ рдмрд┐рдВрдбреЛрд╕ рдореЗрдВ рд╣реИрдВ рддреЛ рдЖрдк рд▓реЛрдЧ environment variables рд╕рд░реНрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИя┐╜
0:36
рдФрд░ рдЬреИрд╕реЗ рд╣реИрдВ environment variables рд╕рд░реНрдЪ рдХрд░реЗрдВрдЧреЗ рдЖрдкрдХреЛ рдХреБрдЫ environment variables рджреЗрдЦрдиреЗ рдХреЛ рдорд┐рд▓реЗрдВрдЧя┐╜
0:40
рдПрдХ рдмрд╣реБрддреА common environment variable рд╣реЛрддрд╛ рд╣реИ рдкрд╛рдд рд╡реЗрд░рд┐рдмрд▓ рдЬреЛ рдХрд┐ рдЖрдкрдХреЗ operating system рдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХя┐╜
0:45
рдЕрдЧрд░ рдХреЛрдИ рднреА binary рдХрд╛ рдирд╛рдо type рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рддреЛ рдХрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЙрд╕рдХреЗ path рдХреЛ locate рдХрд░ рд░рд╣рд╛ рд╣я┐╜
0:50
рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧ Unix based system рдореЗрдВ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ MacBook рдпреВрдЬрд╝ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдлрд┐я┐╜
0:54
1, 2 рдЕрдЧрд░ рдпреВрдЬрд╝ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЖрдк ENV command issue рдХрд░ рд╕рдХрддреЗ рд╣реИя┐╜
0:58
рдФрд░ рдЖрдкрдХреЗ рд╕рд╛рдордиреЗ рд╕рд╛рд░реЗ environment variables рдЖ рдЬрд╛рдПрдВрдЧреЗ рдЖрдк рд▓реЛрдЧ export command рдХрд╛ рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ environment variables
1:03
рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ terminal рдХреЗ рдЕрдВрджрд░ рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдБ рдХрд┐ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐я┐╜
1:08
рдХрднреА-рдХрднреА рд╣рдо рд▓реЛрдЧ application рдХреЗ source code рдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде share рдХрд░рддреЗ рд╣реИрдВ 10
1:57
application рдХреЗ рдЕрдВрджрд░ load рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЙрд╕рдХреЗ рдЕрдВрджрд░ access token рднреА рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рдпрд╣ approach рдпрд╣рд╛рдБ рдкрд░ memory рдореЗрдВ рдереЛрдбрд╝реЗ рдмрд╣реБрдд variables рдмрд╛рд▓рддреВ hold рдХрд░реЗрдЧрд╛ рд╢рд╛рдпрдж рдЖрдкрдХреА JSON рдмрд╣реБрдд grow рдХрд░ рдЬрд╛рдП рддреЛ рдПрдХ рдмрд╣реБрдд рд╣реА safe рддрд░реАрдХрд╛ рд╣реЛрддрд╛ рд╣реИ environment variables рдХреЛ set рдХрд░рдирд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ handle рдХрд░рддрд╛ рд╣реИ рдЖрдкрдХрд╛ operating system directly рддреЛ рдЬреЛ overhead рд╣реЛрддрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдмрд╣реБрдд рдХрдо рд╣реЛрддрд╛ рд╣реИ рдЕрдЧрд░ рдЖя┐╜
2:27
рдмрдЯрдиреА рдХрд░рдиреА рдкрдбрд╝реЗрдЧреА рдХрднреА рдХрднреА рдХреБрдЫ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХреЗрдВрд╕ рдРрд╕реЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐ рдЖрдкрдХреЗ рдорд▓реНрдЯреАрдмрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдпреВрдЬ рдХрд░рддя┐╜
2:31
рд╣реИрдВ рдРрд╕реЗ рдореЗрдВ рдПрдХ рдХреЙрдиреНрдлрд┐рдХреНрдЯ рдЬреЛ рдЬреИрд╕реЗ рдХреЛ рд░реАрдб рдХрд░рд╛рдирд╛ рдЖрдкрдХреЛ рдХреЗ рд▓рд┐рдП рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЛя┐╜
2:37
рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╣реИрдВ рдЕрдм рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдХреИрд╕реЗ рдЗрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рд╡реЗрд░рд┐рдмрд▓реНрд╕ рдХрд╛ рдпреВрдЬрд╝ рд▓рд╛рдЦрдирд╛ рдЖрдкрдХреА рдЕрдкреНрд▓реАрдХреЗрд╢рди рдХя┐╜
2:42
рд╣реИрдб рдХрд░рд╡рд╛ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдЯ рджреЗ рд╕реЗ рдЖрдкрдиреЗ рдЕрдкрдирд╛ рдПрдХ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХреЗрдВрдЯ рдбрд╛рд▓ рджрд┐рдпрд╛ рдпрд╛ рдлрд┐рд░ рд▓реЗрдЯ рджреЗ рд╕реЗ рдЖрдкрдиреЗ рдПрдХ рдРрд╕рд╛ рдЯреЛрдХреЗрдВрдЯ рдбрд╛рд▓ рджрд┐рдпя┐╜
2:47
рдЬреЛ рдХрд┐ рдЖрдкрдХреЗ inbox рд╕реЗ рдХрд┐рд╕реА рднреА mail рдХреЛ read рдХрд░ рд╕рдХрддрд╛ рд╣я┐╜
2:51
рддреЛ рдЖрдкрдиреЗ рдЕрдЧрд░ рдПрдХ рдРрд╕рд╛ access token рдбрд╛рд▓ рджрд┐рдпрд╛ рдЕрдкрдиреЗ code base рдореЗрдВ рдФрд░ рдЖрдкрдиреЗ рд╡реЛ code base рдлрд┐рд░ рдХрд┐рд╕реА рдФрд░ рдХреЛ рджрд┐рдпрд╛ рд╣я┐╜
2:57
private application open source access token user access token
3:30
рд▓реЗрдХрд┐рди рдЧрд▓рддреА рд╕реЗ рд╢рд┐рдк рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдЬреИрд╕реЗ рдХрд┐ рдЕрдЧрд░ рдЖрдк config.json рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рд╣я┐╜
3:33
рддреЛ рд╢рд╛рдпрдж рдЖрдк рд▓реЛрдЧ рдЧреЗрдЯрдм рдХреА рддрд░реВ рдЙрд╕рдХреЛ рдкреБрд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЧрд▓рддреА рд╕реЗ рдХреЛрдИ рдФрд░ рджреЗрдЦ рд▓реЗрдВ рдЙрд╕рдХя┐╜
3:37
рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдЬреЛ environment variables рд╣реИрдВ рд╡реЛ safe рд╣реЛрддреЗ рд╣реИрдВ рддреЛ environment variables рдХрд╛ рдЕрдЧрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдия┐╜
3:42
рдЖрдк рд▓реЛрдЧ рджрд┐рдЦрд╛рди рдореЗрдВ рд░рдЦреЛрдЧреЗ рддреЛ рд╣рдореЗрд╢рд╛ рдЖрдкрдХреА рдЬреЛ рдЪреАрдЬ рд╣реИ рд╡рд╣ рд╕реЗрдл рд░рд╣реЗрдВрдЧреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдлреНрд░реЗрдВрдб рд╡рд░реНрдХреНрд╕ рдЬреИрд╕реЗ рдХя┐╜
3:50
рдФрд░ рднреА рдмрд╣реБрдд рд╕рд╛рд░реЗ рдлреНрд░реЗрдВрдб рд╡рд░реНрдХреНрд╕ рд╣реИ рдпрд╣ рдЖрдкрдХреЛ рдЗрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рд╡реЗрд░рд┐рдмрд▓реНрд╕ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдХреЗ рджреЗрддреЗ рд╣реИрдВ рдЖрдкрдХя┐╜
3:56
application рдореЗрдВ рдкреНрд░реЛрд╡рд╛рдЗрдб рдХрд░рддреЗ рд╣реИрдВ рдЖрдк рдбрд┐рд░реЗрдХреНрдЯреА рд╡рд╛рдпрд░реНрдореЗрдВрдЯ рд╡реЗрд░рд┐рдмрд▓реНрд╕ рдпреВрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдлрд┐рд░ рдЬрдм рдЖрдк рдЗрдирдХя┐╜
4:00
рдХреНрд▓рд╛рдЙрдб рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдХрд░реЗрдВрдЧреЗ рдЖрдк рд╡рд╣рд╛рдБ рдкрд░ рд╕рд┐рдВрдкрд▓реА рд╡рд╛рдпрд░реНрдореЗрдВрдЯ рд╡реЗрд░рд┐рдмрд▓реНрд╕ рд╕реЗрдЯ рдХрд░ рджреЛ рдФрд░ рдЖрдкрдХрд╛ рдХрд╛рдо рд╣реЛ рдЬрд╛рдПрдЧя┐╜
4:05
рдлрд┐рд░ рдЖрдк рд▓реЛрдЧ рдЪрд╛рд╣реЗ рдбреЗрдл рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдХрд░реЗрдВ рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдХрд░реЗрдВ рдлрд┐рд░ рдХреНрдпреЛрдВ рдЖрдк рдкреНрд░реЛрдбрдХреНрд╢рди рдбрд┐рдкреНрд▓реЙрдпрдореЗрдВрдЯ рдирд╣реАрдВ рдХрд░реЗя┐╜
4:11
рдЗрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рд╡реЗрд░рд┐рдмрд▓реНрд╕ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреА рд╕рд╛рд░реА рд╕реАрдХреНрд░реЗрдЯ рдЪреАрдЬреЛрдВ рдХреЛ рд╕реЗрд╡ рд░рдЦреЗрдЧрд╛ рдлреЙрд░ рдПрдХреНрд╕рд╛рдкрд▓ рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХя┐╜
4:17
рдкреЛрд░реНрдЯ рд╡реЗ рдбреЙрдЯ рдХреЙрдо рдХрд╛ рдПрдЧреНрдЬрд╛рдВрдкрд▓ рджреЗрддрд╛ рд╣реВрдВ рдпрд╣ рд╡рд╣ рдИрдПрдХреЙрд░реНрдореЗрд╕ рдирдкрд╕рд╛рдЗрдЯ рд╣реИ рдЬреЛ рдХрд┐ рд╣рдордиреЗ рдЕрдкрдиреЗ рдиреЗрдХреНрд╕ рдпрд╣ рдХреЗ рдкреЛрд╕реНрдЯ рдореЗрдВ рдмрдирд╛рдИ рд╣я┐╜
4:24
рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕реАрдХреНрд░рд┐рдЯ рдЪреАрдЬрд╝реЗрдВ рдпреВрдЬ рд╣реЛрддреА рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рд░рд┐рдХреНрдпрд╛рдкреНрдЪрд╛ рдХрд╛ рд╕реАрдХреНрд░рд┐я┐╜
4:27
рдЬреИрд╕реЗ рдХрд┐ рдкреЗрдЯреАрдо рдХрд╛ рд╕реАрдХреНрд░рд┐рдЯ рдФрд░ рдЙрд╕реЗ рдХреЗ рд╕рд╛рде рд╕рд╛рде рдЗрд╕рдореЗрдВ рдореИя┐╜
4:31
cloud development development staging production deployment environment variables safe
4:44
deployment рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╕рд┐рд░реНрдл рд╡рд╣реАрдВ рддрдХ рдЖрдкрдХреА рдЬреЛ keys рд╡рдЧреИрд░рд╣ рд╣реЛрддреА рд╣реИрдВ рдЬрд╛рддреА рд╣реИ
4:49
user рдХреЗ рдкрд╛рд╕ рдЕрдЧрд░ рдЧрд▓рддреА рд╕реЗ user рдиреЗ source code рджреЗрдЦ рд▓рд┐рдпрд╛, рд▓реЗрдЯреЗрд╕реНрдЯ рд╣реИ рдЖрдкрдХреА рдЬреЛ source code files рд╣реИрдВ, рд╡реЛ as a static file
4:56
user рдХреЛ рджреЗрдЦ рдЧрдИ, рддреЛ рд╡рд╣рд╛рдБ рдкрд░ рд╡реЛ рд╕рд┐рд░реНрдл environment variable рдХрд╛ рдирд╛рдо рджреЗрдЦреЗрдЧрд╛
4:59
рдЙрд╕рдХреА value рдирд╣реАрдВ рджреЗрдЦреЗрдЧрд╛ for example рдЖрдкрдХреЗ code рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реБрдЖ рд╣я┐╜
5:03
a is equal to paytm secret рдЕрдЧрд░ рдЖрдкрдиреЗ actual рдореЗрдВ рд╡рд╛рдкрд░ paytm secret
5:07
рдбрд╛рд▓ рджрд┐рдпрд╛ рддреЛ рд╢рд╛рдпрдж рдЕрдЧрд░ рд╡реЛ file рдЖрдкрдХреА leak рд╣реЛ рдЬрд╛рддреА рд╣реИ users рдореЗрдВ рдЖрдкрдХя┐╜
5:11
рддреЛ рдЖрдкрдХреЗ users рдЖрдкрдХрд╛ paytm secret рджреЗрдЦ рд▓реЗрдВ рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡рд╣рд╛рдБ рдкрд░ process.env.paytm
5:18
underscore secret рд▓рд┐рдЦрд╛ рд╣реБрдЖ рд╣реИ рддреЛ рд╢рд╛рдпрдж рдЖрдк рд▓реЛрдЧреЛрдВ рдХреА file leak рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рднреА рд╡реЛ key leak рдирд╣реАрдВ рд╣реЛрдЧя┐╜
5:25
рд╕рд┐рд░реНрдл users рдХреЛ рд╡реЛ capital letters рдореЗрдВ pdm underscore secret key рд╣реИ рдпрд╛ рдлрд┐рд░ pdm underscore key underscore secret
5:30
рдЬреЛ рднреА рдирд╛рдо рд╣реИ рдЖрдкрдХреЗ environment variables рдХрд╛ рд╡реЛ рджреЗрдЦрдиреЗ рдХреЛ рдорд┐рд▓реЗрдЧрд╛ рддреЛ I hope рдХрд┐ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ idea рд▓рдЧ рдЧрдпя┐╜
5:35
рдХрд┐ рдпреЗ environment variables рдХреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдХрд╛ purpose рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ
5:39
рдХреБрд▓ рдорд┐рд▓рд╛ рдХрд░ operating system layer рдореЗрдВ рд╣рдо рд░рдЦрддреЗ рд╣реИрдВ, рд╕рд╛рд░реЗ рдХреА рд╕рд╛рд░реА secret рдЪреАрдЬреЛрдВ рдХреЛ
5:43
рдФрд░ рд╡рд╣рд╛рдБ рд╕реЗ рдХреЛрдИ рднреА program рдЗрдирдХреЛ access рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЕрднреА рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдЗрддрдирд╛ рд╣реИ guys
5:48
thank you so much guys for watching this video, and I will see you next time
6:08
рдХрд░рддреЗ рд╣реИя┐╜