เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดจเดฟเด™เตเด™เตพ เดŽเดชเตเดชเต‹เดดเต†เด™เตเด•เดฟเดฒเตเด‚ เด•เต‹เดกเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟเด•เดณเดฟเตฝ เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต‹? Linux เดฑเต‚เดŸเตเดŸเต เดชเตเดฐเดฟเดตเดฟเดฒเต‡เดœเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸ เด•เต‹เดกเดฟเตฝ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเดฟเดถเด•เต เดธเด‚เดญเดตเดฟเดšเตเดšเดพเตฝ, เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดตเดฟเดทเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ, เดŽเดฒเตเดฒเดพเด‚ เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒเดฒเตเดฒเต‹?

เด’เดฐเต เดฎเต†เดทเต€เดจเดฟเตฝ เดคเดจเตเดจเต† เดตเตˆเดตเดฟเดงเตเดฏเดฎเดพเตผเดจเตเดจ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเตเด•เดณเตเดŸเต† เด’เดฐเต เดฎเตเดดเตเดตเตป เด•เตเดฒเดธเตเดฑเตเดฑเดฑเตเด‚ เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเด•เดฏเต‹ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดฟ เดตเดจเตเดจเดพเตฝ เดŽเดจเตเดคเตเดšเต†เดฏเตเดฏเตเด‚? เดจเต‚เดฑเต‹ เด†เดฏเดฟเดฐเดฎเต‹ เดชเต‹เดฒเตเด‚?

เดนเตˆเดชเตเดชเตผเดตเตˆเดธเตผ เดฎเดพเดจเต‡เดœเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเตเด•เตพเด•เตเด•เต เด…เดคเตเดคเดฐเด‚ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดžเตเดžเต‡เด•เตเด•เตเด‚, เดชเด•เตเดทเต‡ เดŽเดจเตเดคเต เดตเดฟเดฒเด•เตŠเดŸเตเดคเตเดคเต? เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด†เตฝเดชเตˆเตป เดตเดฟเดคเดฐเดฃเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เด’เดฐเต LXD เด•เดฃเตเดŸเต†เดฏเตเดจเตผ Linux เดŽเดฒเตเดฒเดพเด‚ เดตเดณเดฐเต† เด•เตเดฑเดšเตเดšเต เดฎเดพเดคเตเดฐเดฎเต‡ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเตเดณเตเดณเต‚ 7.60MB RAM, เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเดจเตเดถเต‡เดทเด‚ เดฑเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเตป เดŽเดตเดฟเดŸเต†เดฏเดพเดฃเต เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจเดคเต 9.5MB! เดŽเดฒเต‹เตบ เดฎเดธเตโ€Œเด•เต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเต เดŽเด™เตเด™เดจเต† เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเต? เด’เดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเตป เดžเดพเตป เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เตเดจเตเดจเต. เดŽเตฝเดŽเด•เตเดธเตเดกเดฟเดฏเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เด•เดดเดฟเดตเตเด•เตพ - เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเดฟเดธเตเดฑเตเดฑเด‚ Linux

LXD เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพ เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด‡เดชเตเดชเต‹เตพ เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดชเตŠเดคเต เดงเดพเดฐเดฃ เดฒเดญเดฟเดšเตเดšเต, เดจเดฎเตเด•เตเด•เต เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เด•เดพเด‚, เดšเดฟเดจเตเดคเดฟเด•เตเด•เดพเด‚: เดนเต‹เดธเตเดฑเตเดฑเต เดšเต†เดฏเตโ€Œเดค เด•เต‹เดกเต เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚, เด—เตเดฐเดพเดซเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเดจเตเด‚, เดกเตˆเดจเดพเดฎเดฟเด•เต เด†เดฏเดฟ (เด‡เดจเตเดฑเดฑเดพเด•เตเดŸเต€เดตเต เด†เดฏเดฟ) เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เต UI เดตเดฟเดœเดฑเตเดฑเตเด•เตพ เดฒเดฟเด™เตเด•เต เดšเต†เดฏเตเดฏเดพเดจเตเด‚, เดŸเต†เด•เตเดธเตเดฑเตเดฑเต, เดฌเตเดฒเดพเด•เตเด•เตโ€Œเดœเดพเด•เตเด•เต, เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเด‚เด—เต เดŽเดจเตเดจเดฟเดต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เต‹เดกเต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเดจเตเดจ เด’เดฐเต เดชเตเดฒเดพเดฑเตเดฑเตโ€Œเดซเต‹เด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต†เด™เตเด•เดฟเดฒเต‹? เด’เดฐเต เด‡เดจเตเดฑเดฑเดพเด•เตเดŸเต€เดตเต เดฌเตเดฒเต‹เด—เต เดชเต‹เดฒเต† เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด‰เดฃเตเดŸเต‹? เดตเต—... เดŽเดจเดฟเด•เตเด•เต เด…เดคเต เดตเต‡เดฃเด‚! เดŽเดจเดฟเด•เตเด•เต เด…เดคเต เดตเต‡เดฃเด‚! ๐Ÿ™‚

เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเตฝ เดžเด™เตเด™เตพ เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจ เด•เดŸเตเดŸเดฟเดจเต เดคเดพเดดเต† เดจเต‹เด•เตเด•เต‚. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต โ€” เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตเดŸ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เดฟเดจเต เดชเด•เดฐเดฎเดพเดฏเดฟ เดตเดฐเตเดจเตเดจ เด…เดŸเตเดคเตเดค เดคเดฒเดฎเตเดฑ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด‡เดจเตเดฑเตผเดซเต‡เดธเต, เด•เต‚เดŸเดพเดคเต† เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต เดจเดฎเตเดชเดฟ, เดชเดพเดฃเตเดกเด•เตพ, เดฎเดพเดฑเตเดฑเตโ€Œเดชเตเดฒเต‹เดŸเตเดŸเตเดฒเดฟเดฌเต, IPyWidgets เดฎเตเด•เดณเดฟเตฝ เดฒเดฟเดธเตเดฑเตเดฑเตเดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต†เดฒเตเดฒเดพเด‚ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด…เดคเต†เดฒเตเดฒเดพเด‚ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดซเดฏเดฒเดฟเตฝ เดธเต‡เดตเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด‡เดคเต เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚ - เด’เดฐเต IPython เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเต.

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เด“เตผเดฌเดฟเดฑเตเดฑเตฝ เดŸเต‡เด•เตเด•เต เด“เดซเต เดชเตเดฒเดพเตป ^

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดฎเตเด•เดณเดฟเตฝ เดชเดฑเดžเตเดž เดชเดฆเตเดงเดคเดฟ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดŽเดณเตเดชเตเดชเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด’เดฐเต เดšเต†เดฑเดฟเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจ เดชเดฆเตเดงเดคเดฟ เดจเดฎเตเด•เตเด•เต เดฐเต‚เดชเดชเตเดชเต†เดŸเตเดคเตเดคเดพเด‚:

  • เดตเดฟเดคเดฐเดฃเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚. เด†เตฝเดชเตˆเตป Linuxเดˆ เดตเดฟเดคเดฐเดฃเด‚ เดฎเดฟเดจเดฟเดฎเดฒเดฟเดธเดคเตเดคเดฟเดจเดพเดฏเดฟ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚, เด•เต‚เดŸเดพเดคเต† เดเดฑเตเดฑเดตเตเด‚ เด…เดคเตเดฏเดพเดตเดถเตเดฏเดฎเดพเดฏ เดธเต‹เดซเตเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เดฎเดพเดคเตเดฐเดฎเต‡ เดžเด™เตเด™เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‚, เด…เดงเดฟเด•เดฎเตŠเดจเตเดจเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ.
  • เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด…เดงเดฟเด• เดตเต†เตผเดšเตเดตเตฝ เดกเดฟเดธเตเด•เต เดšเต‡เตผเดคเตเดคเต เด…เดคเดฟเดจเต เด’เดฐเต เดชเต‡เดฐเต เดจเตฝเด•เดพเด‚ - hostfs เดฑเต‚เดŸเตเดŸเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเต—เดฃเตเดŸเต เดšเต†เดฏเตเดฏเตเด•. เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเดณเตเดณเดฟเดฒเต† เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดนเต‹เดธเตเดฑเตเดฑเดฟเดฒเต† เดซเดฏเดฒเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดˆ เดกเดฟเดธเตเด•เต เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚. เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดธเตเดตเดคเดจเตเดคเตเดฐเดฎเดพเดฃเต†เดจเตเดจเต เด‡เดคเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเด‚. เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดฟเดฏเดพเตฝ, เดกเดพเดฑเตเดฑ เดนเต‹เดธเตเดฑเตเดฑเดฟเตฝ เดคเดจเตเดจเต† เดคเตเดŸเดฐเตเด‚. เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดกเดฟเดธเตเดŸเตเดฐเดฟเดฌเตเดฏเต‚เดทเดจเตเดฑเต† เดจเต‡เดฑเตเดฑเต€เดตเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเด‚เด—เต เดฎเต†เด•เตเด•เดพเดจเดฟเดธเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเต† เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด’เดฐเต‡ เดกเดพเดฑเตเดฑ เดชเด™เตเด•เดฟเดŸเตเดจเตเดจเดคเดฟเดจเตเด‚ เดˆ เดธเตเด•เต€เด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฃเต.
  • เดจเดฎเตเดฎเตพ เดฌเดพเดทเต, เดธเตเดกเต‹, เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เดŽเดจเตเดจเดฟเดต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต† เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.
  • เดจเดฎเตเด•เตเด•เต เดชเตˆเดคเตเดคเตบ, เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเต เด…เดตเดฏเตเด•เตเด•เดพเดฏเดฟ เดฌเตˆเดจเดฑเดฟ เดกเดฟเดชเตปเดกเตปเดธเดฟเด•เตพ เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเดพเด‚.
  • เดจเดฎเตเด•เตเด•เต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต, เดžเด™เตเด™เตพ เดฐเต‚เดชเด‚ เด‡เดทเตเดŸเดพเดจเตเดธเตƒเดคเดฎเดพเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเดฟเดจเดพเดฏเดฟ เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเด™เตเด™เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ, เดจเดฎเตเดฎเตพ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเดฎเดพเดฐเด‚เดญเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเต เดคเตเดŸเด™เตเด™เตเด‚. LXD เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเตเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเตเด‚ เดžเด™เตเด™เตพ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เดฟเดฒเตเดฒ, เด…เดคเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดฑเตเดฑเตŠเดฐเต เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเด‚. เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเดฟเดธเตเดฑเตเดฑเดฎเดพเดฏ เดŽเตฝเดŽเด•เตเดธเตเดกเดฟเดฏเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เด•เดดเดฟเดตเตเด•เตพ Linux.

เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเดจเตเด‚ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเตเด‚ ^

เดšเดฟเดคเตเดฐเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจ เด’เดฐเต เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฎเตเดฎเตพ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต - alpine3, เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดจเตเดณเตเดณ เดเดกเดจเตเดฑเดฟเดซเดฏเตผ - jupyterlab เด†เดตเดถเตเดฏเดฎเต†เด™เตเด•เดฟเตฝ, เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเตŠเดซเตˆเดฒเตเด•เตพ:

lxc init alpine3 jupyterlab --profile=default --profile=hddroot

เด‡เดตเดฟเดŸเต† เดžเดพเตป เด’เดฐเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเตŠเดซเตˆเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. hddroot เดฑเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเตป เด‰เดณเตเดณ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด‡เดคเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต เดธเด‚เดญเดฐเดฃ โ€‹โ€‹เด•เตเดณเด‚ เด’เดฐเต เดซเดฟเดธเดฟเด•เตเด•เตฝ HDD เดกเดฟเดธเตเด•เดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจเต:

lxc profile show hddroot

config: {}
description: ""
devices:
  root:
    path: /
    pool: hddpool
    type: disk
name: hddroot
used_by: []
lxc storage show hddpool

config:
  size: 10GB
  source: /dev/loop1
  volatile.initial_source: /dev/loop1
description: ""
name: hddpool
driver: btrfs
used_by:
- /1.0/images/ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
- /1.0/profiles/hddroot
status: Created
locations:
- none

เด‡เดคเต เดŽเดจเดฟเด•เตเด•เต HDD เดกเดฟเดธเตเด•เดฟเดฒเต† เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเตเด•เดณเดฟเตฝ เดชเดฐเต€เด•เตเดทเดฃเด‚ เดจเดŸเดคเตเดคเดพเดจเตเด‚ SSD เดกเดฟเดธเตเด•เดฟเดฒเต† เดฑเดฟเดธเต‹เดดเตโ€Œเดธเตเด•เตพ เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเดจเตเด‚ เด…เดตเดธเดฐเด‚ เดจเตฝเด•เตเดจเตเดจเต, เด…เดคเตเด‚ เดŽเดจเตเดฑเต† เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเตเดฃเตเดŸเต :) เด‡เดคเดฟเดจเดพเดฏเดฟ เดžเดพเตป เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเตŠเดซเตˆเตฝ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต. ssdroot.

เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเตเด•เดดเดฟเดžเตเดžเดพเตฝ, เด…เดคเต เด…เดตเดธเตเดฅเดฏเดฟเดฒเดพเดฃเต STOPPED, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเดฎเตพ เด…เดคเดฟเตฝ init เดธเดฟเดธเตเดฑเตเดฑเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดšเตเดšเต เด…เดคเต เด†เดฐเด‚เดญเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต:

lxc start jupyterlab

เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต LXD-เดฏเดฟเดฒเต† เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพ เดฒเดฟเดธเตเดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเด‚. -c เดเดคเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต cเดธเตเด•เตเดฐเต€เดจเดฟเตฝ olumns เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚:

lxc list -c ns4b
+------------+---------+-------------------+--------------+
|    NAME    |  STATE  |       IPV4        | STORAGE POOL |
+------------+---------+-------------------+--------------+
| jupyterlab | RUNNING | 10.0.5.198 (eth0) | hddpool      |
+------------+---------+-------------------+--------------+

เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดžเด™เตเด™เตพ เด’เดฐเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเตŠเดซเตˆเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดคเดฟเดจเดพเตฝ เดเดชเดฟ เดตเดฟเดฒเดพเดธเด‚ เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏเดฟ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต. default เด‡เดคเต เดฎเตเดฎเตเดชเต เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเตเดจเตเดจเต เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเดฟเดธเตเดฑเตเดฑเดฎเดพเดฏ เดŽเตฝเดŽเด•เตเดธเตเดกเดฟเดฏเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เด•เดดเดฟเดตเตเด•เตพ Linux.

เดจเดฟเดฒเดตเดฟเดฒเต† เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณเดคเตเดชเต‹เดฒเต† เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเตŠเดซเตˆเตฝ เดคเดฒเดคเตเดคเดฟเดฒเดฒเตเดฒ, เดฎเดฑเดฟเดšเตเดšเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดคเดฒเดคเตเดคเดฟเตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดธเตƒเดทเตเดŸเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเต เดˆ เดเดชเดฟ เดตเดฟเดฒเดพเดธเด‚ เด•เต‚เดŸเตเดคเตฝ เด…เดตเดฟเดธเตเดฎเดฐเดฃเต€เดฏเดฎเดพเดฏ เด’เดจเตเดจเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเด‚. เด‡เดคเต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ; เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดพเด‚.

เด’เดฐเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต eth0 เด…เดคเต เดจเดฎเตเดฎเตพ เด’เดฐเต เดธเตเดตเดฟเดšเตเดšเดฟเดฒเต‡เด•เตเด•เต (เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดฌเตเดฐเดฟเดกเตเดœเต) เดฒเดฟเด™เตเด•เต เดšเต†เดฏเตเดฏเตเดจเตเดจเต. lxdbr0 เด‡เดคเดฟเตฝ เดฎเตเตป เดฒเต‡เด–เดจเด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดžเด™เตเด™เตพ NAT เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดฟ, เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดจเต เด‡เดชเตเดชเต‹เตพ เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เด†เด•เตเดธเดธเต เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚, เด•เต‚เดŸเดพเดคเต† เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเต เด’เดฐเต เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดฟเด•เต IP เดตเดฟเดฒเดพเดธเดตเตเด‚ เดžเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต - 10.0.5.5:

lxc config device add jupyterlab eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5

เด‰เดชเด•เดฐเดฃเด‚ เดšเต‡เตผเดคเตเดค เดถเต‡เดทเด‚, เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดฃเด‚:

