438 lines
78 KiB
Plaintext
438 lines
78 KiB
Plaintext
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome Linux Containers[0m
|
||
|
||
[38;5;14m[1m![0m[38;5;12m#StandWithBelarus[39m[38;5;14m[1m (https://img.shields.io/badge/Belarus-red?label=%23%20Stand%20With&labelColor=white&color=red)[0m
|
||
[38;5;14m[1m (https://bysol.org/en/) [0m[38;5;12m![39m[38;5;14m[1mStand With Ukraine[0m[38;5;12m (https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)[39m[38;5;14m[1m (https://vshymanskyy.github.io/StandWithUkraine)[0m
|
||
|
||
[38;5;14m[1m![0m[38;5;12mAwesome[39m[38;5;14m[1m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;5;12m (https://github.com/sindresorhus/awesome)[39m
|
||
|
||
[38;2;255;187;0m[4mTable of Contents[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAbout the Author[0m[38;5;12m (#About-the-Author)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFoundations[0m[38;5;12m (#foundations)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSpecifications[0m[38;5;12m (#specifications)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mClouds[0m[38;5;12m (#clouds)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOperating Systems[0m[38;5;12m (#operating-systems)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHypervisors[0m[38;5;12m (#hypervisors)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mContainers[0m[38;5;12m (#containers)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSandboxes[0m[38;5;12m (#sandboxes)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPartial Access[0m[38;5;12m (#partial-access)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFilesystem[0m[38;5;12m (#filesystem)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDashboard[0m[38;5;12m (#dashboard)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mBest practices[0m[38;5;12m (#best-practices)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSecurity[0m[38;5;12m (#security)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mTools[0m[38;5;12m (#tools)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLinks[0m[38;5;12m (#links)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLevels of security problems[0m[38;5;12m (#levels-of-security-problems)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mTechnologies for security[0m[38;5;12m (#technologies-for-security)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAnother Information Sources[0m[38;5;12m (#another-information-sources)[39m
|
||
|
||
[38;2;255;187;0m[4mAbout the Author[0m
|
||
|
||
[38;5;12mHello,[39m[38;5;12m [39m[38;5;12meveryone![39m[38;5;12m [39m[38;5;12mMy[39m[38;5;12m [39m[38;5;12mname[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mFilipp,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mI[39m[38;5;12m [39m[38;5;12mhave[39m[38;5;12m [39m[38;5;12mbeen[39m[38;5;12m [39m[38;5;12mworking[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mhigh[39m[38;5;12m [39m[38;5;12mload[39m[38;5;12m [39m[38;5;12mdistribution[39m[38;5;12m [39m[38;5;12msystems[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mservices,[39m[38;5;12m [39m[38;5;12msecurity,[39m[38;5;12m [39m[38;5;12mmonitoring,[39m[38;5;12m [39m[38;5;12mcontinuous[39m[38;5;12m [39m[38;5;12mdeployment[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mrelease[39m[38;5;12m [39m[38;5;12mmanagement[39m[38;5;12m [39m[38;5;12m(DevOps[39m[38;5;12m [39m
|
||
[38;5;12mdomain)[39m[38;5;12m [39m[38;5;12msince[39m[38;5;12m [39m[38;5;12m2012.[39m
|
||
|
||
[38;5;12mOne[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m[38;5;12mpassions[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mdeveloping[39m[38;5;12m [39m[38;5;12mDevOps[39m[38;5;12m [39m[38;5;12msolutions[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcontributing[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mopen-source[39m[38;5;12m [39m[38;5;12mcommunity.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;12msharing[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m[38;5;12mknowledge[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mexperiences,[39m[38;5;12m [39m[38;5;12mI[39m[38;5;12m [39m[38;5;12mstrive[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msave[39m[38;5;12m [39m[38;5;12mtime[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mboth[39m[38;5;12m [39m[38;5;12mmyself[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mothers[39m[38;5;12m [39m
|
||
[38;5;12mwhile[39m[38;5;12m [39m[38;5;12mfostering[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mculture[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcollaboration[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlearning.[39m
|
||
|
||
[38;5;12mI[39m[38;5;12m [39m[38;5;12mhad[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mleave[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m[38;5;12mhome[39m[38;5;12m [39m[38;5;12mcountry,[39m[38;5;12m [39m[38;5;12mBelarus,[39m[38;5;12m [39m[38;5;12mdue[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m[38;5;12mparticipation[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;14m[1mprotests[0m[38;5;14m[1m [0m[38;5;14m[1magainst[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1moppressive[0m[38;5;14m[1m [0m[38;5;14m[1mregime[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mdictator[0m[38;5;14m[1m [0m[38;5;14m[1mLukashenko[0m[38;5;12m [39m
|
||
[38;5;12m(https://en.wikipedia.org/wiki/2020%E2%80%932021_Belarusian_protests),[39m[38;5;12m [39m[38;5;12mwho[39m[38;5;12m [39m[38;5;12mmaintains[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mclose[39m[38;5;12m [39m[38;5;12maffiliation[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mPutin.[39m[38;5;12m [39m[38;5;12mSince[39m[38;5;12m [39m[38;5;12mthen,[39m[38;5;12m [39m[38;5;12mI'm[39m[38;5;12m [39m[38;5;12mtrying[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m[38;5;12mlife[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mzero[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mother[39m[38;5;12m [39m[38;5;12mcountries.[39m
|
||
|
||
[38;5;12mIf[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mseeking[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mskilled[39m[38;5;12m [39m[38;5;12mDevOps[39m[38;5;12m [39m[38;5;12mlead[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12marchitect[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12menhance[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12mproject,[39m[38;5;12m [39m[38;5;12mI[39m[38;5;12m [39m[38;5;12minvite[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mconnect[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mme[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;14m[1mLinkedIn[0m[38;5;12m [39m[38;5;12m(https://www.linkedin.com/in/filipp-frizzy-289a0360/)[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mexplore[39m[38;5;12m [39m[38;5;12mmy[39m[38;5;12m [39m
|
||
[38;5;12mvaluable[39m[38;5;12m [39m[38;5;12mcontributions[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;14m[1mGitHub[0m[38;5;12m [39m[38;5;12m(https://github.com/Friz-zy/).[39m[38;5;12m [39m[38;5;12mLet's[39m[38;5;12m [39m[38;5;12mcollaborate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12msome[39m[38;5;12m [39m[38;5;12mcool[39m[38;5;12m [39m[38;5;12msolutions[39m[38;5;12m [39m[38;5;12mtogether[39m[38;5;12m [39m[38;5;12m:)[39m
|
||
|
||
[38;2;255;187;0m[4mFoundations[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOPEN CONTAINER INITIATIVE[0m[38;5;12m (https://www.opencontainers.org/) [39m
|
||
[38;5;12mThe[39m[38;5;12m [39m[38;5;12mOpen[39m[38;5;12m [39m[38;5;12mContainer[39m[38;5;12m [39m[38;5;12mInitiative[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlightweight,[39m[38;5;12m [39m[38;5;12mopen[39m[38;5;12m [39m[38;5;12mgovernance[39m[38;5;12m [39m[38;5;12mstructure,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mformed[39m[38;5;12m [39m[38;5;12munder[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mauspices[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mFoundation,[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mexpress[39m[38;5;12m [39m[38;5;12mpurpose[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcreating[39m[38;5;12m [39m[38;5;12mopen[39m[38;5;12m [39m[38;5;12mindustry[39m[38;5;12m [39m[38;5;12mstandards[39m
|
||
[38;5;12maround[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mformats[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mruntime.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCloud Native Computing Foundation[0m[38;5;12m (https://cncf.io/) [39m
|
||
[38;5;12mThe[39m[38;5;12m [39m[38;5;12mCloud[39m[38;5;12m [39m[38;5;12mNative[39m[38;5;12m [39m[38;5;12mComputing[39m[38;5;12m [39m[38;5;12mFoundation[39m[38;5;12m [39m[38;5;12mwill[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdrive[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12madoption[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mset[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcommon[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mtechnologies[39m[38;5;12m [39m[38;5;12minformed[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mtechnical[39m[38;5;12m [39m[38;5;12mmerit[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mend[39m[38;5;12m [39m[38;5;12muser[39m[38;5;12m [39m[38;5;12mvalue,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12minspired[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m
|
||
[38;5;12mInternet-scale[39m[38;5;12m [39m[38;5;12mcomputing.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCloud Foundry Foundation[0m[38;5;12m (https://www.cloudfoundry.org/foundation/) [39m
|
||
[38;5;12mThe Cloud is our foundry.[39m
|
||
|
||
[38;2;255;187;0m[4mSpecifications[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOpen Container Specifications[0m[38;5;12m (https://github.com/opencontainers/specs) [39m
|
||
[38;5;12mThis project is where the Open Container Initiative Specifications are written. This is a work in progress. [39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mApp Container basics[0m[38;5;12m (https://github.com/coreos/rkt/blob/master/Documentation/app-container.md) [39m
|
||
[38;5;12mApp Container (appc) is an open specification that defines several aspects of how to run applications in containers: an image format, runtime environment, and discovery protocol.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSystemd Container Interface[0m[38;5;12m (https://wiki.freedesktop.org/www/Software/systemd/ContainerInterface/) [39m
|
||
[38;5;12mSystemd[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msuite[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mbasic[39m[38;5;12m [39m[38;5;12mbuilding[39m[38;5;12m [39m[38;5;12mblocks[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12msystem.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mprovides[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mmanager[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mruns[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mPID[39m[38;5;12m [39m[38;5;12m1[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mstarts[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mrest[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msystem.[39m[38;5;12m [39m[38;5;12mIf[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mwrite[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m
|
||
[38;5;12msolution,[39m[38;5;12m [39m[38;5;12mplease[39m[38;5;12m [39m[38;5;12mconsider[39m[38;5;12m [39m[38;5;12msupporting[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfollowing[39m[38;5;12m [39m[38;5;12minterfaces.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mNulecule Specification[0m[38;5;12m (https://github.com/projectatomic/atomicapp/tree/master/docs/spec) [39m
|
||
[38;5;12mNulecule[39m[38;5;12m [39m[38;5;12mdefines[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mpattern[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmodel[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mpackaging[39m[38;5;12m [39m[38;5;12mcomplex[39m[38;5;12m [39m[38;5;12mmulti-container[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mservices,[39m[38;5;12m [39m[38;5;12mreferencing[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mdependencies,[39m[38;5;12m [39m[38;5;12mincluding[39m[38;5;12m [39m[38;5;12morchestration[39m[38;5;12m [39m[38;5;12mmetadata[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mimage[39m
|
||
[38;5;12mfor[39m[38;5;12m [39m[38;5;12mbuilding,[39m[38;5;12m [39m[38;5;12mdeploying,[39m[38;5;12m [39m[38;5;12mmonitoring,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mactive[39m[38;5;12m [39m[38;5;12mmanagement.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOracle microcontainer manifesto[0m[38;5;12m (https://blogs.oracle.com/developers/the-microcontainer-manifesto) [39m
|
||
[38;5;12mThis is not a new container format, but simply a specific method for constructing a container that allows for better security and stability.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCloud Native Application Bundle Specification[0m[38;5;12m (https://github.com/deislabs/cnab-spec) [39m
|
||
[38;5;12mA package format specification that describes a technology for bundling, installing, and managing distributed applications, that are by design, cloud agnostic.[39m
|
||
|
||
[38;2;255;187;0m[4mClouds[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAmazon EC2 Container Service [0m[38;5;12m (https://aws.amazon.com/ecs/) [39m
|
||
[38;5;12mContainer management service that supports Docker containers and allows you to easily run applications on a managed cluster of Amazon EC2 instances.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mGoogle Cloud Platform[0m[38;5;12m (https://cloud.google.com/container-engine/) [39m
|
||
[38;5;12mRun[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mGoogle[39m[38;5;12m [39m[38;5;12mCloud[39m[38;5;12m [39m[38;5;12mPlatform,[39m[38;5;12m [39m[38;5;12mpowered[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mKubernetes.[39m[38;5;12m [39m[38;5;12mGoogle[39m[38;5;12m [39m[38;5;12mContainer[39m[38;5;12m [39m[38;5;12mEngine[39m[38;5;12m [39m[38;5;12mactively[39m[38;5;12m [39m[38;5;12mschedules[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12mcontainers,[39m[38;5;12m [39m[38;5;12mbased[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mdeclared[39m[38;5;12m [39m[38;5;12mneeds,[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mmanaged[39m[38;5;12m [39m[38;5;12mcluster[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mvirtual[39m[38;5;12m [39m
|
||
[38;5;12mmachines.[39m[38;5;12m [39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJelastic[0m[38;5;12m (http://jelastic.com/) [39m
|
||
[38;5;12mUnlimited PaaS and Container-Based IaaS in a Joint Cloud Solution for DevOps.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJoyent[0m[38;5;12m (https://www.joyent.com/) [39m
|
||
[38;5;12mHigh-Performance Container-Native Infrastructure for Today's Demanding Real-Time Web and Mobile Applications.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mKubernetes[0m[38;5;12m (http://kubernetes.io/) [39m
|
||
[38;5;12mManage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMesosphere[0m[38;5;12m (https://mesosphere.com/) [39m
|
||
[38;5;12mThe[39m[38;5;12m [39m[38;5;12mMesosphere[39m[38;5;12m [39m[38;5;12mDatacenter[39m[38;5;12m [39m[38;5;12mOperating[39m[38;5;12m [39m[38;5;12mSystem[39m[38;5;12m [39m[38;5;12m(DCOS)[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mkind[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12moperating[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mspans[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmachines[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12mdatacenter[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mcloud.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mprovides[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mhighly[39m[38;5;12m [39m[38;5;12melastic,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mhighly[39m[38;5;12m [39m
|
||
[38;5;12mscalable[39m[38;5;12m [39m[38;5;12mway[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mdeploying[39m[38;5;12m [39m[38;5;12mapplications,[39m[38;5;12m [39m[38;5;12mservices[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mbig[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12minfrastructure[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mshared[39m[38;5;12m [39m[38;5;12mresources.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOpenShift Origin[0m[38;5;12m (https://www.openshift.org/) [39m
|
||
[38;5;12mOpenShift[39m[38;5;12m [39m[38;5;12mOrigin[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdistribution[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;14m[1mKubernetes[0m[38;5;12m [39m[38;5;12m(http://kubernetes.io/)[39m[38;5;12m [39m[38;5;12moptimized[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mcontinuous[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmulti-tenant[39m[38;5;12m [39m[38;5;12mdeployment.[39m[38;5;12m [39m[38;5;12mOrigin[39m[38;5;12m [39m[38;5;12madds[39m[38;5;12m [39m[38;5;12mdeveloper[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||
[38;5;12moperations-centric[39m[38;5;12m [39m[38;5;12mtools[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mtop[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mKubernetes[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12menable[39m[38;5;12m [39m[38;5;12mrapid[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mdevelopment,[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mdeployment[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mscaling,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlong-term[39m[38;5;12m [39m[38;5;12mlifecycle[39m[38;5;12m [39m[38;5;12mmaintenance[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12msmall[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlarge[39m[38;5;12m [39m[38;5;12mteams.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWarden[0m[38;5;12m (https://github.com/cloudfoundry/warden) [39m
|
||
[38;5;12mManages isolated, ephemeral, and resource controlled environments. Part of Cloud Foundry - the open platform as a service project.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mVirtuozzo[0m[38;5;12m (https://virtuozzo.com) [39m
|
||
[38;5;12mA[39m[38;5;12m [39m[38;5;12mplatform,[39m[38;5;12m [39m[38;5;12mbuilt[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mVirtuozzo[39m[38;5;12m [39m[38;5;12mcontainers,[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12measily[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mtop[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12many[39m[38;5;12m [39m[38;5;12mbare-metal[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mvirtual[39m[38;5;12m [39m[38;5;12mservers[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12many[39m[38;5;12m [39m[38;5;12mpublic[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mprivate[39m[38;5;12m [39m[38;5;12mcloud,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mautomate,[39m[38;5;12m [39m[38;5;12moptimize,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12maccelerate[39m[38;5;12m [39m[38;5;12minternal[39m[38;5;12m [39m[38;5;12mIT[39m
|
||
[38;5;12mand[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mprocesses.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRancher[0m[38;5;12m (http://rancher.com/) [39m
|
||
[38;5;12mRancher[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomplete,[39m[38;5;12m [39m[38;5;12mopen[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mplatform[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mdeploying[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmanaging[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mproduction.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mincludes[39m[38;5;12m [39m[38;5;12mcommercially-supported[39m[38;5;12m [39m[38;5;12mdistributions[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mKubernetes,[39m[38;5;12m [39m[38;5;12mMesos,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mSwarm,[39m[38;5;12m [39m
|
||
[38;5;12mmaking[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12mcontainerized[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12many[39m[38;5;12m [39m[38;5;12minfrastructure.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDocker Swarm[0m[38;5;12m (https://docs.docker.com/engine/swarm/) [39m
|
||
[38;5;12mDocker Swarm is native clustering for Docker.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAzure Container Service[0m[38;5;12m (https://azure.microsoft.com/en-us/services/container-service/) [39m
|
||
[38;5;12mAzure Container Service optimizes the configuration of popular open source tools and technologies specifically for Azure.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCIAO[0m[38;5;12m (https://ciao-project.github.io/) [39m
|
||
[38;5;12m Cloud Integrated Advanced Orchestrator for Intel Clear Linux OS. [39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAlibaba Cloud Container Service[0m[38;5;12m (https://www.alibabacloud.com/fr/product/container-service) [39m
|
||
[38;5;12mContainer[39m[38;5;12m [39m[38;5;12mService[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mhigh-performance[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mscalable[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mmanagement[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12menables[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mKubernetes[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mmanage[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mlifecycle[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcontainerized[39m[38;5;12m [39m
|
||
[38;5;12mapplications.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mNomad[0m[38;5;12m (https://www.nomadproject.io/) [39m
|
||
[38;5;12m [39m[38;5;12mHashiCorp[39m[38;5;12m [39m[38;5;12mNomad[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msingle[39m[38;5;12m [39m[38;5;12mbinary[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mschedules[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mservices[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mLinux,[39m[38;5;12m [39m[38;5;12mWindows,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mMac.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mopen[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mscheduler[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdeclarative[39m[38;5;12m [39m[38;5;12mjob[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mscheduling[39m[38;5;12m [39m
|
||
[38;5;12mvirtualized,[39m[38;5;12m [39m[38;5;12mcontainerized,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mstandalone[39m[38;5;12m [39m[38;5;12mapplications.[39m
|
||
|
||
[38;2;255;187;0m[4mOperating Systems[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCoreOs[0m[38;5;12m (https://coreos.com/) [39m
|
||
[38;5;12mA lightweight Linux operating system designed for clustered deployments providing automation, security, and scalability for your most critical applications.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRancherOS[0m[38;5;12m (http://rancher.com/rancher-os/) [39m
|
||
[38;5;12mRancherOS is a tiny Linux distro that runs the entire OS as Docker containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mProject Atomic[0m[38;5;12m (http://www.projectatomic.io/) [39m
|
||
[38;5;12mProject Atomic provides the best platform for your Linux Docker Kubernetes (LDK) application stack. Use immutable infrastructure to deploy and scale your containerized applications.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSnappy Ubuntu Core[0m[38;5;12m (https://www.ubuntu.com/cloud/snappy) [39m
|
||
[38;5;12mUbuntu Core is the perfect system for large-scale cloud container deployments, bringing transactional updates to the world’s favourite container platform.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mResinOS[0m[38;5;12m (https://resinos.io/) [39m
|
||
[38;5;12mA host OS tailored for containers, designed for reliability, proven in production.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPhoton[0m[38;5;12m (https://github.com/vmware/photon) [39m
|
||
[38;5;12mPhoton[39m[38;5;12m [39m[38;5;12mOS[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mminimal[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mhost[39m[38;5;12m [39m[38;5;12mdesigned[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhave[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msmall[39m[38;5;12m [39m[38;5;12mfootprint[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mtuned[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mVMware[39m[38;5;12m [39m[38;5;12mplatforms.[39m[38;5;12m [39m[38;5;12mPhoton[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mintended[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12minvite[39m[38;5;12m [39m[38;5;12mcollaboration[39m[38;5;12m [39m[38;5;12maround[39m[38;5;12m [39m[38;5;12mrunning[39m[38;5;12m [39m[38;5;12mcontainerized[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||
[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mvirtualized[39m[38;5;12m [39m[38;5;12menvironment.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mClear Linux Project[0m[38;5;12m (https://clearlinux.org) [39m
|
||
[38;5;12mThe Clear Linux Project for Intel Architecture is a distribution built for various Cloud use cases.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCargOS[0m[38;5;12m (https://cargos.io/) [39m
|
||
[38;5;12mCargOS is a new lightweight, open source, platform for Docker hosts that aims for speed, manageability and security. Releases are built for 64-bit Intel/AMD CPUs.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOSv[0m[38;5;12m (http://osv.io/) [39m
|
||
[38;5;12mOSv is the open source operating system designed for the cloud. Built from the ground up for effortless deployment and management, with superior performance.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHypriotOS[0m[38;5;12m (http://blog.hypriot.com/about/) [39m
|
||
[38;5;12mMinimal Debian-based operating systems that is optimized to run Docker. It made it dead easy use Docker on any Raspberry Pi. [39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMCL[0m[38;5;12m (https://mcl.host) [39m
|
||
[38;5;12mMCL[39m[38;5;12m [39m[38;5;12m([39m[48;2;30;30;40m[38;5;13m[3mMinimal[0m[48;2;30;30;40m[38;5;13m[3m [0m[48;2;30;30;40m[38;5;13m[3mContainer[0m[48;2;30;30;40m[38;5;13m[3m [0m[48;2;30;30;40m[38;5;13m[3mLinux[0m[38;5;12m)[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mscratch[39m[38;5;12m [39m[38;5;12mminimal[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mOS[39m[38;5;12m [39m[38;5;12mdesigned[39m[38;5;12m [39m[38;5;12mspecifically[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12mcontainers.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mhas[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msmall[39m[38;5;12m [39m[38;5;12mfootprint[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12m~50MB[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mboots[39m[38;5;12m [39m[38;5;12mwithin[39m[38;5;12m [39m[38;5;12mseconds.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mcurrently[39m[38;5;12m [39m[38;5;12moptimized[39m
|
||
[38;5;12mto[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12mDocker.[39m
|
||
|
||
[38;2;255;187;0m[4mHypervisors[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDocker[0m[38;5;12m (https://github.com/veggiemonk/awesome-docker#cloud-infrastructure) [39m
|
||
[38;5;12mAn open platform for distributed applications for developers and sysadmins. [39m[38;5;14m[1mStandard de facto[0m[38;5;12m.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLXD[0m[38;5;12m (https://github.com/lxc/lxd) [39m
|
||
[38;5;12mDaemon based on liblxc offering a REST API to manage LXC containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOpenVZ[0m[38;5;12m (https://openvz.org/) [39m
|
||
[38;5;12mOpenVZ[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mcontainer-based[39m[38;5;12m [39m[38;5;12mvirtualization[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mLinux.[39m[38;5;12m [39m[38;5;12mOpenVZ[39m[38;5;12m [39m[38;5;12mcreates[39m[38;5;12m [39m[38;5;12mmultiple[39m[38;5;12m [39m[38;5;12msecure,[39m[38;5;12m [39m[38;5;12misolated[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12m(otherwise[39m[38;5;12m [39m[38;5;12mknown[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mVEs[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mVPSs)[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msingle[39m[38;5;12m [39m[38;5;12mphysical[39m[38;5;12m [39m[38;5;12mserver[39m[38;5;12m [39m[38;5;12menabling[39m[38;5;12m [39m[38;5;12mbetter[39m[38;5;12m [39m
|
||
[38;5;12mserver[39m[38;5;12m [39m[38;5;12mutilization[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mensuring[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mconflict.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMultiDocker[0m[38;5;12m (https://github.com/marty90/multidocker) [39m
|
||
[38;5;12mCreate a secure multi-user Docker machine, where each user is segregated into an indepentent container.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLithos[0m[38;5;12m (https://github.com/tailhook/lithos/) [39m
|
||
[38;5;12mLithos is a process supervisor and containerizer for running services. It is not intended to be system init, but rather tries to be a base tool to build container orchestration.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcontainerd[0m[38;5;12m (https://containerd.io/) [39m
|
||
[38;5;12mA container runtime which can manage a complete container lifecycle - from image transfer/storage to container execution, supervision and networking.[39m
|
||
|
||
[38;2;255;187;0m[4mContainers[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mrunc[0m[38;5;12m (https://github.com/opencontainers/runc) [39m
|
||
[38;5;12mrunc is a CLI tool for spawning and running containers according to the OCS specification.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mBocker[0m[38;5;12m (https://github.com/p8952/bocker) [39m
|
||
[38;5;12mDocker implemented in around 100 lines of bash.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRocket[0m[38;5;12m (https://github.com/coreos/rkt) [39m
|
||
[38;5;12mrkt (pronounced "rock-it") is a CLI for running app containers on Linux. rkt is designed to be composable, secure, and fast. Based on AppC specification.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLXC[0m[38;5;12m (https://github.com/lxc/lxc) [39m
|
||
[38;5;12mLXC[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mwell[39m[38;5;12m [39m[38;5;12mknown[39m[38;5;12m [39m[38;5;12mset[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mtools,[39m[38;5;12m [39m[38;5;12mtemplates,[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlanguage[39m[38;5;12m [39m[38;5;12mbindings.[39m[38;5;12m [39m[38;5;12mIt's[39m[38;5;12m [39m[38;5;12mpretty[39m[38;5;12m [39m[38;5;12mlow[39m[38;5;12m [39m[38;5;12mlevel,[39m[38;5;12m [39m[38;5;12mvery[39m[38;5;12m [39m[38;5;12mflexible[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcovers[39m[38;5;12m [39m[38;5;12mjust[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mevery[39m[38;5;12m [39m[38;5;12mcontainment[39m[38;5;12m [39m[38;5;12mfeature[39m[38;5;12m [39m[38;5;12msupported[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mupstream[39m[38;5;12m [39m
|
||
[38;5;12mkernel.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mVagga[0m[38;5;12m (https://github.com/tailhook/vagga) [39m
|
||
[38;5;12mVagga is a fully-userspace container engine inspired by Vagrant and Docker, specialized for development environments.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mlibct[0m[38;5;12m (https://github.com/xemul/libct) [39m
|
||
[38;5;12mLibct is a containers management library which provides convenient API for frontend programs to rule a container during its whole lifetime.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mlibvirt[0m[38;5;12m (https://libvirt.org/drvlxc.html) [39m
|
||
[38;5;12mA big toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes).[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msystemd-nspawn[0m[38;5;12m (https://wiki.archlinux.org/index.php/Systemd-nspawn) [39m
|
||
[38;5;12mSpawn a namespace container for debugging, testing and building. Part of [39m[38;5;14m[1msystemd[0m[38;5;12m (https://wiki.freedesktop.org/www/Software/systemd/).[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mporto[0m[38;5;12m (https://github.com/yandex/porto) [39m
|
||
[38;5;12mThe main goal of Porto is to create a convenient, reliable interface over several Linux kernel mechanism such as cgroups, namespaces, mounts, networking etc.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mudocker[0m[38;5;12m (https://github.com/indigo-dc/udocker) [39m
|
||
[38;5;12mA basic user tool to execute simple containers in batch or interactive systems without root privileges.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLet Me Contain That For You[0m[38;5;12m (https://github.com/google/lmctfy) [39m
|
||
[38;5;12mLMCTFY is the open source version of Google’s container stack, which provides Linux application containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcc-oci-runtime[0m[38;5;12m (https://github.com/01org/cc-oci-runtime) [39m
|
||
[38;5;12mIntel Clear Linux OCI (Open Containers Initiative) compatible runtime.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mrailcar[0m[38;5;12m (https://github.com/oracle/railcar) [39m
|
||
[38;5;12mRailcar[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mrust[39m[38;5;12m [39m[38;5;12mimplementation[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mopencontainers[39m[38;5;12m [39m[38;5;12minitiative's[39m[38;5;12m [39m[38;5;12mruntime[39m[38;5;12m [39m[38;5;12mspec.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12msimilar[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mreference[39m[38;5;12m [39m[38;5;12mimplementation[39m[38;5;12m [39m[38;5;12mrunc,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mimplemented[39m[38;5;12m [39m[38;5;12mcompletely[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mrust[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m
|
||
[38;5;12msafety[39m[38;5;12m [39m[38;5;12mwithout[39m[38;5;12m [39m[38;5;12mneeding[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moverhead[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mgarbage[39m[38;5;12m [39m[38;5;12mcollector[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mmultiple[39m[38;5;12m [39m[38;5;12mthreads.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mKata Containers[0m[38;5;12m (https://katacontainers.io/) [39m
|
||
[38;5;12mKata Containers is a new open source project building extremely lightweight virtual machines that seamlessly plug into the containers ecosystem.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mplash[0m[38;5;12m (https://github.com/ihucos/plash/) [39m
|
||
[38;5;12mLightweight, rootless containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mrunv[0m[38;5;12m (https://github.com/hyperhq/runv) [39m
|
||
[38;5;12mHypervisor-based (KVM, Xen, QEMU) Runtime for OCI. Security by isolation.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mpodman[0m[38;5;12m (https://github.com/containers/libpod) [39m
|
||
[38;5;12mFull management of container lifecycle.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfirecracker[0m[38;5;12m (https://github.com/firecracker-microvm/firecracker) [39m
|
||
[38;5;12mFirecracker[39m[38;5;12m [39m[38;5;12mruns[39m[38;5;12m [39m[38;5;12mworkloads[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mlightweight[39m[38;5;12m [39m[38;5;12mvirtual[39m[38;5;12m [39m[38;5;12mmachines,[39m[38;5;12m [39m[38;5;12mcalled[39m[38;5;12m [39m[38;5;12mmicroVMs,[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mcombine[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msecurity[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12misolation[39m[38;5;12m [39m[38;5;12mproperties[39m[38;5;12m [39m[38;5;12mprovided[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mhardware[39m[38;5;12m [39m[38;5;12mvirtualization[39m[38;5;12m [39m[38;5;12mtechnology[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mspeed[39m[38;5;12m [39m
|
||
[38;5;12mand[39m[38;5;12m [39m[38;5;12mflexibility[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcontainers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msysbox[0m[38;5;12m (https://github.com/nestybox/sysbox) [39m
|
||
[38;5;12mSysbox is a "runc" that creates secure (rootless) containers / pods that run not just microservices, but most workloads that run in VMs (e.g., systemd, Docker, and Kubernetes), seamlessly.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1myouki[0m[38;5;12m (https://github.com/containers/youki) [39m
|
||
[38;5;12mA container runtime written in Rust.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfootloose[0m[38;5;12m (https://github.com/weaveworks/footloose) [39m
|
||
[38;5;12mContainers that look like Virtual Machines.[39m
|
||
|
||
[38;2;255;187;0m[4mSandboxes[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFirejail[0m[38;5;12m (https://l3net.wordpress.com/projects/firejail/) [39m
|
||
[38;5;12mFirejail[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mSUID[39m[38;5;12m [39m[38;5;12msandbox[39m[38;5;12m [39m[38;5;12mprogram[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mreduces[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mrisk[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12msecurity[39m[38;5;12m [39m[38;5;12mbreaches[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mrestricting[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mrunning[39m[38;5;12m [39m[38;5;12menvironment[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12muntrusted[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12mnamespaces,[39m[38;5;12m [39m[38;5;12mseccomp-bpf[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m
|
||
[38;5;12mcapabilities.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mNsJail[0m[38;5;12m (https://github.com/google/nsjail) [39m
|
||
[38;5;12mNsJail is a process isolation tool for Linux. It makes use of the namespacing, resource control, and seccomp-bpf syscall filter subsystems of the Linux kernel.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSubuser[0m[38;5;12m (https://github.com/subuser-security/subuser) [39m
|
||
[38;5;12mSecuring the Linux desktop with Docker.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSnappy[0m[38;5;12m (https://wiki.ubuntu.com/SecurityTeam/Specifications/SnappyConfinement) [39m
|
||
[38;5;12mSnappy[39m[38;5;12m [39m[38;5;12mUbuntu[39m[38;5;12m [39m[38;5;12mCore[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mrendition[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mUbuntu[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mtransactional[39m[38;5;12m [39m[38;5;12mupdates[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mminimal[39m[38;5;12m [39m[38;5;12mserver[39m[38;5;12m [39m[38;5;12mimage[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msame[39m[38;5;12m [39m[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mtoday’s[39m[38;5;12m [39m[38;5;12mUbuntu,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mapplications[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mprovided[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msimpler[39m[38;5;12m [39m
|
||
[38;5;12mmechanism.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mxdg-app[0m[38;5;12m (https://wiki.gnome.org/Projects/SandboxedApps) [39m
|
||
[38;5;12mxdg-app is a system for building, distributing and running sandboxed desktop applications on Linux.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mBubblewrap[0m[38;5;12m (https://github.com/projectatomic/bubblewrap) [39m
|
||
[38;5;12mRun applications in a sandbox using Linux namespaces without root privileges, with user namespacing provided via setuid binary.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msingularity[0m[38;5;12m (https://github.com/singularityware/singularity) [39m
|
||
[38;5;12mUniversal application containers for Linux.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLxroot[0m[38;5;12m (https://github.com/parke/lxroot) [39m
|
||
[38;5;12mLxroot is a flexible, lightweight, and safer alternative to chroot and/or Docker for non-root users on Linux.[39m
|
||
|
||
[38;2;255;187;0m[4mPartial Access[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mnsenter[0m[38;5;12m (http://man7.org/linux/man-pages/man1/nsenter.1.html) [39m
|
||
[38;5;12mRun program with namespaces of other processes. Part of the util-linux.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mip-netns[0m[38;5;12m (http://man7.org/linux/man-pages/man8/ip-netns.8.html) [39m
|
||
[38;5;12mProcess network namespace management. Part of the iproute2.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1munshare[0m[38;5;12m (http://man7.org/linux/man-pages/man1/unshare.1.html) [39m
|
||
[38;5;12mRun program with some namespaces unshared from parent. Part of the util-linux.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mpython-nsenter[0m[38;5;12m (https://github.com/zalando/python-nsenter) [39m
|
||
[38;5;12mThis Python package allows entering Linux kernel namespaces (mount, IPC, net, PID, user and UTS) by doing the "setns" syscall.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mbutter[0m[38;5;12m (https://pypi.python.org/pypi/butter) [39m
|
||
[38;5;12mPython library to interface to low level linux features (inotify, fanotify, timerfd, signalfd, eventfd, containers) with asyncio support.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mpyspaces[0m[38;5;12m (https://github.com/Friz-zy/pyspaces) [39m
|
||
[38;5;12mWorks with Linux namespaces through glibc with pure python.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCRIU[0m[38;5;12m (https://criu.org/Main_Page) [39m
|
||
[38;5;12mCheckpoint/Restore[39m[38;5;12m [39m[38;5;12mIn[39m[38;5;12m [39m[38;5;12mUserspace[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msoftware[39m[38;5;12m [39m[38;5;12mtool[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12moperating[39m[38;5;12m [39m[38;5;12msystem.[39m[38;5;12m [39m[38;5;12mUsing[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mtool,[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mfreeze[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mrunning[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12m(or[39m[38;5;12m [39m[38;5;12mpart[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mit)[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcheckpoint[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mhard[39m[38;5;12m [39m[38;5;12mdrive[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m
|
||
[38;5;12mcollection[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfiles.[39m[38;5;12m [39m[38;5;12mCRIU[39m[38;5;12m [39m[38;5;12mintegrated[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mLXC[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mimplement[39m[38;5;12m [39m[38;5;12mLive[39m[38;5;12m [39m[38;5;12mmigration[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcontainers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMoby[0m[38;5;12m (https://github.com/moby/moby) [39m
|
||
[38;5;12mA "Lego set" of toolkit components for containers software created by Docker.[39m
|
||
|
||
[38;2;255;187;0m[4mFilesystem[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcontainer-diff[0m[38;5;12m (https://github.com/GoogleCloudPlatform/container-diff) [39m
|
||
[38;5;12mA tool for analyzing and comparing container images.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mbuildah[0m[38;5;12m (https://github.com/projectatomic/buildah) [39m
|
||
[38;5;12mA tool which facilitates building OCI container images.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mskopeo[0m[38;5;12m (https://github.com/projectatomic/skopeo) [39m
|
||
[38;5;12mWork with remote images registries - retrieving information, images, signing content.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mimg[0m[38;5;12m (https://github.com/jessfraz/img) [39m
|
||
[38;5;12mStandalone, daemon-less, unprivileged Dockerfile and OCI compatible container image builder.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdgr[0m[38;5;12m (https://github.com/blablacar/dgr) [39m
|
||
[38;5;12mCommand line utility designed to build and to configure at runtime App Containers Images (ACI) and App Container Pods (POD) based on convention over configuration.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhaler[0m[38;5;12m (https://github.com/P3GLEG/Whaler) [39m
|
||
[38;5;12mWhaler is designed to reverse engineer a Docker Image into the Dockerfile that created it.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdive[0m[38;5;12m (https://github.com/wagoodman/dive) [39m
|
||
[38;5;12mA tool for exploring each layer in a docker image.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mgo-containerregistry[0m[38;5;12m (https://github.com/google/go-containerregistry) [39m
|
||
[38;5;12mGo library and CLIs for working with container registries.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mkaniko[0m[38;5;12m (https://github.com/GoogleContainerTools/kaniko) [39m
|
||
[38;5;12mKaniko is a tool to build container images from a Dockerfile, inside a container or Kubernetes cluster.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mumoci[0m[38;5;12m (https://umo.ci/) [39m
|
||
[38;5;12mUmoci is a tool to manipulate OCI container images, and can be used as a rudimentary build tool.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdocker pushrm[0m[38;5;12m (https://github.com/christian-korneck/docker-pushrm) [39m
|
||
[38;5;12mA Docker CLI plugin that that lets you push the README.md file from the current directory to a container registry. Supports Docker Hub, Quay and Harbor.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mDashboard[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLXC-Web-Panel[0m[38;5;12m (https://lxc-webpanel.github.io/) [39m
|
||
[38;5;12mWeb panel for LXC on Ubuntu.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLiman[0m[38;5;12m (https://github.com/salihciftci/liman) [39m
|
||
[38;5;12mBasic docker monitoring web application.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mportainer[0m[38;5;12m (https://github.com/portainer/portainer) [39m
|
||
[38;5;12mLightweight Docker management UI.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mswarmpit[0m[38;5;12m (https://github.com/swarmpit/swarmpit) [39m
|
||
[38;5;12mLightweight mobile-friendly Docker Swarm management UI.[39m
|
||
|
||
[38;2;255;187;0m[4mBest practices[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mThe Twelve-Factor App[0m[38;5;12m (https://12factor.net/) [39m
|
||
[38;5;12mThe twelve-factor app is a methodology for building software-as-a-service apps.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mContainer Best Practices[0m[38;5;12m (http://docs.projectatomic.io/container-best-practices/) [39m
|
||
[38;5;12mA collaborative project to document container-based application architecture, creation and management from Project Atomic.[39m
|
||
|
||
[38;2;255;187;0m[4mSecurity[0m
|
||
|
||
[38;2;255;187;0m[4mTools[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDocker bench security[0m[38;5;12m (https://github.com/docker/docker-bench-security) [39m
|
||
[38;5;12mThe Docker Bench for Security is a script that checks for dozens of common best-practices around deploying Docker containers in production.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCoreOS Clair[0m[38;5;12m (https://coreos.com/blog/vulnerability-analysis-for-containers/) [39m
|
||
[38;5;12mOpen Source Vulnerability Analysis for your Containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mbane[0m[38;5;12m (https://github.com/jfrazelle/bane) [39m
|
||
[38;5;12mCustom AppArmor profile generator for docker containers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mOpenSCAP[0m[38;5;12m (https://github.com/OpenSCAP/container-compliance) [39m
|
||
[38;5;12mThe OpenSCAP ecosystem provides multiple tools to assist administrators and auditors with assessment, measurement and enforcement of security baselines.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdrydock[0m[38;5;12m (https://github.com/zuBux/drydock) [39m
|
||
[38;5;12mDrydock provides a flexible way of assessing the security of your Docker daemon configuration and containers using editable audit templates.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mtrireme[0m[38;5;12m (https://www.aporeto.com/trireme/) [39m
|
||
[38;5;12mSecurity by segmentation for Docker and Kubernetes.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mgoss[0m[38;5;12m (https://github.com/aelsabbahy/goss) [39m
|
||
[38;5;12mQuick and Easy server testing/validation.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msockguard[0m[38;5;12m (https://github.com/buildkite/sockguard) [39m
|
||
[38;5;12mA proxy for docker.sock that enforces access control and isolated privileges.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mgvisor[0m[38;5;12m (https://github.com/google/gvisor) [39m
|
||
[38;5;12mgVisor[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12muser-space[39m[38;5;12m [39m[38;5;12mkernel,[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mGo,[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mimplements[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msubstantial[39m[38;5;12m [39m[38;5;12mportion[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12msurface.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mincludes[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mOpen[39m[38;5;12m [39m[38;5;12mContainer[39m[38;5;12m [39m[38;5;12mInitiative[39m[38;5;12m [39m[38;5;12m(OCI)[39m[38;5;12m [39m[38;5;12mruntime[39m[38;5;12m [39m[38;5;12mcalled[39m[38;5;12m [39m[38;5;12mrunsc[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m
|
||
[38;5;12mprovides[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12misolation[39m[38;5;12m [39m[38;5;12mboundary[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhost[39m[38;5;12m [39m[38;5;12mkernel.[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mrunsc[39m[38;5;12m [39m[38;5;12mruntime[39m[38;5;12m [39m[38;5;12mintegrates[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mKubernetes,[39m[38;5;12m [39m[38;5;12mmaking[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12msandboxed[39m[38;5;12m [39m[38;5;12mcontainers.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdocker-explorer[0m[38;5;12m (https://github.com/google/docker-explorer/) [39m
|
||
[38;5;12mA tool to help forensicate offline docker acquisitions.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1moci-seccomp-bpf-hook[0m[38;5;12m (https://github.com/containers/oci-seccomp-bpf-hook) [39m
|
||
[38;5;12mOCI hook to trace syscalls and generate a seccomp profile.[39m
|
||
|
||
[38;2;255;187;0m[4mLinks[0m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCIS Security Benchmarks[0m[38;5;12m (https://benchmarks.cisecurity.org/about/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAre Docker containers really secure?[0m[38;5;12m (https://opensource.com/business/14/7/docker-security-selinux)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mBringing new security features to Docker[0m[38;5;12m (https://opensource.com/business/14/9/security-for-docker)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDocker, Linux Containers (LXC), and security[0m[38;5;12m (http://www.slideshare.net/jpetazzo/docker-linux-containers-lxc-and-security)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFor containers, security is problem #1[0m[38;5;12m (http://www.itworld.com/article/2920349/security/for-containers-security-is-problem-1.html)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLinux Container Security[0m[38;5;12m (https://mjg59.dreamwidth.org/33170.html)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAsk HN: Best Linux sandbox?[0m[38;5;12m (https://news.ycombinator.com/item?id=10030868)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mCIS Docker 1.6 Benchmark v1.0.0[0m[38;5;12m (https://benchmarks.cisecurity.org/tools2/docker/CIS_Docker_1.6_Benchmark_v1.0.0.pdf)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mUnderstanding docker security and best practices[0m[38;5;12m (https://blog.docker.com/2015/05/understanding-docker-security-and-best-practices/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mUpdate on Ubuntu Phone security issue[0m[38;5;12m (https://insights.ubuntu.com/2015/10/15/update-on-ubuntu-phone-security-issue/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDon't expose the Docker socket (not even to a container)[0m[38;5;12m (https://www.lvh.io/posts/dont-expose-the-docker-socket-not-even-to-a-container/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRedHat Blog[0m[38;5;12m (http://rhelblog.redhat.com/?s=container&submit=Search)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mIntroduction to Linux Containers[0m[38;5;12m (https://access.redhat.com/articles/1353593)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mWhat’s Next for Containers? User Namespaces[0m[38;5;12m (http://rhelblog.redhat.com/2015/07/07/whats-next-for-containers-user-namespaces/#more-1004)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mArchitecting Containers Part 1: Why Understanding User Space vs. Kernel Space Matters[0m[38;5;12m (http://rhelblog.redhat.com/2015/07/29/architecting-containers-part-1-user-space-vs-kernel-space/)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mArchitecting Containers Part 2: Why the User Space Matters[0m[38;5;12m (http://rhelblog.redhat.com/2015/09/17/architecting-containers-part-2-why-the-user-space-matters-2/)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSecure Your Containers with this One Weird Trick[0m[38;5;12m (http://rhelblog.redhat.com/2016/10/17/secure-your-containers-with-this-one-weird-trick/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhy you shouldn't use ENV variables for secret data[0m[38;5;12m (https://diogomonica.com/2017/03/27/why-you-shouldnt-use-env-variables-for-secret-data/)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhen to use-Docker alternatives rkt and LXD[0m[38;5;12m (http://searchitoperations.techtarget.com/tip/When-to-use-Docker-alternatives-rkt-and-LXD)[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mThe container is a lie[0m[38;5;12m (https://platform.sh/blog/2020/the-container-is-a-lie/)[39m
|
||
|
||
[38;2;255;187;0m[4mLevels of security problems[0m
|
||
|
||
[38;5;12m1) regular application[39m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12malways untrusted -> know it[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12msuid bit -> mount with nosuid[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mlimit available syscall -> seccomp-bpf, grsec[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mleak[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12manother[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12m(bug[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mnamespaces,[39m[38;5;12m [39m[38;5;12mfilesystem)[39m[38;5;12m [39m[38;5;12m->[39m[38;5;12m [39m[38;5;12muser[39m[38;5;12m [39m[38;5;12mnamespaces[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mdifferent[39m[38;5;12m [39m[38;5;12muid[39m[38;5;12m [39m[38;5;12minside[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12meach[39m[38;5;12m [39m[38;5;12mcontainer:[39m[38;5;12m [39m[38;5;12m1000[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12m14293[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12m15398[39m[38;5;12m [39m[38;5;12moutside;[39m[38;5;12m [39m[38;5;12msecurity[39m[38;5;12m [39m[38;5;12mmodules[39m[38;5;12m [39m[38;5;12mlike[39m
|
||
[38;5;12mselinux[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mapparmor[39m
|
||
|
||
[38;5;12m2) system services like cron, ssh[39m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mrun as root -> isolate via bastion host or vm[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12musing /dev -> "devices" control group [39m
|
||
[38;5;12mThe following device nodes are created in the container by default. [39m
|
||
[38;5;12mThe[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12mimages[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mmounted[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mnodev,[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mmeans[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12meven[39m[38;5;12m [39m[38;5;12mif[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdevice[39m[38;5;12m [39m[38;5;12mnode[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mpre-created[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mimage,[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mused[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mprocesses[39m[38;5;12m [39m[38;5;12mwithin[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mtalk[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||
[38;5;12mkernel.[39m[38;5;12m [39m
|
||
[38;5;12m/dev/console,/dev/null,/dev/zero,/dev/full,/dev/tty[39m[48;2;30;30;40m[38;5;13m[3m,/dev/urandom,/dev/random,/dev/fuse[0m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mroot calls -> capabilities (cap_sys_admin warning!) [39m
|
||
[38;5;12mHere[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcurrent[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcapabilities[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mDocker[39m[38;5;12m [39m[38;5;12muses:[39m[38;5;12m [39m[38;5;12mchown,[39m[38;5;12m [39m[38;5;12mdac_override,[39m[38;5;12m [39m[38;5;12mfowner,[39m[38;5;12m [39m[38;5;12mkill,[39m[38;5;12m [39m[38;5;12msetgid,[39m[38;5;12m [39m[38;5;12msetuid,[39m[38;5;12m [39m[38;5;12msetpcap,[39m[38;5;12m [39m[38;5;12mnet_bind_service,[39m[38;5;12m [39m[38;5;12mnet_raw,[39m[38;5;12m [39m[38;5;12msys_chroot,[39m[38;5;12m [39m[38;5;12mmknod,[39m[38;5;12m [39m[38;5;12msetfcap,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12maudit_write.[39m
|
||
[38;5;12mDocker removes several of these capabilities including the following: [39m
|
||
[38;5;12mCAP_SETPCAP Modify process capabilities [39m
|
||
[38;5;12mCAP_SYS_MODULE Insert/Remove kernel modules [39m
|
||
[38;5;12mCAP_SYS_RAWIO Modify Kernel Memory [39m
|
||
[38;5;12mCAP_SYS_PACCT Configure process accounting [39m
|
||
[38;5;12mCAP_SYS_NICE Modify Priority of processes [39m
|
||
[38;5;12mCAP_SYS_RESOURCE Override Resource Limits [39m
|
||
[38;5;12mCAP_SYS_TIME Modify the system clock [39m
|
||
[38;5;12mCAP_SYS_TTY_CONFIG Configure tty devices [39m
|
||
[38;5;12mCAP_AUDIT_WRITE Write the audit log [39m
|
||
[38;5;12mCAP_AUDIT_CONTROL Configure Audit Subsystem [39m
|
||
[38;5;12mCAP_MAC_OVERRIDE Ignore Kernel MAC Policy [39m
|
||
[38;5;12mCAP_MAC_ADMIN Configure MAC Configuration [39m
|
||
[38;5;12mCAP_SYSLOG Modify Kernel printk behavior [39m
|
||
[38;5;12mCAP_NET_ADMIN Configure the network [39m
|
||
[38;5;12mCAP_SYS_ADMIN Catch all [39m
|
||
[38;5;12muses /proc, /sys -> remount ro, drop cap_sys_admin; security modules like selinux or apparmor; some part of this fs are "namespace-aware" [39m
|
||
[38;5;12mDocker mounts these file systems into the container as "read-only" mount points. [39m
|
||
[38;5;12m. /sys [39m
|
||
[38;5;12m. /proc/sys [39m
|
||
[38;5;12m. /proc/sysrq-trigger [39m
|
||
[38;5;12m. /proc/irq [39m
|
||
[38;5;12m. /proc/bus [39m
|
||
[38;5;12mCopy-on-write file systems [39m
|
||
[38;5;12mDocker[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mcopy-on-write[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12msystems.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mmeans[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msame[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mimage[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mbase[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcontainer.[39m[38;5;12m [39m[38;5;12mWhen[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mwrites[39m[38;5;12m [39m[38;5;12mcontent[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mimage,[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mgets[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m
|
||
[38;5;12mto[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mspecific[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12msystem.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mprevents[39m[38;5;12m [39m[38;5;12mone[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mseeing[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mchanges[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12manother[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12meven[39m[38;5;12m [39m[38;5;12mif[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m[38;5;12mwrote[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msame[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mimage.[39m[38;5;12m [39m[38;5;12mJust[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mimportant,[39m[38;5;12m [39m[38;5;12mone[39m[38;5;12m [39m
|
||
[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mchange[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mimage[39m[38;5;12m [39m[38;5;12mcontent[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12meffect[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mprocesses[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12manother[39m[38;5;12m [39m[38;5;12mcontainer.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12muid 0 -> user namespaces, uid 0 mappet to random uid outside[39m
|
||
|
||
[38;5;12m3) system services like devices, network, filesystems[39m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mroot -> more of services should work on host outside; isolate sensitive functions, run as non-privileged context[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mfull privileges -> isolate on kernel level[39m
|
||
|
||
[38;5;12m4) kernel drivers, network stack, security policies[39m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mabsolute privileges -> run it in separate vm[39m
|
||
|
||
[38;5;12m5) general like immutable infrastructure[39m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mcontainer is ro[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12mwrite to small separate rw nosuid part[39m
|
||
|
||
[38;5;14m[1msrc[0m[38;5;12m (http://www.slideshare.net/jpetazzo/docker-linux-containers-lxc-and-security) [39m
|
||
[38;5;14m[1msrc[0m[38;5;12m (https://opensource.com/business/14/9/security-for-docker)[39m
|
||
|
||
[38;2;255;187;0m[4mTechnologies for security[0m
|
||
|
||
[38;5;12mThings are better. For example, most modern container technologies can make use of Linux's built-in security tools such as: [39m
|
||
[38;5;14m[1mAppArmor[0m[38;5;12m (http://wiki.apparmor.net/index.php/Main_Page), [39m[38;5;14m[1mSELinux[0m[38;5;12m (http://selinuxproject.org/page/Main_Page) and [39m[38;5;14m[1mSeccomp[0m[38;5;12m (http://man7.org/linux/man-pages/man2/seccomp.2.html) policies; [39m
|
||
[38;5;14m[1mGrsecurity[0m[38;5;12m (https://grsecurity.net/); [39m
|
||
[38;5;14m[1mControl groups (cgroups)[0m[38;5;12m (https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html); [39m
|
||
[38;5;14m[1mKernel namespaces[0m[38;5;12m (http://man7.org/linux/man-pages/man7/namespaces.7.html) [39m
|
||
[38;5;14m[1msrc[0m[38;5;12m (http://www.itworld.com/article/2920349/security/for-containers-security-is-problem-1.html)[39m
|
||
|
||
[38;5;12mSure, you're deploying seccomp, but you can't use selinux inside your container, because the policy isn't per-namespace (?? lxc uses apparmore for each container...) [39m
|
||
[38;5;14m[1msVirt[0m[38;5;12m (http://selinuxproject.org/page/SVirt) - selinux for kvm [39m
|
||
[38;5;14m[1msrc[0m[38;5;12m (https://mjg59.dreamwidth.org/33170.html)[39m
|
||
|
||
[38;5;12mMajor kernel subsystems are not namespaced like: [39m
|
||
[38;5;12m- SELinux [39m
|
||
[38;5;12m- Cgroups [39m
|
||
[38;5;12m- file systems under /sys [39m
|
||
[38;5;12m- /proc/sys, /proc/sysrq-trigger, /proc/irq, /proc/bus[39m
|
||
|
||
[38;5;12mDevices are not namespaced: [39m
|
||
[38;5;12m- /dev/mem [39m
|
||
[38;5;12m- /dev/sd[39m[48;2;30;30;40m[38;5;13m[3m file system devices [0m
|
||
[38;5;12m- kernel modules[39m
|
||
|
||
[38;5;12mIf you can communicate or attack one of these as a privileged process, you can own the system. [39m
|
||
[38;5;14m[1msrc[0m[38;5;12m (https://opensource.com/business/14/7/docker-security-selinux)[39m
|
||
|
||
[38;2;255;187;0m[4mAnother Information Sources[0m
|
||
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msysdig-container-ecosystem[0m[38;5;12m (https://github.com/draios/sysdig-container-ecosystem) [39m
|
||
[38;5;12mThe[39m[38;5;12m [39m[38;5;12mecosystem[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mawesome[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mtechnologies[39m[38;5;12m [39m[38;5;12memerging[39m[38;5;12m [39m[38;5;12maround[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmicroservices[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlittle[39m[38;5;12m [39m[38;5;12moverwhelming,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msay[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mleast.[39m[38;5;12m [39m[38;5;12mWe[39m[38;5;12m [39m[38;5;12mthought[39m[38;5;12m [39m[38;5;12mwe[39m[38;5;12m [39m[38;5;12mmight[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mable[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp:[39m[38;5;12m [39m[38;5;12mwelcome[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||
[38;5;12mContainer[39m[38;5;12m [39m[38;5;12mEcosystem[39m[38;5;12m [39m[38;5;12mProject.[39m
|
||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdoger.io[0m[38;5;12m (http://doger.io/) [39m
|
||
[38;5;12mThis[39m[38;5;12m [39m[38;5;12mpage[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mattempt[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mdocument[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mins[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mouts[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mLinux.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mjust[39m[38;5;12m [39m[38;5;12mrestricted[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mprogrammers[39m[38;5;12m [39m[38;5;12mlooking[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mimplement[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mcontainer[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mfeatures[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mtheir[39m
|
||
[38;5;12mown[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mSysadmins[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mUsers[39m[38;5;12m [39m[38;5;12mwho[39m[38;5;12m [39m[38;5;12mwant[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mget[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mhandle[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mcontainers[39m[38;5;12m [39m[38;5;12mwork[39m[38;5;12m [39m[38;5;12m'under[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhood'.[39m[38;5;12m [39m
|