lxc restart jupyterlab

เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดจเดฟเดฒ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต:

lxc list -c ns4b
+------------+---------+------------------+--------------+
|    NAME    |  STATE  |       IPV4       | STORAGE POOL |
+------------+---------+------------------+--------------+
| jupyterlab | RUNNING | 10.0.5.5 (eth0)  | hddpool      |
+------------+---------+------------------+--------------+

เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเต‹เดซเตเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต ^

เดžเด™เตเด™เดณเตเดŸเต† เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดธเต‹เดซเตเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต:

เดชเดพเด•เตเด•เต‡เดœเต
เดตเดฟเดตเดฐเดฃเด‚

เดฌเดพเดทเต
เด—เตเดจเต เดฌเต‹เตบ เดŽเด—เต†เดฏเตเตป เดทเต†เตฝ

เดฌเดพเดทเต-เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เตฝ
เดฌเดพเดทเต เดทเต†เดฒเตเดฒเดฟเดจเตเดณเตเดณ เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดšเต†เดฏเตเดฏเดพเดตเตเดจเตเดจ เดชเต‚เตผเดคเตเดคเต€เด•เดฐเดฃเด‚

เดธเตเดกเต‹
เดšเดฟเดฒ เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เตพเด•เตเด•เต เดฑเต‚เดŸเตเดŸเต เด†เดฏเดฟ เดšเดฟเดฒ เด•เดฎเดพเตปเดกเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เดจเตฝเด•เตเด•.

เดจเดฟเดดเตฝ
เดทเดพเดกเต‹ เดซเดฏเดฒเตเด•เตพเด•เตเด•เตเด‚ PAM-เดจเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเดณเตเดณ เดชเดพเดธเตโ€Œเดตเต‡เดกเต, เด…เด•เตเด•เต—เดฃเตเดŸเต เดฎเดพเดจเต‡เดœเตโ€Œเดฎเต†เดจเตเดฑเต เดŸเต‚เตพ เดธเตเดฏเต‚เดŸเตเดŸเต.

เดŸเดฟเดŽเดธเตเดกเดพเดฑเตเดฑ
เดธเดฎเดฏ เดฎเต‡เด–เดฒ, เดชเด•เตฝ เดตเต†เดณเดฟเดšเตเดš เดธเด‚เดฐเด•เตเดทเดฃ เดธเดฎเดฏ เดกเดพเดฑเตเดฑ เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ

เดจเดพเดจเต‹
เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฒเตเด•เดณเตเดณเตเดณ เดชเดฟเด•เตเด•เต‹ เดŽเดกเดฟเดฑเตเดฑเตผ เด•เตเดฒเต‹เตบ

เด•เต‚เดŸเดพเดคเต†, เดคเดพเดดเต† เดชเดฑเดฏเตเดจเตเดจ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเตเด•เตŠเดฃเตเดŸเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดพเตป-เดชเต‡เดœเตเด•เตพ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดชเดฟเดจเตเดคเตเดฃ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚: man man-pages mdocml-apropos less

lxc exec jupyterlab -- apk add bash bash-completion sudo shadow tzdata nano

เดจเดฎเตเดฎเตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดš เด•เดฎเดพเตปเดกเตเด•เดณเตเด‚ เด•เต€เด•เดณเตเด‚ เดจเต‹เด•เตเด•เดพเด‚:

  • lxc โ€” LXD เด•เตเดฒเดฏเดจเตเดฑเดฟเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต
  • exec โ€” เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เด’เดฐเต เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต LXD เด•เตเดฒเดฏเดจเตเดฑเต เดฐเต€เดคเดฟ
  • jupyterlab โ€” เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดเดกเดจเตเดฑเดฟเดซเดฏเตผ
  • -- โ€” เด•เต€เด•เดณเต† เด•เต€เด•เดณเดพเดฏเดฟ เดตเตเดฏเดพเด–เตเดฏเดพเดจเดฟเด•เตเด•เดฐเตเดคเต†เดจเตเดจเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด•เต€ lxc เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดฎเตเดดเตเดตเตป เดธเตเดŸเตเดฐเดฟเด‚เด—เตเด‚ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดฒเต‡เด•เตเด•เต เด•เตˆเดฎเดพเดฑเตเด•.
  • apk โ€” เด†เตฝเดชเตˆเตป เดกเดฟเดธเตเดŸเตเดฐเดฟเดฌเตเดฏเต‚เดทเตป เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ Linux
  • add โ€” เด•เดฎเดพเตปเดกเดฟเดจเต เดถเต‡เดทเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจ เด’เดฐเต เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ เดฐเต€เดคเดฟ.

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฎเตเดฎเตพ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เด’เดฐเต เดธเดฎเดฏ เดฎเต‡เด–เดฒ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด‚. Europe/Moscow:

lxc exec jupyterlab -- cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

เดธเดฎเดฏ เดฎเต‡เด–เดฒ เดธเดœเตเดœเต€เด•เดฐเดฟเดšเตเดšเดคเดฟเดจเตเดถเต‡เดทเด‚, เดชเดพเด•เตเด•เต‡เดœเต tzdata เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เด‡เดจเดฟ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ, เด…เดคเต เดธเตเดฅเดฒเด‚ เดŽเดŸเตเด•เตเด•เตเด‚, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเด•เตเด•เต เด…เดคเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเด‚:

lxc exec jupyterlab -- apk del tzdata

เดธเดฎเดฏ เดฎเต‡เด–เดฒ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต:

lxc exec jupyterlab -- date

Wed Apr 15 10:49:56 MSK 2020

เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เดชเตเดคเดฟเดฏ เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เตพเด•เตเด•เดพเดฏเดฟ เดฌเดพเดทเต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดฎเดฏเด‚ เดฒเดพเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดนเต‹เดธเตเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต เดธเตเด•เต†เตฝ เดซเดฏเดฒเตเด•เตพ เดžเด™เตเด™เตพ เด…เดคเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเตเด‚. เด‡เดคเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เด‡เดจเตเดฑเดฑเดพเด•เตเดŸเต€เดตเต เดฎเต‹เดกเดฟเตฝ เดฌเดพเดทเต เด‡เดทเตเดŸเดพเดจเตเดธเตƒเดคเดฎเดพเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚. เดŽเดจเตเดฑเต† เดนเต‹เดธเตเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฎเดžเตเดšเดพเดฐเต‹ เด†เดฃเต. Linux เดซเดฏเดฒเตเด•เตพ เดชเด•เตผเดคเตเดคเดฟ /etc/skel/.bash_profile, /etc/skel/.bashrc, /etc/skel/.dir_colors เดคเดคเตเดตเดคเตเดคเดฟเตฝ, เด…เดต เด†เตฝเดชเตˆเดจเดฟเดจเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฃเต Linux เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด’เดฐเต เดตเดฟเดคเดฐเดฃเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚, เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเตฝ เดฌเดพเดทเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เด’เดฐเต เดชเดฟเดถเด•เต เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพ เดธเตเดตเดฏเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.

เดธเตเด•เต†เตฝ เดซเดฏเดฒเตเด•เตพ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเตเด•. เด•เต€ --create-dirs เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด†เดตเดถเตเดฏเดฎเดพเดฏ เดกเดฏเดฑเด•เตเดŸเดฑเดฟเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด‚:

lxc file push /etc/skel/.bash_profile jupyterlab/etc/skel/.bash_profile --create-dirs
lxc file push /etc/skel/.bashrc jupyterlab/etc/skel/.bashrc
lxc file push /etc/skel/.dir_colors jupyterlab/etc/skel/.dir_colors

เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดฑเต‚เดŸเตเดŸเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต, เดจเดฎเตเดฎเตพ เด‡เดชเตเดชเต‹เตพ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเดฟเดฏ เดธเตเด•เต†เตฝ เดซเดฏเดฒเตเด•เตพ เดนเต‹เด‚ เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเตเด‚:

lxc exec jupyterlab -- cp /etc/skel/.bash_profile /root/.bash_profile
lxc exec jupyterlab -- cp /etc/skel/.bashrc /root/.bashrc
lxc exec jupyterlab -- cp /etc/skel/.dir_colors /root/.dir_colors

เด†เตฝเดชเตˆเดจเดฟเตฝ Linux เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เตพเด•เตเด•เดพเดฏเดฟ เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดทเต†เตฝ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต. /bin/sh, เดžเด™เตเด™เตพ เด…เดคเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด‚ root เดฌเดพเดทเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต:

lxc exec jupyterlab -- usermod --shell=/bin/bash root

เด† root เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เด’เดฐเต เดชเดพเดธเตโ€Œเดตเต‡เดกเต เด‡เดฒเตเดฒเดพเดฏเดฟเดฐเตเดจเตเดจเต; เด…เดตเตผ เด’เดฐเต เดชเดพเดธเตโ€Œเดตเต‡เดกเต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เดฎเดพเตปเดกเต เด’เดฐเต เดชเตเดคเดฟเดฏ เดฑเดพเตปเดกเด‚ เดชเดพเดธเตโ€Œเดตเต‡เดกเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚, เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดšเตเดšเดคเดฟเดจเต เดถเต‡เดทเด‚ เด•เตบเดธเต‹เตพ เดธเตเด•เตเดฐเต€เดจเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด•เดพเดฃเตเด‚:

lxc exec jupyterlab -- /bin/bash -c "PASSWD=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 12); echo "root:$PASSWD" | chpasswd && echo "New Password: $PASSWD""

New Password: sFiXEvBswuWA

เด•เต‚เดŸเดพเดคเต†, เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดชเตเดคเดฟเดฏ เดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต† เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเด‚ - jupyter เด…เดคเดฟเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เดชเดฟเดจเตเดจเต€เดŸเต เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเด‚ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต:

lxc exec jupyterlab -- useradd --create-home --shell=/bin/bash jupyter

เดจเดฎเตเด•เตเด•เต เด…เดคเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดชเดพเดธเตโ€Œเดตเต‡เดกเต เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต เดธเดœเตเดœเดฎเดพเด•เตเด•เดพเด‚:

lxc exec jupyterlab -- /bin/bash -c "PASSWD=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 12); echo "jupyter:$PASSWD" | chpasswd && echo "New Password: $PASSWD""

New Password: ZIcbzWrF8tki

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฎเตเดฎเตพ เดฐเดฃเตเดŸเต เด•เดฎเดพเตปเดกเตเด•เตพ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด‚, เด†เดฆเตเดฏเดคเตเดคเต‡เดคเต เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด—เตเดฐเต‚เดชเตเดชเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด‚. sudo, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเต เด…เดคเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต† เดšเต‡เตผเด•เตเด•เตเด‚ jupyter:

lxc exec jupyterlab -- groupadd --system sudo
lxc exec jupyterlab -- groupmems --group sudo --add jupyter

เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดเดคเตŠเด•เตเด•เต† เด—เตเดฐเต‚เดชเตเดชเตเด•เดณเดฟเตฝ เดชเต†เดŸเตเดŸเดฏเดพเดณเดพเดฃเต†เดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚. jupyter:

lxc exec jupyterlab -- id -Gn jupyter

jupyter sudo

เดŽเดฒเตเดฒเดพเด‚ เดถเดฐเดฟเดฏเดพเดฃเต, เดจเดฎเตเด•เตเด•เต เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เด•เดพเด‚.

เด—เตเดฐเต‚เดชเตเดชเดฟเดจเตเดฑเต† เดญเดพเด—เดฎเดพเดฏ เดŽเดฒเตเดฒเดพ เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เดณเต†เดฏเตเด‚ เดจเดฎเตเด•เตเด•เต เด…เดจเตเดตเดฆเดฟเด•เตเด•เดพเด‚. sudo เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• sudoเด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•, เดŽเดตเดฟเดŸเต† sed เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเดฒเดฟเดฒเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดตเดฐเดฟ เด…เตบเด•เดฎเดจเตเดฑเต เดšเต†เดฏเตเดฏเตเด• /etc/sudoers:

lxc exec jupyterlab -- /bin/bash -c "sed --in-place -e '/^#[ t]*%sudo[ t]*ALL=(ALL)[ t]*ALL$/ s/^[# ]*//' /etc/sudoers"

เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผเดฒเดพเดฌเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต ^

เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต โ€” เด‡เดคเตŠเดฐเต เดชเตˆเดคเตเดคเตบ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดพเดฃเต, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเดฎเตพ เด†เดฆเตเดฏเด‚ เดˆ เด‡เดจเตเดฑเตผเดชเตเดฐเต†เดฑเตเดฑเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดฃเด‚. เด•เต‚เดŸเดพเดคเต†, เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดชเตˆเดคเตเดคเตบ เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เดจเดฎเตเดฎเตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต. pip, เดธเดฟเดธเตเดฑเตเดฑเด‚ เด’เดจเตเดจเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เด…เดคเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตเดŸเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚, เด…เดคเดฟเดจเดพเตฝ, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเตเด•เตŠเดฃเตเดŸเต เดจเดฎเตเดฎเตพ เด…เดคเดฟเดจเตเดณเตเดณ เดกเดฟเดชเตปเดกเตปเดธเดฟเด•เตพ เดธเตเดตเดฎเต‡เดงเดฏเดพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดฃเด‚ - python3 python3-dev gcc libc-dev zeromq-dev:

lxc exec jupyterlab -- apk add python3 python3-dev gcc libc-dev zeromq-dev

เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เดณเตเด‚ เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเดฑเตเด‚ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด• pip เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต:

lxc exec jupyterlab -- python3 -m pip install --upgrade pip setuptools wheel

เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด• เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ เดตเดดเดฟ pip:

lxc exec jupyterlab -- python3 -m pip install jupyterlab

เดŽเด•เตเดธเตเดฑเตเดฑเต†เตปเดทเดจเตเด•เตพ เดฎเตเดคเตฝ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดชเดฐเต€เด•เตเดทเดฃเดพเดคเตเดฎเด•เดฎเดพเดฃเต, เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผเดฒเดพเดฌเต เดชเดพเด•เตเด•เต‡เดœเดฟเดจเตŠเดชเตเดชเด‚ เด”เดฆเตเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดทเดฟเดชเตเดชเต เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเดฟเดฒเตเดฒ, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเดฎเตพ เด…เดคเต เดธเตเดตเดฎเต‡เดงเดฏเดพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเดฃเด‚.

เดจเดฎเตเด•เตเด•เต NodeJS เด‰เด‚ เด…เดคเดฟเดจเตเดณเตเดณ เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเดฑเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเด‚ - NPM, เด•เดพเดฐเดฃเด‚ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เด…เดคเดฟเดจเตเดฑเต† เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เด…เดต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต:

lxc exec jupyterlab -- apk add nodejs npm

เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดจเดฎเตเดฎเตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดซเดฏเดฒเตเด•เตพ, เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดฒเต‹เดžเตเดšเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเตฝ, เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเดฟเตฝ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. jupyterเด’เดฐเต เดกเดฏเดฑเด•เตเดŸเดฑเดฟ เด•เตˆเดฎเดพเดฑเดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด‚ เดฒเต‹เดžเตเดšเต เด•เดฎเดพเตปเดกเดฟเตฝ เด‡เดฒเตเดฒ เดŽเดจเตเดจเดคเดพเดฃเต เดชเตเดฐเดถเตเดจเด‚. เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดŽเตปเดตเดฏเต‹เตบเดฎเต†เดจเตเดฑเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเตเดณเตเดณเต‚, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเดฎเตพ เด…เดตเดฏเต† เดจเดฟเตผเดตเดšเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฎเตเดฎเตพ เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดŽเด•เตเดธเตเดชเต‹เตผเดŸเตเดŸเต เด•เดฎเดพเตปเดกเต เดŽเดดเตเดคเตเด‚. JUPYTERLAB_DIR เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ jupyter, เดซเดฏเตฝ เดšเต†เดฏเตเดฏเดพเตป .bashrc, เด’เดฐเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดฒเต‹เด—เดฟเตป เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เดดเต†เดฒเตเดฒเดพเด‚ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต:

lxc exec jupyterlab -- su -l jupyter -c "echo -e "nexport JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab" >> .bashrc"

เด…เดŸเตเดคเตเดค เด•เดฎเดพเตปเดกเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเตป เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด‚ - เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเตป เดฎเดพเดจเต‡เดœเตผ เด‡เตป เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต:

lxc exec jupyterlab -- su -l jupyter -c "export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab; jupyter labextension install --no-build @jupyter-widgets/jupyterlab-manager"

เด‡เดชเตเดชเต‹เตพ เด†เดฆเตเดฏ เดตเดฟเด•เตเดทเต‡เดชเดฃเดคเตเดคเดฟเดจเต เดŽเดฒเตเดฒเดพเด‚ เดคเดฏเตเดฏเดพเดฑเดพเดฃเต. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต, เดชเด•เตเดทเต‡ เดจเดฎเตเด•เตเด•เต เดšเดฟเดฒ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฏ เดŽเด•เตเดธเตเดฑเตเดฑเต†เตปเดทเดจเตเด•เดณเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚:

  • toc โ€” เด‰เดณเตเดณเดŸเด•เตเด• เดชเดŸเตเดŸเดฟเด•, เด’เดฐเต เดฒเต‡เด–เดจเดคเตเดคเดฟเดฒเต†เดฏเต‹ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เดฟเดฒเต†เดฏเต‹ เดคเดฒเด•เตเด•เต†เดŸเตเดŸเตเด•เดณเตเดŸเต† เด’เดฐเต เดชเดŸเตเดŸเดฟเด• เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต.
  • jupyterlab-horizon-theme โ€” UI เดคเต€เด‚
  • jupyterlab_neon_theme โ€” UI เดคเต€เด‚
  • jupyterlab-ubu-theme - เด’เดจเตเดจเต เด•เต‚เดŸเดฟ. เดฐเดšเดฏเดฟเดคเดพเดตเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดกเดฟเดธเตˆเตป เดคเต€เด‚ เดˆ เดฒเต‡เด–เดจเด‚ :) เดŽเดจเตเดจเดพเตฝ เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, GitHub เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเตป เด•เดพเดฃเดฟเด•เตเด•เตเด‚

เด…เดคเดฟเดจเดพเตฝ, เดˆ เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเดจเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เดฎเดพเตปเดกเตเด•เตพ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•:

lxc exec jupyterlab -- su -l jupyter -c "export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab; jupyter labextension install --no-build @jupyterlab/toc @mohirio/jupyterlab-horizon-theme @yeebc/jupyterlab_neon_theme"
lxc exec jupyterlab -- su -l jupyter -c "wget -c https://github.com/microcoder/jupyterlab-ubu-theme/archive/master.zip"
lxc exec jupyterlab -- su -l jupyter -c "unzip -q master.zip && rm master.zip"
lxc exec jupyterlab -- su -l jupyter -c "export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab; jupyter labextension install --no-build jupyterlab-ubu-theme-master"
lxc exec jupyterlab -- su -l jupyter -c "rm -r jupyterlab-ubu-theme-master"

เดŽเด•เตเดธเตเดฑเตเดฑเต†เตปเดทเดจเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดค เดถเต‡เดทเด‚, เดจเดฎเตเดฎเตพ เด…เดต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเดฃเด‚, เด•เดพเดฐเดฃเด‚ เดจเต‡เดฐเดคเตเดคเต†, เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเตป เดธเดฎเดฏเดคเตเดคเต, เดžเด™เตเด™เตพ เด•เต€ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดฐเตเดจเตเดจเต --no-build เดธเดฎเดฏเด‚ เดฒเดพเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ, เด…เดตเดฏเต†เดฒเตเดฒเดพเด‚ เด’เดฑเตเดฑเดฏเดŸเดฟเด•เตเด•เต เดธเดฎเดพเดนเดฐเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเต เดžเด™เตเด™เตพ เด•เดพเดฐเตเดฏเด™เตเด™เตพ เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเด•เตเด•เตเด‚:

lxc exec jupyterlab -- su -l jupyter -c "export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab; jupyter lab build"

เด‡เดจเดฟ เด†เดฆเตเดฏ เดฑเดฃเตเดฃเดฟเดจเดพเดฏเดฟ เดคเดพเดดเต† เดชเดฑเดฏเตเดจเตเดจ เดฐเดฃเตเดŸเต เด•เดฎเดพเตปเดกเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเตเด’เดฐเตŠเดฑเตเดฑ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต เดฒเต‹เดžเตเดšเต เดšเต†เดฏเตเดฏเดพเตป เดธเดพเดงเดฟเด•เตเด•เตเด‚, เดŽเดจเตเดจเดพเตฝ เด…เด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเตฝ, เด“เตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เดชเตเดฐเดฏเดพเดธเดฎเตเดณเตเดณ เดฒเต‹เดžเตเดšเต เด•เดฎเดพเตปเดกเต, เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดฒเต† เดฌเดพเดทเต เดตเดดเดฟ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚, เดนเต‹เดธเตเดฑเตเดฑเดฟเดฒเดฒเตเดฒ, เดšเดฐเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เดฐเต‡เด–เดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เด†เดตเดถเตเดฏเดฎเดพเดฏ เด•เดฎเดพเตปเดกเตเด•เตพ เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ :)

เด’เดฐเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดพเดฏเดฟ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เดฒเต‹เด—เดฟเตป เดšเต†เดฏเตเดฏเตเด• jupyter:

lxc exec jupyterlab -- su -l jupyter

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด• เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต† เด•เต€เด•เดณเตเด‚ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เดณเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต:

[jupyter@jupyterlab ~]$ jupyter lab --ip=0.0.0.0 --no-browser

เดจเดฟเด™เตเด™เดณเตเดŸเต† เดตเต†เดฌเต เดฌเตเดฐเต—เดธเดฑเดฟเตฝ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•. http://10.0.5.5:8888 เดคเตเดฑเด•เตเด•เตเดจเตเดจ เดชเต‡เดœเดฟเตฝ, เดจเตฝเด•เตเด• เดŸเต‡เดพเด•เตเด•เตบ เด•เตบเดธเต‹เดณเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด•เดพเดฃเตเดจเตเดจ เด†เด•เตโ€Œเดธเดธเต. เด…เดคเต เดชเด•เตผเดคเตเดคเดฟ เดชเต‡เดœเดฟเตฝ เด’เดŸเตเดŸเดฟเด•เตเด•เตเด•, เดคเตเดŸเตผเดจเตเดจเต เด•เตเดฒเดฟเด•เตเด•เตเดšเต†เดฏเตเดฏเตเด• เดฒเต‡เดพเด—เดฟเตปเดฒเต‹เด—เดฟเตป เดšเต†เดฏเตเดคเดคเดฟเดจเตเดถเต‡เดทเด‚, เดคเดพเดดเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เด•เดพเดฃเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต† เด‡เดŸเดคเตเดตเดถเดคเตเดคเตเดณเตเดณ เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเตป เดฎเต†เดจเตเดตเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•, เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเตป เดฎเดพเดจเต‡เดœเตผ เดธเดœเต€เดตเดฎเดพเด•เตเด•เตเดฎเตเดชเต‹เตพ เดฎเต‚เดจเตเดจเดพเด‚ เด•เด•เตเดทเดฟ เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเดจเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฑเต† เดธเตเดฐเด•เตเดทเดพ เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดคเด•เตพ เด…เด‚เด—เต€เด•เดฐเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต‹เดŸเต เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเด‚, เด…เดคเดฟเดจเดพเดฏเดฟ เด•เดฎเดพเตปเดกเต เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผเดฒเดพเดฌเต เดตเดฟเด•เดธเดจเด‚ เดฌเดพเดงเตเดฏเดคเดฏเตเดณเตเดณเดคเดฒเตเดฒ:

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดˆ เด‰เดฆเตเดฆเต‡เดถเตเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เดฎเตเดดเตเดตเตป เด•เดพเดฐเตเดฏเดตเตเด‚ เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตเดคเตเดคเตเด•เดฏเดพเดฃเต. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต NodeJS เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเดคเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏ เดฎเต‚เดจเตเดจเดพเด‚ เด•เด•เตเดทเดฟ เดŽเด•เตเดธเตเดฑเตเดฑเต†เตปเดทเดจเตเด•เตพ เดกเดฟเดธเตเด•เดฟเดฒเต† เดกเดพเดฑเตเดฑ เดฎเต‹เดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเดŸเดฏเดพเตป, เด•เตเดฑเดžเตเดžเดคเต, เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดจเตเดณเตเดณเดฟเตฝ เดคเตเดฑเด•เตเด•เตเดจเตเดจเดต เด’เดดเดฟเด•เต†, เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเตฝ เดตเดฏเตเด•เตเด•เตเด•. เดนเต‹เดธเตเดฑเตเดฑเดฟเดฒเต† เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเด•เดพเดฐเตเดฏ เดชเตเดฐเดฎเดพเดฃเด™เตเด™เตพ เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต. /home เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เตพเด•เตเด•เต เด‡เดคเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ, เด…เด™เตเด™เดจเต† เดšเต†เดฏเตเดคเดพเตฝ เดชเต‹เดฒเตเด‚, เดนเต‹เดธเตเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต† เดซเดฏเดฒเตเด•เดณเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเตเดฐเดคเตเดฏเต‡เด•เดพเดตเด•เดพเดถเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด•เดพเดฐเดฃเด‚ เดžเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เตบเดชเตเดฐเดฟเดตเดฟเดฒเต‡เดœเตเดกเต เดฎเต‹เดกเตเดˆ เดตเดฟเดตเดฐเด™เตเด™เดณเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดคเตเดคเดฟเตฝ, เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเดจเตเด•เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดฑเต† เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดค เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเด‚ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต.

IPython เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เตเด•เตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต (เดชเต‡เดœเตเด•เตพ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต) เด‡เดชเตเดชเต‹เตพ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เดนเต‹เด‚ เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเดฟเตฝ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚ - /home/jupyter, เดชเด•เตเดทเต‡ เดนเต‹เดธเตเดฑเตเดฑเดฟเดจเตเด‚ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเด‚ เด‡เดŸเดฏเดฟเตฝ เดกเดพเดฑเตเดฑ (เดชเด™เตเด•เดฟเดŸเตฝ) เดตเดฟเดญเดœเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดชเดฆเตเดงเดคเดฟเดฏเดฟเดŸเตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ เด•เตบเดธเต‹เดณเดฟเดฒเต‡เด•เตเด•เต เดคเดฟเดฐเดฟเด•เต† เดชเต‹เดฏเดฟ เดจเดฟเตผเดคเตเดคเตเด• เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เดนเต‹เดŸเตเดŸเตเด•เต€ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† โ€” CTRL+C เด‰เดคเตเดคเดฐเด‚ เดจเตฝเด•เดฟ y เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเดฟเดฒเต‡เด•เตเด•เต. เดคเตเดŸเตผเดจเตเดจเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เดธเด‚เดตเต‡เดฆเดจเดพเดคเตเดฎเด• เดธเต†เดทเตป เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. jupyter เด’เดฐเต เดนเต‹เดŸเตเดŸเตเด•เต€ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† CTRL+D.

เดนเต‹เดธเตเดฑเตเดฑเตเดฎเดพเดฏเดฟ เดกเดพเดฑเตเดฑ เดชเด™เตเด•เดฟเดŸเตเดจเตเดจเต ^

เดนเต‹เดธเตเดฑเตเดฑเตเดฎเดพเดฏเดฟ เดกเดพเดฑเตเดฑ เดชเด™เตเด•เดฟเดŸเดพเตป, เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเตฝ เด‡เดคเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เด‰เดชเด•เดฐเดฃเด‚ เดจเดฟเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•, เด…เดตเดฟเดŸเต† เดžเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เต€เด•เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต:

  • lxc config device add โ€” เด•เดฎเดพเตปเดกเต เด‰เดชเด•เดฐเดฃ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต
  • jupyter โ€” เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดšเต‡เตผเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดจเตเดฑเต† เดเดกเดจเตเดฑเดฟเดซเดฏเตผ
  • hostfs โ€” เด‰เดชเด•เดฐเดฃ เดเดกเดจเตเดฑเดฟเดซเดฏเตผ. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดเดคเต เดชเต‡เดฐเตเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเด‚.
  • disk โ€” เด‰เดชเด•เดฐเดฃ เดคเดฐเด‚ เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต
  • path โ€” เดˆ เด‰เดชเด•เดฐเดฃเด‚ LXD เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดฒเต† เดชเดพเดค เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต.
  • source โ€” เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเตเดฎเดพเดฏเดฟ เดชเด™เตเด•เดฟเดŸเดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เดนเต‹เดธเตเดฑเตเดฑเดฟเดฒเต† เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเดพเดคเตเดคเต, เด‰เดฑเดตเดฟเดŸเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเด•. เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฎเตเตปเด—เดฃเดจเด•เตพเด•เตเด•เดจเตเดธเดฐเดฟเดšเตเดšเต เดชเดพเดคเตเดคเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเด•.
lxc config device add jupyterlab hostfs disk path=/mnt/hostfs source=/home/dv/projects/ipython-notebooks

เด•เดพเดฑเตเดฑเดฒเต‹เด—เดฟเดจเดพเดฏเดฟ /home/dv/projects/ipython-notebooks เดจเดฟเดฒเดตเดฟเตฝ เดคเตเดฒเตเดฏเดฎเดพเดฏ UID เด‰เดณเตเดณ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เด…เดจเตเดฎเดคเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดฃเด‚ SubUID + UID, เด…เดงเตเดฏเดพเดฏเด‚ เด•เดพเดฃเตเด• เดธเตเดฐเด•เตเดท. เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดชเตเดฐเดฟเดตเดฟเดฒเต‡เดœเตเด•เตพ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดธเดฟเดธเตเดฑเตเดฑเดฎเดพเดฏ เดŽเตฝเดŽเด•เตเดธเตเดกเดฟเดฏเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เด•เดดเดฟเดตเตเด•เตพ Linux.

เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเดฑเต† เด‰เดŸเดฎ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดพเด•เตเดจเตเดจ เดนเต‹เดธเตเดฑเตเดฑเดฟเตฝ เดžเด™เตเด™เตพ เด…เดจเตเดฎเดคเดฟเด•เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเต. jupyter, เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด‚ $USER เดจเดฟเด™เตเด™เดณเตเดŸเต† เดนเต‹เดธเตเดฑเตเดฑเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต† เด—เตเดฐเต‚เดชเตเดชเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเด‚:

sudo chown 1001000:$USER /home/dv/projects/ipython-notebooks

เดนเดฒเต‡เดพ เดตเต‡เตพเดกเต! ^

เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเตฝ เด‡เดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เด•เตบเดธเต‹เตพ เดธเต†เดทเตป เดคเตเดฑเดจเตเดจเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต, เดŽเดจเตเดจเดฟเดŸเตเดŸเต เด’เดฐเต เดชเตเดคเดฟเดฏ เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดคเต เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด• --notebook-dir เดฎเต‚เดฒเตเดฏเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† /mnt/hostfs เดฎเตเตป เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฎเตเดฎเตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดš เด‰เดชเด•เดฐเดฃเดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดฒเต† เดฒเดพเดชเตเดŸเต‹เดชเตเดชเตเด•เดณเตเดŸเต† เดฑเต‚เดŸเตเดŸเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเดพเดคเดฏเดพเดฏเดฟ:

jupyter lab --ip=0.0.0.0 --no-browser --notebook-dir=/mnt/hostfs

เดคเตเดŸเตผเดจเตเดจเต เดชเต‡เดœเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด• http://10.0.5.5:8888 เดคเดพเดดเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เด•เดพเดฃเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต† เดชเต‡เดœเดฟเดฒเต† เดฌเดŸเตเดŸเดฃเดฟเตฝ เด•เตเดฒเดฟเด•เตเด•เตเดšเต†เดฏเตเดคเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เด†เดฆเตเดฏเดคเตเดคเต† เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•:

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดคเตเดŸเตผเดจเตเดจเต, เดชเต‡เดœเดฟเดฒเต† เดซเต€เตฝเดกเดฟเตฝ, เด•เตเดฒเดพเดธเดฟเด•เต เด”เดŸเตเดŸเตโ€ŒเดชเตเดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดชเตˆเดคเตเดคเตบ เด•เต‹เดกเต เดจเตฝเด•เตเด• Hello World!. เดจเดฟเด™เตเด™เตพ เดชเตเดฐเดตเต‡เดถเดฟเดšเตเดšเตเด•เดดเดฟเดžเตเดžเดพเตฝ, เด…เดฎเตผเดคเตเดคเตเด• CTRL+ENTER เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดŸเต‚เตพเดฌเดพเดฑเดฟเดฒเต† "เดชเตเดฒเต‡" เดฌเดŸเตเดŸเตบ เด…เดฎเตผเดคเตเดคเดฟ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผเดฒเดพเดฌเดฟเดจเต† เด‡เดคเต เดšเต†เดฏเตเดฏเดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•:

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดˆ เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚ เดŽเดฒเตเดฒเดพเด‚ เด‰เดชเดฏเต‹เด—เดคเตเดคเดฟเดจเต เดคเดฏเตเดฏเดพเดฑเดพเดฃเต, เดชเด•เตเดทเต‡ เดชเตˆเดคเตเดคเดฃเดฟเดจเตเดฑเต† เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เด•เดดเดฟเดตเตเด•เตพ เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด…เดงเดฟเด• เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ (เดชเต‚เตผเดฃเตเดฃ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เตพ) เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณเดคเดฒเตเดฒ. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต, เด…เดคเตเด•เตŠเดฃเตเดŸเต เดจเดฎเตเด•เตเด•เต เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เด•เดพเด‚ ๐Ÿ™‚

เดชเดฟ.เดŽเดธเต. เดฐเดธเด•เดฐเดฎเดพเดฏ เด•เดพเดฐเตเดฏเด‚, เดชเดดเดฏ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตฝ เดตเตเดฏเดพเดดเด‚ เด’เดฐเต เด•เต‹เดกเต เดจเดพเดฎเดคเตเดคเดฟเตฝ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เต เดŽเดตเดฟเดŸเต†เดฏเตเด‚ เดชเต‹เดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ, เด…เดคเต เดธเดฎเดพเดจเตเดคเดฐเดฎเดพเดฏเดฟ เดจเดฟเดฒเดจเดฟเตฝเด•เตเด•เตเดจเตเดจเต เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเตเดชเดดเดฏ เดชเดคเดฟเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเดพเตป, เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเตฝ เดชเตเดฐเดคเตเดฏเดฏเด‚ เดšเต‡เตผเดคเตเดคเต เดฒเดฟเด™เตเด•เต เดชเดฟเดจเตเดคเตเดŸเดฐเตเด•./tree, เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฎเดพเดฑเตเดฑเด‚ เดชเตเดฐเดคเตเดฏเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เดจเดŸเดคเตเดคเตเดจเตเดจเดคเต /lab, เดชเด•เตเดทเต‡ เด…เดคเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ:

  • เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เต โ€” http://10.0.5.5:8888/tree
  • เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต โ€” http://10.0.5.5:8888/lab

เดชเตˆเดคเตเดคเดฃเดฟเดจเตเดฑเต† เด•เดดเดฟเดตเตเด•เตพ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต ^

เดˆ เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ, เดจเดฎเตเดฎเตพ เดถเด•เตเดคเดฎเดพเดฏ เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด‚, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต เดจเดฎเตเดชเดฟ, เดชเดพเดฃเตเดกเด•เตพ, เดฎเดพเดฑเตเดฑเตโ€Œเดชเตเดฒเต‹เดŸเตเดŸเตเดฒเดฟเดฌเต, IPyWidgets เด†เดฐเตเดŸเต† เดœเต‹เดฒเดฟเดฏเตเดŸเต† เดซเดฒเด™เตเด™เตพ เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเตเด•เดณเดฟเตฝ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต.

เด’เดฐเต เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ เดตเดดเดฟ เดฒเดฟเดธเตเดฑเตเดฑเตเดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต pip เดจเดฎเตเดฎเตพ เด†เดฆเตเดฏเด‚ เด†เตฝเดชเตˆเดจเดฟเดฒเต† เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเดฟเดชเตปเดกเตปเดธเดฟเด•เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดฃเด‚. Linux:

  • g++ โ€” เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เดณเดฟเตฝ เดšเดฟเดฒเดคเต เดญเดพเดทเดฏเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ, เด…เดต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดธเดฟ ++ เด•เต‚เดŸเดพเดคเต† เดฑเตบเดŸเตˆเดฎเดฟเตฝ เดชเตˆเดคเตเดคเดฃเตเดฎเดพเดฏเดฟ เดฌเตˆเดจเดฑเดฟ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เดณเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.
  • freetype-dev โ€” เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดจเตเดณเตเดณ เด†เดถเตเดฐเดฟเดคเดคเตเดตเด‚ เดฎเดพเดฑเตเดฑเตโ€Œเดชเตเดฒเต‹เดŸเตเดŸเตเดฒเดฟเดฌเต

เดกเดฟเดชเตปเดกเตปเดธเดฟเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

lxc exec jupyterlab -- apk add g++ freetype-dev

เด†เตฝเดชเตˆเตป เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เด…เดตเดธเตเดฅเดฏเดฟเตฝ เด’เดฐเต เดชเตเดฐเดถเตเดจเดฎเตเดฃเตเดŸเต. Linux เดŽเดจเดฟเด•เตเด•เต NumPy เดฏเตเดŸเต† เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดฟเดฒเตเดฒ; เดŽเดจเดฟเด•เตเด•เต เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดพเดคเตเดค เด’เดฐเต เด•เด‚เดชเตˆเดฒเต‡เดทเตป เดชเดฟเดถเด•เต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต:

เดชเดฟเดถเด•เต: PEP 517 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเตเด‚ เดจเต‡เดฐเดฟเดŸเตเดŸเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเดพเดคเตเดคเดคเตเดฎเดพเดฏ เดจเดฎเตเดชเตผ เดฎเต‹เดกเดฒเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเต€เดฒเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดžเตเดžเดฟเดฒเตเดฒ.

เด…เดคเตเด•เตŠเดฃเตเดŸเต, เดˆ เดฎเตŠเดกเตเดฏเต‚เตพ เดžเด™เตเด™เตพ เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดชเดพเด•เตเด•เต‡เดœเดพเดฏเดฟ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด‚, เด…เดคเต เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•เดฟเดฏ เดชเดคเดฟเดชเตเดชเต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเด‚, เดŽเดจเตเดจเดพเตฝ เดจเดฟเดฒเดตเดฟเตฝ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฏเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด…เดฒเตเดชเด‚ เดชเดดเดฏเดคเดพเดฃเต:

lxc exec jupyterlab -- apk add py3-numpy py3-numpy-dev

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดชเดพเด•เตเด•เต‡เดœเต เดฎเดพเดจเต‡เดœเตผ เดตเดดเดฟ เดชเตˆเดคเตเดคเตบ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•. pipเดšเดฟเดฒ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดฟ เดตเดฐเตเด‚, เด…เดคเดฟเดจเต เด•เตเดฑเดšเตเดšเต เดฎเดฟเดจเดฟเดฑเตเดฑเตเด•เตพ เดŽเดŸเตเดคเตเดคเต‡เด•เตเด•เดพเด‚, เด…เดคเดฟเดจเดพเตฝ เดฆเดฏเดตเดพเดฏเดฟ เด•เตเดทเดฎเดฏเต‹เดŸเต†เดฏเดฟเดฐเดฟเด•เตเด•เตเด•. เดŽเดจเตเดฑเต† เดฎเต†เดทเต€เดจเดฟเตฝ, เด•เด‚เดชเตˆเดฒเต‡เดทเตป เดเด•เดฆเต‡เดถเด‚ 15 เดฎเดฟเดจเดฟเดฑเตเดฑเต เดŽเดŸเตเดคเตเดคเต:

lxc exec jupyterlab -- python3 -m pip install pandas ipywidgets matplotlib

เด‡เตปเดธเตเดฑเตเดฑเดฒเต‡เดทเตป เด•เดพเดทเต†เด•เตพ เดฎเดพเดฏเตโ€Œเด•เตเด•เตเดจเตเดจเต:

lxc exec jupyterlab -- rm -rf /home/*/.cache/pip/*
lxc exec jupyterlab -- rm -rf /root/.cache/pip/*

เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผเดฒเดพเดฌเดฟเตฝ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต ^

เดจเดฟเด™เตเด™เตพ เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดšเตเดšเดพเตฝ เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต, เดชเตเดคเตเดคเดพเดฏเดฟ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดค เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เดธเดœเต€เดตเดฎเดพเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เด…เดคเต เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เด•เตบเดธเต‹เตพ เดธเต†เดทเดจเดฟเตฝ, เด…เดฎเตผเดคเตเดคเตเด• CTRL+C เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดฟเดŸเดคเตเดคเต เดชเตเดฐเดตเต‡เดถเดฟเด•เตเด•เตเด• y เดจเดฟเตผเดคเตเดคเตฝ เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด• เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เด•เดฎเดพเตปเดกเต เดตเต€เดฃเตเดŸเตเด‚ เดจเตฝเด•เต‡เดฃเตเดŸเดฟเดตเดฐเดพเดคเดฟเดฐเดฟเด•เตเด•เดพเตป เด•เต€เดฌเต‹เตผเดกเดฟเดฒเต† เดฎเตเด•เดณเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด…เดฎเตเดชเดŸเดฏเดพเดณเด‚ เด…เดฎเตผเดคเตเดคเดฟ, เดคเตเดŸเตผเดจเตเดจเต Enter เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป:

jupyter lab --ip=0.0.0.0 --no-browser --notebook-dir=/mnt/hostfs

เดชเต‡เดœเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด• http://10.0.5.5:8888/lab เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฌเตเดฐเต—เดธเดฑเดฟเตฝ เดชเต‡เดœเต เดชเตเดคเตเด•เตเด•เดฟเดฏเต†เดŸเตเด•เตเด•เตเด•, เดคเตเดŸเตผเดจเตเดจเต เด’เดฐเต เดชเตเดคเดฟเดฏ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เต เดธเต†เดฒเตเดฒเดฟเตฝ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เต‹เดกเต เดจเตฝเด•เตเด•:

%matplotlib inline

from ipywidgets import interactive
import matplotlib.pyplot as plt
import numpy as np

def f(m, b):
    plt.figure(2)
    x = np.linspace(-10, 10, num=1000)
    plt.plot(x, m * x + b)
    plt.ylim(-5, 5)
    plt.show()

interactive_plot = interactive(f, m=(-2.0, 2.0), b=(-3, 3, 0.5))
output = interactive_plot.children[-1]
output.layout.height = '350px'
interactive_plot

เดคเดพเดดเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเต†เดจเตเดจเดชเต‹เดฒเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดซเดฒเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚, เด…เดตเดฟเดŸเต† IPyWidgets เดธเต‹เดดเตโ€Œเดธเต เด•เต‹เดกเตเดฎเดพเดฏเดฟ เดธเด‚เดตเต‡เดฆเดจเดพเดคเตเดฎเด•เดฎเดพเดฏเดฟ เดธเด‚เดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต UI เด˜เดŸเด•เด‚ เดชเต‡เดœเดฟเตฝ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดฎเดพเดฑเตเดฑเตโ€Œเดชเตเดฒเต‹เดŸเตเดŸเตเดฒเดฟเดฌเต เดซเด‚เด—เตเดทเตป เด—เตเดฐเดพเดซเดฟเดจเตเดฑเต† เด’เดฐเต เดšเดฟเดคเตเดฐเดฎเดพเดฏเดฟ เด•เต‹เดกเต เดซเดฒเด‚ เด”เดŸเตเดŸเตโ€ŒเดชเตเดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดจเดฟเดฐเดตเดงเดฟ เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ IPyWidgets เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเต เดŸเตเดฏเต‚เดŸเตเดŸเต‹เดฑเดฟเดฏเดฒเตเด•เดณเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเด‚. เด‡เดตเดฟเดŸเต†

เดชเดฟเดจเตเดจเต† เดŽเดจเตเดคเตเดฃเตเดŸเต? ^

เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เดตเดฐเต† เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เดŽเดดเตเดคเดฟเดฏเดคเดฟเดจเต เดจเดจเตเดจเดพเดฏเดฟ. เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เด…เดคเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป เดตเต‡เดฃเตเดŸเดฟ เด’เดฐเต เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดžเดพเตป เดฎเดจเดƒเดชเต‚เตผเดตเตเดตเด‚ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต เด•เด เดฟเดจเดพเดงเตเดตเดพเดจเดฟเด•เตพเด•เตเด•เตเดณเตเดณ เดชเตเดฐเดคเดฟเดซเดฒเด‚ เด’เดฑเตเดฑ เด•เตเดฒเดฟเด•เตเด•เดฟเตฝ ๐Ÿ™‚ เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเต เดธเตเดตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚, เด•เดพเดฐเดฃเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เดŽเด™เตเด™เดจเต†เดฏเต†เดจเตเดจเต เด…เดฑเดฟเดฏเดพเด‚, เด’เดฐเตŠเดฑเตเดฑ เดฌเดพเดทเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เด•เดฎเดพเตปเดกเตเด•เตพ เดถเต‡เด–เดฐเดฟเดšเตเดšเต ๐Ÿ™‚

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดตเดฏเตเด‚ เดšเต†เดฏเตเดฏเดพเด‚:

  • เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเต เด’เดฐเต IP เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดจเต เดชเด•เดฐเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดŽเดดเตเดคเดฟ เด’เดฐเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดจเดพเดฎเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•. /etc/hosts เดฌเตเดฐเต—เดธเดฑเดฟเตฝ เดตเดฟเดฒเดพเดธเด‚ เดŸเตˆเดชเตเดชเต เดšเต†เดฏเตเดฏเตเด•. http://jupyter.local:8888
  • เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเดฑเต† เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดชเดฐเดฟเดงเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เดณเดฟเด•เตเด•เตเด•, เด‡เดคเดฟเดจเดพเดฏเดฟ เด…เดงเตเดฏเดพเดฏเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเด• เดŽเตฝเดŽเด•เตเดธเตเดกเดฟเดฏเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ LXD เดกเต†เดตเดฒเดชเตเดชเตผ เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพ เดจเต‡เดŸเตเด•.
  • เดกเดฟเดธเตˆเตป เดคเต€เด‚ เดฎเดพเดฑเตเดฑเตเด•:

เดตเตเดฏเดพเดดเดคเตเดคเต† LXD เดญเตเดฐเดฎเดฃเดชเดฅเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเด•เตเดทเต‡เดชเดฟเด•เตเด•เตเดจเตเดจเต

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดฏเตเด‚ เด’เดฐเตเดชเดพเดŸเต เด•เดพเดฐเตเดฏเด™เตเด™เตพ เดšเต†เดฏเตเดฏเดพเดจเตเดฃเตเดŸเต! เด‡เดชเตเดชเต‹เตพ เด…เดคเตเดฐเดฏเต‡เดฏเตเดณเตเดณเต‚. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดœเดฏเด‚ เด†เดถเด‚เดธเดฟเด•เตเด•เตเดจเตเดจเต!

เด…เดชเตเดกเต‡เดฑเตเดฑเต: 04/15/2020 6:30 PM โ€” "เดนเดฒเต‹, เดตเต‡เตพเดกเต!" เดŽเดจเตเดจ เด…เดงเตเดฏเดพเดฏเดคเตเดคเดฟเดฒเต† เดชเดฟเดถเด•เตเด•เตพ เดชเดฐเดฟเดนเดฐเดฟเดšเตเดšเต.
เด…เดชเตเดกเต‡เดฑเตเดฑเต: เดเดชเตเดฐเดฟเตฝ 16, 2020, 10:00 AM โ€” เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเตป เดฎเดพเดจเต‡เดœเตผ เด†เด•เตเดŸเดฟเดตเต‡เดทเตป เดตเดฟเดตเดฐเดฃเดคเตเดคเดฟเตฝ เดตเดพเดšเด•เด‚ เดคเดฟเดฐเตเดคเตเดคเดฟ เดšเต‡เตผเดคเตเดคเต. เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดฒเดพเดฌเต
เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต: เดเดชเตเดฐเดฟเตฝ 16, 2020, 10:40 AM โ€” เดตเดพเดšเด•เดคเตเดคเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏ เดชเดฟเดถเด•เตเด•เตพ เดคเดฟเดฐเตเดคเตเดคเดฟ, "เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเต‹เดซเตเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต" เดŽเดจเตเดจ เด…เดงเตเดฏเดพเดฏเด‚ เดšเต†เดฑเตเดคเดพเดฏเดฟ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฟ.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

DDoS เดชเดฐเดฟเดฐเด•เตเดทเดฏเตเดณเตเดณ เดธเตˆเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เตเด•, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ ๐Ÿ”ฅ DDoS เดชเดฐเดฟเดฐเด•เตเดท, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ เด‰เดณเตเดณ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเต เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เต‚ | ProHoster